Messages in this thread Patch in this message | | | From | Petr Tesarik <> | Subject | [PATCH v3 5/9] x86: mark some standard sections as broken in a vDSO | Date | Tue, 16 Jun 2009 14:55:25 +0200 |
| |
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@suse.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
| |