From: "tip-bot2 for Kees Cook" <tip-bot2@linutronix.de>
To: linux-tip-commits@vger.kernel.org
Cc: linux-ia64@vger.kernel.org,
Dave Hansen <dave.hansen@linux.intel.com>,
Heiko Carstens <heiko.carstens@de.ibm.com>,
Will Deacon <will@kernel.org>, Ingo Molnar <mingo@kernel.org>,
linux-arch@vger.kernel.org, linux-s390@vger.kernel.org,
Yoshinori Sato <ysato@users.sourceforge.jp>,
x86-ml <x86@kernel.org>, Borislav Petkov <bp@suse.de>,
Kees Cook <keescook@chromium.org>, Arnd Bergmann <arnd@arndb.de>,
Borislav Petkov <bp@alien8.de>, Andy Lutomirski <luto@kernel.org>,
linux-arm-kernel@lists.infradead.org,
linux-c6x-dev@linux-c6x.org, Michal Simek <monstr@monstr.eu>,
linux-kernel@vger.kernel.org, linux-alpha@vger.kernel.org,
Rick Edgecombe <rick.p.edgecombe@intel.com>,
linuxppc-dev@lists.ozlabs.org
Subject: [tip: x86/build] vmlinux.lds.h: Move Program Header restoration into NOTES macro
Date: Tue, 05 Nov 2019 09:27:33 -0000 [thread overview]
Message-ID: <157294605350.29376.17430557461465855450.tip-bot2@tip-bot2> (raw)
In-Reply-To: <20191029211351.13243-10-keescook@chromium.org>
The following commit has been merged into the x86/build branch of tip:
Commit-ID: fbe6a8e618a2d70621cff277e24f6eb338d3d149
Gitweb: https://git.kernel.org/tip/fbe6a8e618a2d70621cff277e24f6eb338d3d149
Author: Kees Cook <keescook@chromium.org>
AuthorDate: Tue, 29 Oct 2019 14:13:31 -07:00
Committer: Borislav Petkov <bp@suse.de>
CommitterDate: Mon, 04 Nov 2019 15:34:39 +01:00
vmlinux.lds.h: Move Program Header restoration into NOTES macro
In preparation for moving NOTES into RO_DATA, make the Program Header
assignment restoration be part of the NOTES macro itself.
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Borislav Petkov <bp@suse.de>
Acked-by: Heiko Carstens <heiko.carstens@de.ibm.com> # s390
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
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 <mpe@ellerman.id.au>
Cc: Michal Simek <monstr@monstr.eu>
Cc: Rick Edgecombe <rick.p.edgecombe@intel.com>
Cc: Segher Boessenkool <segher@kernel.crashing.org>
Cc: Will Deacon <will@kernel.org>
Cc: x86-ml <x86@kernel.org>
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Link: https://lkml.kernel.org/r/20191029211351.13243-10-keescook@chromium.org
---
arch/alpha/kernel/vmlinux.lds.S | 5 +----
arch/ia64/kernel/vmlinux.lds.S | 4 +---
arch/mips/kernel/vmlinux.lds.S | 3 +--
arch/powerpc/kernel/vmlinux.lds.S | 4 +---
arch/s390/kernel/vmlinux.lds.S | 4 +---
arch/x86/kernel/vmlinux.lds.S | 3 +--
include/asm-generic/vmlinux.lds.h | 13 +++++++++++--
7 files changed, 17 insertions(+), 19 deletions(-)
diff --git a/arch/alpha/kernel/vmlinux.lds.S b/arch/alpha/kernel/vmlinux.lds.S
index 363a60b..cdfdc91 100644
--- a/arch/alpha/kernel/vmlinux.lds.S
+++ b/arch/alpha/kernel/vmlinux.lds.S
@@ -34,10 +34,7 @@ SECTIONS
swapper_pg_dir = SWAPPER_PGD;
_etext = .; /* End of text section */
- NOTES :text :note
- .dummy : {
- *(.dummy)
- } :text
+ NOTES
RODATA
EXCEPTION_TABLE(16)
diff --git a/arch/ia64/kernel/vmlinux.lds.S b/arch/ia64/kernel/vmlinux.lds.S
index 7cf4958..bfc937e 100644
--- a/arch/ia64/kernel/vmlinux.lds.S
+++ b/arch/ia64/kernel/vmlinux.lds.S
@@ -70,9 +70,7 @@ SECTIONS {
/*
* Read-only data
*/
- NOTES :text :note /* put .notes in text and mark in PT_NOTE */
- code_continues : {
- } :text /* switch back to regular program... */
+ NOTES
EXCEPTION_TABLE(16)
diff --git a/arch/mips/kernel/vmlinux.lds.S b/arch/mips/kernel/vmlinux.lds.S
index 1c95612..6a22f53 100644
--- a/arch/mips/kernel/vmlinux.lds.S
+++ b/arch/mips/kernel/vmlinux.lds.S
@@ -81,8 +81,7 @@ SECTIONS
__stop___dbe_table = .;
}
- NOTES NOTES_HEADERS
- .dummy : { *(.dummy) } :text
+ NOTES
_sdata = .; /* Start of data section */
RODATA
diff --git a/arch/powerpc/kernel/vmlinux.lds.S b/arch/powerpc/kernel/vmlinux.lds.S
index 7e26e20..4f19d81 100644
--- a/arch/powerpc/kernel/vmlinux.lds.S
+++ b/arch/powerpc/kernel/vmlinux.lds.S
@@ -164,9 +164,7 @@ SECTIONS
#endif
EXCEPTION_TABLE(0)
- NOTES :text :note
- /* Restore program header away from PT_NOTE. */
- .dummy : { *(.dummy) } :text
+ NOTES
/*
* Init sections discarded at runtime
diff --git a/arch/s390/kernel/vmlinux.lds.S b/arch/s390/kernel/vmlinux.lds.S
index 646d939..f88eede 100644
--- a/arch/s390/kernel/vmlinux.lds.S
+++ b/arch/s390/kernel/vmlinux.lds.S
@@ -52,9 +52,7 @@ SECTIONS
_etext = .; /* End of text section */
} :text = 0x0700
- NOTES :text :note
-
- .dummy : { *(.dummy) } :text
+ NOTES
RO_DATA_SECTION(PAGE_SIZE)
diff --git a/arch/x86/kernel/vmlinux.lds.S b/arch/x86/kernel/vmlinux.lds.S
index 2e18bf5..8be25b0 100644
--- a/arch/x86/kernel/vmlinux.lds.S
+++ b/arch/x86/kernel/vmlinux.lds.S
@@ -148,8 +148,7 @@ SECTIONS
_etext = .;
} :text = 0x9090
- NOTES :text :note
- .dummy : { *(.dummy) } :text
+ NOTES
EXCEPTION_TABLE(16)
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
index f5dd45c..97d4299 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
@@ -56,10 +56,18 @@
/*
* Only some architectures want to have the .notes segment visible in
- * a separate PT_NOTE ELF Program Header.
+ * a separate PT_NOTE ELF Program Header. When this happens, it needs
+ * to be visible in both the kernel text's PT_LOAD and the PT_NOTE
+ * Program Headers. In this case, though, the PT_LOAD needs to be made
+ * the default again so that all the following sections don't also end
+ * up in the PT_NOTE Program Header.
*/
#ifdef EMITS_PT_NOTE
#define NOTES_HEADERS :text :note
+#define NOTES_HEADERS_RESTORE __restore_ph : { *(.__restore_ph) } :text
+#else
+#define NOTES_HEADERS
+#define NOTES_HEADERS_RESTORE
#endif
/* Align . to a 8 byte boundary equals to maximum function alignment. */
@@ -798,7 +806,8 @@
__start_notes = .; \
KEEP(*(.note.*)) \
__stop_notes = .; \
- }
+ } NOTES_HEADERS \
+ NOTES_HEADERS_RESTORE
#define INIT_SETUP(initsetup_align) \
. = ALIGN(initsetup_align); \
next prev parent reply other threads:[~2019-11-05 10:04 UTC|newest]
Thread overview: 59+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-29 21:13 [PATCH v3 00/29] vmlinux.lds.h: Refactor EXCEPTION_TABLE and NOTES Kees Cook
2019-10-29 21:13 ` [PATCH v3 01/29] powerpc: Rename "notes" PT_NOTE to "note" Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 02/29] powerpc: Remove PT_NOTE workaround Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 03/29] powerpc: Rename PT_LOAD identifier "kernel" to "text" Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 04/29] alpha: " Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 05/29] ia64: Rename PT_LOAD identifier "code" " Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 06/29] s390: Move RO_DATA into "text" PT_LOAD Program Header Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 07/29] x86: Restore "text" Program Header with dummy section Kees Cook
2019-11-05 9:27 ` [tip: x86/build] x86/vmlinux: " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 08/29] vmlinux.lds.h: Provide EMIT_PT_NOTE to indicate export of .notes Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 09/29] vmlinux.lds.h: Move Program Header restoration into NOTES macro Kees Cook
2019-11-05 9:27 ` tip-bot2 for Kees Cook [this message]
2019-10-29 21:13 ` [PATCH v3 10/29] vmlinux.lds.h: Move NOTES into RO_DATA Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 11/29] vmlinux.lds.h: Replace RODATA with RO_DATA Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 12/29] vmlinux.lds.h: Replace RO_DATA_SECTION " Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 13/29] vmlinux.lds.h: Replace RW_DATA_SECTION with RW_DATA Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 14/29] vmlinux.lds.h: Allow EXCEPTION_TABLE to live in RO_DATA Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 15/29] x86: Actually use _etext for end of text segment Kees Cook
2019-11-05 9:27 ` [tip: x86/build] x86/vmlinux: Actually use _etext for the end of the " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 16/29] x86: Move EXCEPTION_TABLE to RO_DATA segment Kees Cook
2019-11-05 9:27 ` [tip: x86/build] x86/vmlinux: " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 17/29] alpha: " Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 18/29] arm64: " Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 19/29] c6x: " Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 20/29] h8300: " Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 21/29] ia64: " Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 22/29] microblaze: " Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 23/29] parisc: " Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 24/29] powerpc: " Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 25/29] xtensa: " Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 26/29] x86/mm: Remove redundant &s on addresses Kees Cook
2019-11-05 9:27 ` [tip: x86/build] x86/mm: Remove redundant address-of operators " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 27/29] x86/mm: Report which part of kernel image is freed Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 28/29] x86/mm: Report actual image regions in /proc/iomem Kees Cook
2019-11-05 9:27 ` [tip: x86/build] " tip-bot2 for Kees Cook
2019-10-29 21:13 ` [PATCH v3 29/29] x86: Use INT3 instead of NOP for linker fill bytes Kees Cook
2019-11-05 9:27 ` [tip: x86/build] x86/vmlinux: " tip-bot2 for Kees Cook
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=157294605350.29376.17430557461465855450.tip-bot2@tip-bot2 \
--to=tip-bot2@linutronix.de \
--cc=arnd@arndb.de \
--cc=bp@alien8.de \
--cc=bp@suse.de \
--cc=dave.hansen@linux.intel.com \
--cc=heiko.carstens@de.ibm.com \
--cc=keescook@chromium.org \
--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-kernel@vger.kernel.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=luto@kernel.org \
--cc=mingo@kernel.org \
--cc=monstr@monstr.eu \
--cc=rick.p.edgecombe@intel.com \
--cc=will@kernel.org \
--cc=x86@kernel.org \
--cc=ysato@users.sourceforge.jp \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).