Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1322356 > unrolled thread

[tip:x86/asm] x86/alternatives: Add an auxilary section

Started bytip-bot for Borislav Petkov <tipbot@zytor.com>
First post2016-01-30 14:30 +0100
Last post2016-01-30 14:30 +0100
Articles 1 — 1 participant

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [tip:x86/asm] x86/alternatives: Add an auxilary section tip-bot for Borislav Petkov <tipbot@zytor.com> - 2016-01-30 14:30 +0100

#1322356 — [tip:x86/asm] x86/alternatives: Add an auxilary section

Fromtip-bot for Borislav Petkov <tipbot@zytor.com>
Date2016-01-30 14:30 +0100
Subject[tip:x86/asm] x86/alternatives: Add an auxilary section
Message-ID<qWDLb-3v2-5@gated-at.bofh.it>
Commit-ID:  337e4cc84021212a87b04b77b65cccc49304909e
Gitweb:     http://git.kernel.org/tip/337e4cc84021212a87b04b77b65cccc49304909e
Author:     Borislav Petkov <bp@suse.de>
AuthorDate: Tue, 26 Jan 2016 22:12:07 +0100
Committer:  Ingo Molnar <mingo@kernel.org>
CommitDate: Sat, 30 Jan 2016 11:22:20 +0100

x86/alternatives: Add an auxilary section

Add .altinstr_aux for additional instructions which will be used
before and/or during patching. All stuff which needs more
sophisticated patching should go there. See next patch.

Signed-off-by: Borislav Petkov <bp@suse.de>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/1453842730-28463-8-git-send-email-bp@alien8.de
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
 arch/x86/kernel/vmlinux.lds.S | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/arch/x86/kernel/vmlinux.lds.S b/arch/x86/kernel/vmlinux.lds.S
index 74e4bf1..92dc211 100644
--- a/arch/x86/kernel/vmlinux.lds.S
+++ b/arch/x86/kernel/vmlinux.lds.S
@@ -195,6 +195,17 @@ SECTIONS
 	:init
 #endif
 
+	/*
+	 * Section for code used exclusively before alternatives are run. All
+	 * references to such code must be patched out by alternatives, normally
+	 * by using X86_FEATURE_ALWAYS CPU feature bit.
+	 *
+	 * See static_cpu_has() for an example.
+	 */
+	.altinstr_aux : AT(ADDR(.altinstr_aux) - LOAD_OFFSET) {
+		*(.altinstr_aux)
+	}
+
 	INIT_DATA_SECTION(16)
 
 	.x86_cpu_dev.init : AT(ADDR(.x86_cpu_dev.init) - LOAD_OFFSET) {

[toc] | [standalone]


Back to top | Article view | linux.kernel


csiph-web