From: Petr Tesarik <ptesarik@suse.cz>
To: LKML <linux-kernel@vger.kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
Andi Kleen <andi@firstfloor.org>,
Roland McGrath <roland@redhat.com>,
Petr Tesarik <ptesarik@suse.cz>
Subject: [PATCH v2 5/8] x86: mark altinstr-related sections in vDSO as broken
Date: Fri, 12 Jun 2009 15:40:37 +0200 [thread overview]
Message-ID: <1244814040-5810-6-git-send-email-ptesarik@suse.cz> (raw)
In-Reply-To: <1244814040-5810-1-git-send-email-ptesarik@suse.cz>
There are several reasons why this does not work for the vDSO.
1. The alt_instr records are not processed by anybody.
The .altinstruction sections end up in the vDSO binary, which
is then incorporated verbatim inside a completely different
section, so it is not seen by the main kernel.
There is no code to interpret them during vDSO setup either.
2. The pointers in the alt_instr records are wrong.
They point to the instructions and replacements at the prelinked
addresses, but that's neither where the vDSO blob is located at
startup, nor where it is copied to by the vDSO setup.
The .altinstr_replacement section is not broken per se, but it is
useless dead code without the accompanying .alt_instr section.
Signed-off-by: Petr Tesarik <ptesarik@suse.cz>
---
arch/x86/vdso/vdso-layout.lds.S | 12 +++++-------
1 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/arch/x86/vdso/vdso-layout.lds.S b/arch/x86/vdso/vdso-layout.lds.S
index 7a76159..fc2ad07 100644
--- a/arch/x86/vdso/vdso-layout.lds.S
+++ b/arch/x86/vdso/vdso-layout.lds.S
@@ -56,13 +56,6 @@ SECTIONS
*(.gnu.linkonce.b.*)
}
- .altinstructions : {
- *(.altinstructions)
- }
- .altinstr_replacement : {
- *(.altinstr_replacement)
- }
-
/*
* Align the actual code well away from the non-instruction data.
* This is the best thing for the I-cache.
@@ -80,6 +73,11 @@ SECTIONS
* if they get used by accident.
*/
.broken : {
+ /* The vDSO setup code does not handle alternative
+ * instructions.
+ */
+ *(.altinstructions)
+ *(.altinstr_replacement)
}
}
--
1.6.0.2
next prev parent reply other threads:[~2009-06-12 13:47 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-12 13:40 [PATCH v2 0/8] clean up vdso-layout.lds.S Petr Tesarik
2009-06-12 13:40 ` [PATCH v2 1/8] x86: Adjust the coding style of vdso-layout.lds.S Petr Tesarik
2009-06-12 13:40 ` [PATCH v2 2/8] x86: Remove .sdata from the vDSO linker script Petr Tesarik
2009-06-12 13:40 ` [PATCH v2 3/8] x86: Remove .dynbss " Petr Tesarik
2009-06-12 13:40 ` [PATCH v2 4/8] x86: add .broken section to " Petr Tesarik
2009-06-12 13:40 ` Petr Tesarik [this message]
2009-06-12 13:40 ` [PATCH v2 6/8] x86: mark some standard sections as broken in a vDSO Petr Tesarik
2009-06-12 13:40 ` [PATCH v2 7/8] x86: check the size of GOT in vDSO Petr Tesarik
2009-06-12 13:40 ` [PATCH v2 8/8] x86: remove unneeded section from the vDSO Petr Tesarik
2009-06-12 18:06 ` [PATCH v2 0/8] clean up vdso-layout.lds.S Sam Ravnborg
2009-06-15 15:16 ` Petr Tesarik
2009-06-15 15:27 ` Petr Tesarik
2009-06-15 16:51 ` H. Peter Anvin
2009-06-15 17:45 ` Petr Tesarik
2009-06-15 18:33 ` H. Peter Anvin
2009-06-16 7:53 ` Petr Tesarik
2009-06-16 10:12 ` Petr Tesarik
2009-06-16 10:22 ` Roland McGrath
2009-06-16 8:40 ` Roland McGrath
2009-06-16 9:55 ` Petr Tesarik
2009-06-16 10:34 ` Roland McGrath
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=1244814040-5810-6-git-send-email-ptesarik@suse.cz \
--to=ptesarik@suse.cz \
--cc=andi@firstfloor.org \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=roland@redhat.com \
--cc=tglx@linutronix.de \
/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
all inboxes | Powered by JetHome®