lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1493110893-21857-1-git-send-email-patrice.chotard@st.com>
Date:   Tue, 25 Apr 2017 11:01:33 +0200
From:   <patrice.chotard@...com>
To:     <linux@...linux.org.uk>, <linux-arm-kernel@...ts.infradead.org>,
        <linux-kernel@...r.kernel.org>
CC:     <vikas.manocha@...com>, <patrice.chotard@...com>,
        <patrick.delaunay@...com>, <christophe.kerello@...com>,
        <christophe.priouzeau@...com>
Subject: [PATCH 1/1] ARM: compressed/head.S: fix __nop macro rept number for ARMv7M

From: Patrice Chotard <patrice.chotard@...com>

In zImage, _magic_sig is located at offset 0x24.
But for ARMv7M architecture which enable CPU_THUMBONLY
and !EFI_STUB kernel flag, _magic_sig is located at offset 0x14

00000000  00 46 00 46 00 46 00 46  00 46 00 46 00 46 0f f2  |.F.F.F.F.F.F.F.ò|
00000010  15 0c 60 47 18 28 6f 01  00 00 00 00 28 5c 0e 00  |..`G.(o.....(\..|
00000020  01 02 03 04 0f 46 90 46  00 00 00 00 00 00 00 00  |.....F.F........|

Reproduced with stm32_defconfig with XIP_KERNEL flag disabled.

To restore correct _magic_sig offset at 0x24, we add 8 additional
"mov r0, r0" instruction.

Signed-off-by: Patrice Chotard <patrice.chotard@...com>
---
 arch/arm/boot/compressed/head.S | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/compressed/head.S b/arch/arm/boot/compressed/head.S
index 9150f97..5d9cda3 100644
--- a/arch/arm/boot/compressed/head.S
+++ b/arch/arm/boot/compressed/head.S
@@ -127,7 +127,8 @@
  AR_CLASS(	.arm	)
 start:
 		.type	start,#function
-		.rept	7
+   ARM(		.rept	7)
+ THUMB(		.rept	15)
 		__nop
 		.endr
    ARM(		mov	r0, r0		)
-- 
1.9.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ