From mboxrd@z Thu Jan 1 00:00:00 1970 From: "tip-bot2 for Kees Cook" Subject: [tip: x86/build] powerpc: Remove PT_NOTE workaround Date: Tue, 05 Nov 2019 09:27:36 -0000 Message-ID: <157294605610.29376.1760819077288569366.tip-bot2@tip-bot2> References: <20191029211351.13243-3-keescook@chromium.org> Reply-To: linux-kernel@vger.kernel.org Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20191029211351.13243-3-keescook@chromium.org> Sender: linux-kernel-owner@vger.kernel.org List-ID: Content-Type: text/plain; charset="us-ascii" To: linux-tip-commits@vger.kernel.org Cc: Kees Cook , Borislav Petkov , Michael Ellerman , Andy Lutomirski , Arnd Bergmann , Dave Hansen , linux-alpha@vger.kernel.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-c6x-dev@linux-c6x.org, linux-ia64@vger.kernel.org, linux-s390@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, Michal Simek , Rick Edgecombe , Segher Boessenkool , Will Deacon , x86@kernel.org, Yoshinori Sato , Ingo Molnar , Borislav Petkov , linux-kernel@vger.kernel.org The following commit has been merged into the x86/build branch of tip: Commit-ID: 6fc4000656a10fb679ab6566dcd516ee672f1706 Gitweb: https://git.kernel.org/tip/6fc4000656a10fb679ab6566dcd516ee672f1706 Author: Kees Cook AuthorDate: Tue, 29 Oct 2019 14:13:24 -07:00 Committer: Borislav Petkov CommitterDate: Mon, 04 Nov 2019 15:33:39 +01:00 powerpc: Remove PT_NOTE workaround In preparation for moving NOTES into RO_DATA, remove the PT_NOTE workaround since the kernel requires at least gcc 4.6 now. Signed-off-by: Kees Cook Signed-off-by: Borislav Petkov Acked-by: Michael Ellerman Cc: Andy Lutomirski Cc: Arnd Bergmann Cc: Dave Hansen Cc: linux-alpha@vger.kernel.org Cc: linux-arch@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org Cc: linux-c6x-dev@linux-c6x.org Cc: linux-ia64@vger.kernel.org Cc: linux-s390@vger.kernel.org Cc: linuxppc-dev@lists.ozlabs.org Cc: Michael Ellerman Cc: Michal Simek Cc: Rick Edgecombe Cc: Segher Boessenkool Cc: Will Deacon Cc: x86@kernel.org Cc: Yoshinori Sato Link: https://lkml.kernel.org/r/20191029211351.13243-3-keescook@chromium.org --- arch/powerpc/kernel/vmlinux.lds.S | 24 ++---------------------- 1 file changed, 2 insertions(+), 22 deletions(-) diff --git a/arch/powerpc/kernel/vmlinux.lds.S b/arch/powerpc/kernel/vmlinux.lds.S index 81e6726..a3c8492 100644 --- a/arch/powerpc/kernel/vmlinux.lds.S +++ b/arch/powerpc/kernel/vmlinux.lds.S @@ -20,20 +20,6 @@ ENTRY(_stext) PHDRS { kernel PT_LOAD FLAGS(7); /* RWX */ note PT_NOTE FLAGS(0); - dummy PT_NOTE FLAGS(0); - - /* binutils < 2.18 has a bug that makes it misbehave when taking an - ELF file with all segments at load address 0 as input. This - happens when running "strip" on vmlinux, because of the AT() magic - in this linker script. People using GCC >= 4.2 won't run into - this problem, because the "build-id" support will put some data - into the "notes" segment (at a non-zero load address). - - To work around this, we force some data into both the "dummy" - segment and the kernel segment, so the dummy segment will get a - non-zero load address. It's not enough to always create the - "notes" segment, since if nothing gets assigned to it, its load - address will be zero. */ } #ifdef CONFIG_PPC64 @@ -178,14 +164,8 @@ SECTIONS EXCEPTION_TABLE(0) NOTES :kernel :note - - /* The dummy segment contents for the bug workaround mentioned above - near PHDRS. */ - .dummy : AT(ADDR(.dummy) - LOAD_OFFSET) { - LONG(0) - LONG(0) - LONG(0) - } :kernel :dummy + /* Restore program header away from PT_NOTE. */ + .dummy : { *(.dummy) } :kernel /* * Init sections discarded at runtime