[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1245156929-30395-6-git-send-email-ptesarik@suse.cz>
Date: Tue, 16 Jun 2009 14:55:25 +0200
From: Petr Tesarik <ptesarik@...e.cz>
To: LKML <linux-kernel@...r.kernel.org>
Cc: Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>,
"H. Peter Anvin" <hpa@...or.com>, Andi Kleen <andi@...stfloor.org>,
Roland McGrath <roland@...hat.com>,
Petr Tesarik <ptesarik@...e.cz>
Subject: [PATCH v3 5/9] x86: mark some standard sections as broken in a vDSO
Some standard sections can't work in a vDSO. Although most of them
are not very likely to ever appear there, it doesn't hurt to list
them as a precaution.
Signed-off-by: Petr Tesarik <ptesarik@...e.cz>
---
arch/x86/vdso/vdso-layout.lds.S | 25 +++++++++++++++++++++++++
1 files changed, 25 insertions(+), 0 deletions(-)
diff --git a/arch/x86/vdso/vdso-layout.lds.S b/arch/x86/vdso/vdso-layout.lds.S
index 3d34d66..74fc5ae 100644
--- a/arch/x86/vdso/vdso-layout.lds.S
+++ b/arch/x86/vdso/vdso-layout.lds.S
@@ -76,6 +76,31 @@ SECTIONS
*/
.broken : {
/*
+ * Code in the Procedure Linkage Table will segfault.
+ */
+ *(.plt)
+
+ /*
+ * Nobody does the final relocation to fixup prelinked
+ * addresses for the actual vDSO base address.
+ */
+ *(.rel*)
+
+ /*
+ * Initialization/termination won't work this way.
+ */
+ *(.init) *(.fini)
+ *(.preinit_array) *(.init_array*)
+ *(.fini_array*)
+
+ /*
+ * Thread-local storage cannot be defined like this.
+ */
+ *(.tdata .tdata.* .gnu.linkonce.td.*)
+ *(.tbss .tbss.* .gnu.linkonce.tb.*)
+ *(.tcommon)
+
+ /*
* The vDSO setup code does not handle alternative
* instructions.
*/
--
1.6.0.2
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists