summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2021-07-25 19:21:19 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2021-07-25 19:21:19 +0200
commitd1b178254ca39a89b3c6407e29e87dd25734399e (patch)
treeb092a0f8331b6a7175c2f7ee5fb373dbd68e2f62 /arch
parentMerge tag 'efi-urgent-2021-07-25' of git://git.kernel.org/pub/scm/linux/kerne... (diff)
parentjump_labels: Mark __jump_label_transform() as __always_inlined to work around... (diff)
downloadlinux-d1b178254ca39a89b3c6407e29e87dd25734399e.tar.xz
linux-d1b178254ca39a89b3c6407e29e87dd25734399e.zip
Merge tag 'locking-urgent-2021-07-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull x86 jump label fix from Thomas Gleixner: "A single fix for jump labels to prevent the compiler from agressive un-inlining which results in a section mismatch" * tag 'locking-urgent-2021-07-25' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: jump_labels: Mark __jump_label_transform() as __always_inlined to work around aggressive compiler un-inlining
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/kernel/jump_label.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/x86/kernel/jump_label.c b/arch/x86/kernel/jump_label.c
index 674906fad43b..68f091ba8443 100644
--- a/arch/x86/kernel/jump_label.c
+++ b/arch/x86/kernel/jump_label.c
@@ -79,9 +79,10 @@ __jump_label_patch(struct jump_entry *entry, enum jump_label_type type)
return (struct jump_label_patch){.code = code, .size = size};
}
-static inline void __jump_label_transform(struct jump_entry *entry,
- enum jump_label_type type,
- int init)
+static __always_inline void
+__jump_label_transform(struct jump_entry *entry,
+ enum jump_label_type type,
+ int init)
{
const struct jump_label_patch jlp = __jump_label_patch(entry, type);