[tip:perf/core] jump_label, x86: Fix section mismatch

From: tip-bot for Peter Zijlstra
Date: Tue Dec 06 2011 - 15:16:12 EST


Commit-ID: 9cdbe1cbac4ec318037297175587a0080acc9d11
Gitweb: http://git.kernel.org/tip/9cdbe1cbac4ec318037297175587a0080acc9d11
Author: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
AuthorDate: Tue, 6 Dec 2011 17:27:29 +0100
Committer: Ingo Molnar <mingo@xxxxxxx>
CommitDate: Tue, 6 Dec 2011 20:41:02 +0100

jump_label, x86: Fix section mismatch

WARNING: arch/x86/kernel/built-in.o(.text+0x4c71): Section mismatch in
reference from the function arch_jump_label_transform_static() to the
function .init.text:text_poke_early()
The function arch_jump_label_transform_static() references
the function __init text_poke_early().
This is often because arch_jump_label_transform_static lacks a __init
annotation or the annotation of text_poke_early is wrong.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
Cc: Jason Baron <jbaron@xxxxxxxxxx>
Link: http://lkml.kernel.org/n/tip-9lefe89mrvurrwpqw5h8xm8z@xxxxxxxxxxxxxx
Signed-off-by: Ingo Molnar <mingo@xxxxxxx>
---
arch/x86/kernel/jump_label.c | 2 +-
kernel/jump_label.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/x86/kernel/jump_label.c b/arch/x86/kernel/jump_label.c
index ea9d5f2f..2889b3d 100644
--- a/arch/x86/kernel/jump_label.c
+++ b/arch/x86/kernel/jump_label.c
@@ -50,7 +50,7 @@ void arch_jump_label_transform(struct jump_entry *entry,
put_online_cpus();
}

-void arch_jump_label_transform_static(struct jump_entry *entry,
+__init_or_module void arch_jump_label_transform_static(struct jump_entry *entry,
enum jump_label_type type)
{
__jump_label_transform(entry, type, text_poke_early);
diff --git a/kernel/jump_label.c b/kernel/jump_label.c
index 51a175a..3fb7b79 100644
--- a/kernel/jump_label.c
+++ b/kernel/jump_label.c
@@ -142,7 +142,7 @@ static int __jump_label_text_reserved(struct jump_entry *iter_start,
* running code can override this to make the non-live update case
* cheaper.
*/
-void __weak arch_jump_label_transform_static(struct jump_entry *entry,
+void __weak __init_or_module arch_jump_label_transform_static(struct jump_entry *entry,
enum jump_label_type type)
{
arch_jump_label_transform(entry, type);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/