Messages in this thread | | | Date | Tue, 27 Feb 2024 10:43:53 +0100 | Subject | Re: [PATCH] x86/bugs: Use fixed addressing for VERW operand | From | Jiri Slaby <> |
| |
On 27. 02. 24, 9:47, Nikolay Borisov wrote: > > > On 27.02.24 г. 1:52 ч., Pawan Gupta wrote: >> Macro used for MDS mitigation executes VERW with relative addressing for >> the operand. This is unnecessary and creates a problem for backports on >> older kernels that don't support relocations in alternatives. Relocation >> support was added by commit 270a69c4485d ("x86/alternative: Support >> relocations in alternatives"). Also asm for fixed addressing is much >> more cleaner than relative RIP addressing. >> >> Simplify the asm by using fixed addressing for VERW operand. >> >> Fixes: baf8361e5455 ("x86/bugs: Add asm helpers for executing VERW") >> Reported-by: Nikolay Borisov <nik.borisov@suse.com> >> Closes: >> https://lore.kernel.org/lkml/20558f89-299b-472e-9a96-171403a83bd6@suse.com/ >> Signed-off-by: Pawan Gupta <pawan.kumar.gupta@linux.intel.com> >> --- >> arch/x86/include/asm/nospec-branch.h | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/arch/x86/include/asm/nospec-branch.h >> b/arch/x86/include/asm/nospec-branch.h >> index 2aa52cab1e46..ab19c7f1167b 100644 >> --- a/arch/x86/include/asm/nospec-branch.h >> +++ b/arch/x86/include/asm/nospec-branch.h >> @@ -323,7 +323,7 @@ >> * Note: Only the memory operand variant of VERW clears the CPU >> buffers. >> */ >> .macro CLEAR_CPU_BUFFERS >> - ALTERNATIVE "", __stringify(verw _ASM_RIP(mds_verw_sel)), >> X86_FEATURE_CLEAR_CPU_BUF >> + ALTERNATIVE "", __stringify(verw mds_verw_sel), >> X86_FEATURE_CLEAR_CPU_BUF > > Actually thinking about it more and discussing with Jiri (cc'ed), will > this work with KASLR enabled?
I might of course be wrong. We appear to rely on the asm+linker here. Please see also: https://lore.kernel.org/r/fd8f2df0-563e-4f5c-aca4-bc92a14e9426@kernel.org
thanks, -- js suse labs
| |