From: Greg Kroah-Hartman Date: Thu, 2 Nov 2023 17:56:14 +0000 (+0100) Subject: 4.14-stable patches X-Git-Tag: v4.14.329~55 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=81fd670b55d26d7d602cf274688250f46d92b440;p=thirdparty%2Fkernel%2Fstable-queue.git 4.14-stable patches added patches: x86-fix-.brk-attribute-in-linker-script.patch --- diff --git a/queue-4.14/series b/queue-4.14/series index c9ea687d3db..8392fb7072b 100644 --- a/queue-4.14/series +++ b/queue-4.14/series @@ -25,3 +25,4 @@ rpmsg-fix-kfree-of-static-memory-on-setting-driver_override.patch rpmsg-fix-calling-device_lock-on-non-initialized-device.patch rpmsg-glink-release-driver_override.patch rpmsg-fix-possible-refcount-leak-in-rpmsg_register_device_override.patch +x86-fix-.brk-attribute-in-linker-script.patch diff --git a/queue-4.14/x86-fix-.brk-attribute-in-linker-script.patch b/queue-4.14/x86-fix-.brk-attribute-in-linker-script.patch new file mode 100644 index 00000000000..25a076dbeef --- /dev/null +++ b/queue-4.14/x86-fix-.brk-attribute-in-linker-script.patch @@ -0,0 +1,45 @@ +From 7e09ac27f43b382f5fe9bb7c7f4c465ece1f8a23 Mon Sep 17 00:00:00 2001 +From: Juergen Gross +Date: Thu, 30 Jun 2022 09:14:41 +0200 +Subject: x86: Fix .brk attribute in linker script + +From: Juergen Gross + +commit 7e09ac27f43b382f5fe9bb7c7f4c465ece1f8a23 upstream. + +Commit in Fixes added the "NOLOAD" attribute to the .brk section as a +"failsafe" measure. + +Unfortunately, this leads to the linker no longer covering the .brk +section in a program header, resulting in the kernel loader not knowing +that the memory for the .brk section must be reserved. + +This has led to crashes when loading the kernel as PV dom0 under Xen, +but other scenarios could be hit by the same problem (e.g. in case an +uncompressed kernel is used and the initrd is placed directly behind +it). + +So drop the "NOLOAD" attribute. This has been verified to correctly +cover the .brk section by a program header of the resulting ELF file. + +Fixes: e32683c6f7d2 ("x86/mm: Fix RESERVE_BRK() for older binutils") +Signed-off-by: Juergen Gross +Signed-off-by: Borislav Petkov +Reviewed-by: Josh Poimboeuf +Link: https://lore.kernel.org/r/20220630071441.28576-4-jgross@suse.com +Signed-off-by: Greg Kroah-Hartman +--- + arch/x86/kernel/vmlinux.lds.S | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/arch/x86/kernel/vmlinux.lds.S ++++ b/arch/x86/kernel/vmlinux.lds.S +@@ -359,7 +359,7 @@ SECTIONS + } + + . = ALIGN(PAGE_SIZE); +- .brk (NOLOAD) : AT(ADDR(.brk) - LOAD_OFFSET) { ++ .brk : AT(ADDR(.brk) - LOAD_OFFSET) { + __brk_base = .; + . += 64 * 1024; /* 64k alignment slop space */ + *(.bss..brk) /* areas brk users have reserved */