From: Greg Kroah-Hartman Date: Sun, 15 Jan 2023 14:17:41 +0000 (+0100) Subject: 4.14-stable patches X-Git-Tag: v4.14.303~52 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=443fc8fcbd7bb8d39d73de8abfa2f1fddcdcbd5f;p=thirdparty%2Fkernel%2Fstable-queue.git 4.14-stable patches added patches: x86-boot-avoid-using-intel-mnemonics-in-at-t-syntax-asm.patch --- diff --git a/queue-4.14/series b/queue-4.14/series index 88785cd89c0..a99e51f956b 100644 --- a/queue-4.14/series +++ b/queue-4.14/series @@ -330,3 +330,4 @@ alsa-pcm-move-rwsem-lock-inside-snd_ctl_elem_read-to-prevent-uaf.patch platform-x86-sony-laptop-don-t-turn-off-0x153-keyboard-backlight-during-probe.patch ipv6-raw-deduct-extension-header-length-in-rawv6_push_pending_frames.patch netfilter-ipset-fix-overflow-before-widen-in-the-bitmap_ip_create-function.patch +x86-boot-avoid-using-intel-mnemonics-in-at-t-syntax-asm.patch diff --git a/queue-4.14/x86-boot-avoid-using-intel-mnemonics-in-at-t-syntax-asm.patch b/queue-4.14/x86-boot-avoid-using-intel-mnemonics-in-at-t-syntax-asm.patch new file mode 100644 index 00000000000..8a2d08fe265 --- /dev/null +++ b/queue-4.14/x86-boot-avoid-using-intel-mnemonics-in-at-t-syntax-asm.patch @@ -0,0 +1,70 @@ +From 7c6dd961d0c8e7e8f9fdc65071fb09ece702e18d Mon Sep 17 00:00:00 2001 +From: Peter Zijlstra +Date: Tue, 10 Jan 2023 12:15:40 +0100 +Subject: x86/boot: Avoid using Intel mnemonics in AT&T syntax asm + +From: Peter Zijlstra + +commit 7c6dd961d0c8e7e8f9fdc65071fb09ece702e18d upstream. + +With 'GNU assembler (GNU Binutils for Debian) 2.39.90.20221231' the +build now reports: + + arch/x86/realmode/rm/../../boot/bioscall.S: Assembler messages: + arch/x86/realmode/rm/../../boot/bioscall.S:35: Warning: found `movsd'; assuming `movsl' was meant + arch/x86/realmode/rm/../../boot/bioscall.S:70: Warning: found `movsd'; assuming `movsl' was meant + + arch/x86/boot/bioscall.S: Assembler messages: + arch/x86/boot/bioscall.S:35: Warning: found `movsd'; assuming `movsl' was meant + arch/x86/boot/bioscall.S:70: Warning: found `movsd'; assuming `movsl' was meant + +Which is due to: + + PR gas/29525 + + Note that with the dropped CMPSD and MOVSD Intel Syntax string insn + templates taking operands, mixed IsString/non-IsString template groups + (with memory operands) cannot occur anymore. With that + maybe_adjust_templates() becomes unnecessary (and is hence being + removed). + +More details: https://sourceware.org/bugzilla/show_bug.cgi?id=29525 + +Borislav Petkov further explains: + + " the particular problem here is is that the 'd' suffix is + "conflicting" in the sense that you can have SSE mnemonics like movsD %xmm... + and the same thing also for string ops (which is the case here) so apparently + the agreement in binutils land is to use the always accepted suffixes 'l' or 'q' + and phase out 'd' slowly... " + +Fixes: 7a734e7dd93b ("x86, setup: "glove box" BIOS calls -- infrastructure") +Signed-off-by: Peter Zijlstra (Intel) +Signed-off-by: Ingo Molnar +Acked-by: Borislav Petkov (AMD) +Link: https://lore.kernel.org/r/Y71I3Ex2pvIxMpsP@hirez.programming.kicks-ass.net +Signed-off-by: Greg Kroah-Hartman +--- + arch/x86/boot/bioscall.S | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/arch/x86/boot/bioscall.S ++++ b/arch/x86/boot/bioscall.S +@@ -35,7 +35,7 @@ intcall: + movw %dx, %si + movw %sp, %di + movw $11, %cx +- rep; movsd ++ rep; movsl + + /* Pop full state from the stack */ + popal +@@ -70,7 +70,7 @@ intcall: + jz 4f + movw %sp, %si + movw $11, %cx +- rep; movsd ++ rep; movsl + 4: addw $44, %sp + + /* Restore state and return */