From patchwork Thu Apr 17 20:14:12 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: vkamensky X-Patchwork-Id: 28593 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-qc0-f200.google.com (mail-qc0-f200.google.com [209.85.216.200]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id DEF732013D for ; Thu, 17 Apr 2014 20:23:06 +0000 (UTC) Received: by mail-qc0-f200.google.com with SMTP id i17sf2895648qcy.3 for ; Thu, 17 Apr 2014 13:23:06 -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: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=OM2sucYLK34y18h3NVye+oezzZTNMUWnO1kbXu7l7X8=; b=FypD20Hi1W3BE2qsEzk1UbwYWFfRoK4hdmLr/2BvnhylkGhTMtK/tC9ecB696xJzOr qy4fPkus7S+yeo6CA2VaDo8sl3DoZWDvjvBVa6yIPqkr/+Mt9Oz0jusu2JkXoBmiosJe LKOadvXJdAAG2b0zmMZrbENSDz4fC8ujndKtwxiJ5oo7ik87htJ+Y0psfpNjG7880g/4 BvXxlmqoiFwsQLIwRUm4aoaMXzvM6IrNHJJDIGhi4ovNGYCbY/qS2/8r2LbUeUcm28TQ RMeWIqRlkmi3bkTU2pDj0yeB3qFqLQa0JTsTo/sRhp8PORpamrOpWvoVPvuUZ0NCUmuy ULDw== X-Gm-Message-State: ALoCoQnkKWZKOyMjr+NvwZY2fVGOgbiJ5N4+y1AEFsyS3X07iBN+WMPS+liyo8DsZ4ErY6MmOL6x X-Received: by 10.58.41.39 with SMTP id c7mr8630054vel.25.1397766186560; Thu, 17 Apr 2014 13:23:06 -0700 (PDT) X-BeenThere: patchwork-forward@linaro.org Received: by 10.140.98.229 with SMTP id o92ls1228371qge.95.gmail; Thu, 17 Apr 2014 13:23:06 -0700 (PDT) X-Received: by 10.52.229.97 with SMTP id sp1mr7737469vdc.23.1397766186324; Thu, 17 Apr 2014 13:23:06 -0700 (PDT) Received: from mail-ve0-f179.google.com (mail-ve0-f179.google.com [209.85.128.179]) by mx.google.com with ESMTPS id sw4si4628312vdc.138.2014.04.17.13.23.06 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 17 Apr 2014 13:23:06 -0700 (PDT) Received-SPF: neutral (google.com: 209.85.128.179 is neither permitted nor denied by best guess record for domain of patch+caf_=patchwork-forward=linaro.org@linaro.org) client-ip=209.85.128.179; Received: by mail-ve0-f179.google.com with SMTP id db12so1218094veb.10 for ; Thu, 17 Apr 2014 13:23:06 -0700 (PDT) X-Received: by 10.221.62.131 with SMTP id xa3mr10228913vcb.13.1397766185986; Thu, 17 Apr 2014 13:23:05 -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.220.221.72 with SMTP id ib8csp63182vcb; Thu, 17 Apr 2014 13:23:05 -0700 (PDT) X-Received: by 10.140.24.196 with SMTP id 62mr1849055qgr.45.1397766185662; Thu, 17 Apr 2014 13:23:05 -0700 (PDT) Received: from bombadil.infradead.org (bombadil.infradead.org. [2001:1868:205::9]) by mx.google.com with ESMTPS id s49si11147800qge.116.2014.04.17.13.23.05 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Apr 2014 13:23:05 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-arm-kernel-bounces+patch=linaro.org@lists.infradead.org designates 2001:1868:205::9 as permitted sender) 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 1WasoA-0006gh-Qv; Thu, 17 Apr 2014 20:21:18 +0000 Received: from mail-pa0-f50.google.com ([209.85.220.50]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1Waso8-0006bE-Rc for linux-arm-kernel@lists.infradead.org; Thu, 17 Apr 2014 20:21:17 +0000 Received: by mail-pa0-f50.google.com with SMTP id kq14so740357pab.23 for ; Thu, 17 Apr 2014 13:20:53 -0700 (PDT) X-Received: by 10.68.178.162 with SMTP id cz2mr17626076pbc.51.1397765680473; Thu, 17 Apr 2014 13:14:40 -0700 (PDT) Received: from kamensky-w530.cisco.com.net (c-24-6-79-41.hsd1.ca.comcast.net. [24.6.79.41]) by mx.google.com with ESMTPSA id pe3sm55380072pbc.23.2014.04.17.13.14.39 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Apr 2014 13:14:39 -0700 (PDT) From: Victor Kamensky To: rmk@arm.linux.org.uk, nicolas.pitre@linaro.org, linux-arm-kernel@lists.infradead.org Subject: [PATCH] ARM: fix big endian __pv_phys_pfn_offset size related issue Date: Thu, 17 Apr 2014 13:14:12 -0700 Message-Id: <1397765652-21623-1-git-send-email-victor.kamensky@linaro.org> X-Mailer: git-send-email 1.8.1.4 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20140417_132116_938350_BC68D932 X-CRM114-Status: UNSURE ( 9.03 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -0.7 (/) X-Spam-Report: SpamAssassin version 3.3.2 on bombadil.infradead.org summary: Content analysis details: (-0.7 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [209.85.220.50 listed in list.dnswl.org] Cc: taras.kondratiuk@linaro.org, linaro-kernel@lists.linaro.org, Victor Kamensky X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.15 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: victor.kamensky@linaro.org X-Original-Authentication-Results: mx.google.com; spf=neutral (google.com: 209.85.128.179 is neither permitted nor denied by best guess record for domain of patch+caf_=patchwork-forward=linaro.org@linaro.org) 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 Fix e26a9e00afc482b971afcaef1db8c9034d4d6d7c 'ARM: Better virt_to_page() handling' replaced __pv_phys_offset with __pv_phys_pfn_offset. Also note that size of __pv_phys_offset was quad but size of __pv_phys_pfn_offset is word. Instruction that used to update __pv_phys_offset which address is in r6 had to update low word of __pv_phys_offset so it used #LOW_OFFSET macro for store offset. Now when size of __pv_phys_pfn_offset is word, no difference between little endian and big endian should exist - i.e no offset should be used when __pv_phys_pfn_offset is stored. Note that for little endian image proposed change is noop, since in little endian case #LOW_OFFSET is defined 0 anyway. Reported-by: Taras Kondratiuk Signed-off-by: Victor Kamensky --- arch/arm/kernel/head.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm/kernel/head.S b/arch/arm/kernel/head.S index f8c0883..591d6e4 100644 --- a/arch/arm/kernel/head.S +++ b/arch/arm/kernel/head.S @@ -587,7 +587,7 @@ __fixup_pv_table: add r6, r6, r3 @ adjust __pv_phys_pfn_offset address add r7, r7, r3 @ adjust __pv_offset address mov r0, r8, lsr #12 @ convert to PFN - str r0, [r6, #LOW_OFFSET] @ save computed PHYS_OFFSET to __pv_phys_pfn_offset + str r0, [r6] @ save computed PHYS_OFFSET to __pv_phys_pfn_offset strcc ip, [r7, #HIGH_OFFSET] @ save to __pv_offset high bits mov r6, r3, lsr #24 @ constant for add/sub instructions teq r3, r6, lsl #24 @ must be 16MiB aligned