diff options
| author | Nathan Chancellor <[email protected]> | 2022-07-13 15:24:37 +0000 |
|---|---|---|
| committer | Linus Torvalds <[email protected]> | 2022-07-14 21:52:43 +0000 |
| commit | db886979683a8360ced9b24ab1125ad0c4d2cf76 (patch) | |
| tree | 9cca94b1070300256049291b9ed9bf3492b846a0 | |
| parent | Merge tag 'net-5.19-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/net... (diff) | |
| download | kernel-db886979683a8360ced9b24ab1125ad0c4d2cf76.tar.gz kernel-db886979683a8360ced9b24ab1125ad0c4d2cf76.zip | |
x86/speculation: Use DECLARE_PER_CPU for x86_spec_ctrl_current
Clang warns:
arch/x86/kernel/cpu/bugs.c:58:21: error: section attribute is specified on redeclared variable [-Werror,-Wsection]
DEFINE_PER_CPU(u64, x86_spec_ctrl_current);
^
arch/x86/include/asm/nospec-branch.h:283:12: note: previous declaration is here
extern u64 x86_spec_ctrl_current;
^
1 error generated.
The declaration should be using DECLARE_PER_CPU instead so all
attributes stay in sync.
Cc: [email protected]
Fixes: fc02735b14ff ("KVM: VMX: Prevent guest RSB poisoning attacks with eIBRS")
Reported-by: kernel test robot <[email protected]>
Signed-off-by: Nathan Chancellor <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
| -rw-r--r-- | arch/x86/include/asm/nospec-branch.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/include/asm/nospec-branch.h b/arch/x86/include/asm/nospec-branch.h index bb05ed4f46bd..10a3bfc1eb23 100644 --- a/arch/x86/include/asm/nospec-branch.h +++ b/arch/x86/include/asm/nospec-branch.h @@ -11,6 +11,7 @@ #include <asm/cpufeatures.h> #include <asm/msr-index.h> #include <asm/unwind_hints.h> +#include <asm/percpu.h> #define RETPOLINE_THUNK_SIZE 32 @@ -280,7 +281,7 @@ static inline void indirect_branch_prediction_barrier(void) /* The Intel SPEC CTRL MSR base value cache */ extern u64 x86_spec_ctrl_base; -extern u64 x86_spec_ctrl_current; +DECLARE_PER_CPU(u64, x86_spec_ctrl_current); extern void write_spec_ctrl_current(u64 val, bool force); extern u64 spec_ctrl_current(void); |
