diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2021-07-25 10:21:19 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2021-07-25 10:21:19 -0700 |
commit | d1b178254ca39a89b3c6407e29e87dd25734399e (patch) | |
tree | b092a0f8331b6a7175c2f7ee5fb373dbd68e2f62 /arch | |
parent | e049597e7ec11fdc276d787d320b01ef1f647c4a (diff) | |
parent | e48a12e546ecbfb0718176037eae0ad60598a29a (diff) | |
download | linux-d1b178254ca39a89b3c6407e29e87dd25734399e.tar.bz2 |
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.c | 7 |
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); |