Messages in this thread | | | Date | Wed, 25 Oct 2023 22:10:41 +0100 | From | Andrew Cooper <> | Subject | Re: [PATCH v3 1/6] x86/bugs: Add asm helpers for executing VERW |
| |
On 25/10/2023 9:52 pm, Pawan Gupta wrote: > diff --git a/arch/x86/entry/entry.S b/arch/x86/entry/entry.S > index bfb7bcb362bc..f8ba0c0b6e60 100644 > --- a/arch/x86/entry/entry.S > +++ b/arch/x86/entry/entry.S > @@ -20,3 +23,16 @@ SYM_FUNC_END(entry_ibpb) > EXPORT_SYMBOL_GPL(entry_ibpb); > > .popsection > + > +.pushsection .entry.text, "ax" > + > +.align L1_CACHE_BYTES, 0xcc > +SYM_CODE_START_NOALIGN(mds_verw_sel) > + UNWIND_HINT_UNDEFINED > + ANNOTATE_NOENDBR > + .word __KERNEL_DS
You need another .align here. Otherwise subsequent code will still start in this cacheline and defeat the purpose of trying to keep it separate.
> +SYM_CODE_END(mds_verw_sel);
Thinking about it, should this really be CODE and not a data entry?
It lives in .entry.text but it really is data and objtool shouldn't be writing ORC data for it at all.
(Not to mention that if it's marked as STT_OBJECT, objdump -d will do the sensible thing and not even try to disassemble it).
~Andrew
P.S. Please CC on the full series. Far less effort than fishing the rest off lore.
| |