From patchwork Tue Jun 24 15:51:34 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mark Rutland X-Patchwork-Id: 32435 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-oa0-f71.google.com (mail-oa0-f71.google.com [209.85.219.71]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id 628D9201EF for ; Tue, 24 Jun 2014 15:54:36 +0000 (UTC) Received: by mail-oa0-f71.google.com with SMTP id n16sf2550551oag.10 for ; Tue, 24 Jun 2014 08:54:36 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:delivered-to:from:to:subject:date:message-id :in-reply-to:references:cc:precedence:list-id:list-unsubscribe :list-archive:list-post:list-help:list-subscribe:mime-version:sender :errors-to:x-original-sender:x-original-authentication-results :mailing-list:content-type:content-transfer-encoding; bh=fHedFhq1zVDq7TFdqvlQCGBNsUmRZ0F5H5UyDEtjVxo=; b=Ne6VV8nn4uj6LbfXIrnYHS8oM8g5XjesAnQQlTvMrSkDd6h4FjZKG+AFO3GLSQxYOi 0fQWRCP4m4uzMSIDzvnd34ihIYdjIlcfQUG99VgcDUGTpvb9tDaXeu7GVxcjblmMjpmi Gtsxv02rC2Ej3P1/eNsbmLflgwr7Q5HWrEVfXGyumN5Yju82jCFNSlZ2LC2yIK3h8j4T 4NlJIyaeuevARgZ3PEJziL0vDBVvyuGOG6m8TLt1PtJBnKvO5g8mHHN5cprvkAy1gsfU eQKCDyzBnBdmhuJehh0qIZHSnDM0tQAQGf1KLmVCAKaSy0Jh7uadeFjr2VIinxXYneJq WCVA== X-Gm-Message-State: ALoCoQlAQpbRk1XA5tl1YCytIdSzq8Jgssv2FiZAUO9zO9gSMMm0D3yuvpNfM1yEHUkKHCLpztZD X-Received: by 10.182.250.229 with SMTP id zf5mr929226obc.4.1403625275997; Tue, 24 Jun 2014 08:54:35 -0700 (PDT) X-BeenThere: patchwork-forward@linaro.org Received: by 10.140.82.201 with SMTP id h67ls2431179qgd.2.gmail; Tue, 24 Jun 2014 08:54:35 -0700 (PDT) X-Received: by 10.52.191.97 with SMTP id gx1mr1205128vdc.55.1403625275848; Tue, 24 Jun 2014 08:54:35 -0700 (PDT) Received: from mail-ve0-f176.google.com (mail-ve0-f176.google.com [209.85.128.176]) by mx.google.com with ESMTPS id cy11si449295vec.49.2014.06.24.08.54.35 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 24 Jun 2014 08:54:35 -0700 (PDT) Received-SPF: pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.128.176 as permitted sender) client-ip=209.85.128.176; Received: by mail-ve0-f176.google.com with SMTP id db12so550476veb.21 for ; Tue, 24 Jun 2014 08:54:35 -0700 (PDT) X-Received: by 10.220.53.72 with SMTP id l8mr1542126vcg.16.1403625275761; Tue, 24 Jun 2014 08:54:35 -0700 (PDT) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patch@linaro.org Received: by 10.221.37.5 with SMTP id tc5csp221741vcb; Tue, 24 Jun 2014 08:54:35 -0700 (PDT) X-Received: by 10.140.41.202 with SMTP id z68mr2781296qgz.37.1403625275257; Tue, 24 Jun 2014 08:54:35 -0700 (PDT) Received: from bombadil.infradead.org (bombadil.infradead.org. [2001:1868:205::9]) by mx.google.com with ESMTPS id r64si901278qga.37.2014.06.24.08.54.35 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 24 Jun 2014 08:54:35 -0700 (PDT) Received-SPF: none (google.com: linux-arm-kernel-bounces+patch=linaro.org@lists.infradead.org does not designate permitted sender hosts) client-ip=2001:1868:205::9; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1WzT1D-0007iQ-SX; Tue, 24 Jun 2014 15:52:23 +0000 Received: from cam-admin0.cambridge.arm.com ([217.140.96.50]) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1WzT15-0007cW-I6 for linux-arm-kernel@lists.infradead.org; Tue, 24 Jun 2014 15:52:19 +0000 Received: from leverpostej.cambridge.arm.com (leverpostej.cambridge.arm.com [10.1.205.151]) by cam-admin0.cambridge.arm.com (8.12.6/8.12.6) with ESMTP id s5OFpgwp020511; Tue, 24 Jun 2014 16:51:55 +0100 (BST) From: Mark Rutland To: linux-arm-kernel@lists.infradead.org Subject: [PATCHv4 1/4] arm64: head.S: remove unnecessary function alignment Date: Tue, 24 Jun 2014 16:51:34 +0100 Message-Id: <1403625097-18235-2-git-send-email-mark.rutland@arm.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1403625097-18235-1-git-send-email-mark.rutland@arm.com> References: <1403625097-18235-1-git-send-email-mark.rutland@arm.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20140624_085216_037297_7127ED1E X-CRM114-Status: UNSURE ( 9.60 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -5.0 (-----) X-Spam-Report: SpamAssassin version 3.4.0 on bombadil.infradead.org summary: Content analysis details: (-5.0 points) pts rule name description ---- ---------------------- -------------------------------------------------- -5.0 RCVD_IN_DNSWL_HI RBL: Sender listed at http://www.dnswl.org/, high trust [217.140.96.50 listed in list.dnswl.org] -0.0 T_RP_MATCHES_RCVD Envelope sender domain matches handover relay domain -0.0 SPF_PASS SPF: sender matches SPF record Cc: Mark Rutland , rob.herring@linaro.org, lauraa@codeaurora.org, peter.maydell@linaro.org, geoff@infradead.org, Catalin.Marinas@arm.com, Will.Deacon@arm.com, leif.lindholm@linaro.org, Marc.Zyngier@arm.com, kevin.hilman@linaro.org, ijc@hellion.org.uk, trini@ti.com, Dave.Martin@arm.com X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: , List-Help: , List-Subscribe: , MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patch=linaro.org@lists.infradead.org X-Removed-Original-Auth: Dkim didn't pass. X-Original-Sender: mark.rutland@arm.com X-Original-Authentication-Results: mx.google.com; spf=pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.128.176 as permitted sender) smtp.mail=patch+caf_=patchwork-forward=linaro.org@linaro.org Mailing-list: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org X-Google-Group-Id: 836684582541 Currently __turn_mmu_on is aligned to 64 bytes to ensure that it doesn't span any page boundary, which simplifies the idmap and spares us requiring an additional page table to map half of the function. In keeping with other important requirements in architecture code, this fact is undocumented. Additionally, as the function consists of three instructions totalling 12 bytes with no literal pool data, a smaller alignment of 16 bytes would be sufficient. This patch reduces the alignment to 16 bytes and documents the underlying reason for the alignment. This reduces the required alignment of the entire .head.text section from 64 bytes to 16 bytes, though it may still be aligned to a larger value depending on TEXT_OFFSET. Signed-off-by: Mark Rutland Tested-by: Laura Abbott Acked-by: Will Deacon --- arch/arm64/kernel/head.S | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/arch/arm64/kernel/head.S b/arch/arm64/kernel/head.S index a96d3a6..7ec7817 100644 --- a/arch/arm64/kernel/head.S +++ b/arch/arm64/kernel/head.S @@ -456,8 +456,13 @@ ENDPROC(__enable_mmu) * x27 = *virtual* address to jump to upon completion * * other registers depend on the function called upon completion + * + * We align the entire function to the smallest power of two larger than it to + * ensure it fits within a single block map entry. Otherwise were PHYS_OFFSET + * close to the end of a 512MB or 1GB block we might require an additional + * table to map the entire function. */ - .align 6 + .align 4 __turn_mmu_on: msr sctlr_el1, x0 isb