[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241009073437.GG17263@noisy.programming.kicks-ass.net>
Date: Wed, 9 Oct 2024 09:34:37 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Borislav Petkov <bp@...en8.de>
Cc: linux-kernel@...r.kernel.org, linux-tip-commits@...r.kernel.org,
Robert Gill <rtgill82@...il.com>,
Andrew Cooper <andrew.cooper3@...rix.com>, stable@...r.kernel.org,
#@...-bot2.tec.linutronix.de, 5.10+@...-bot2.tec.linutronix.de,
Dave Hansen <dave.hansen@...ux.intel.com>,
Brian Gerst <brgerst@...il.com>,
Pawan Gupta <pawan.kumar.gupta@...ux.intel.com>, x86@...nel.org
Subject: Re: [tip: x86/urgent] x86/bugs: Use code segment selector for VERW
operand
On Wed, Oct 09, 2024 at 08:11:02AM +0200, Borislav Petkov wrote:
> On Tue, Oct 08, 2024 at 10:45:36PM -0000, tip-bot2 for Pawan Gupta wrote:
> > .macro CLEAR_CPU_BUFFERS
> > - ALTERNATIVE "", __stringify(verw _ASM_RIP(mds_verw_sel)), X86_FEATURE_CLEAR_CPU_BUF
> > +#ifdef CONFIG_X86_64
> > + ALTERNATIVE "", "verw mds_verw_sel(%rip)", X86_FEATURE_CLEAR_CPU_BUF
> > +#else
> > + /*
> > + * In 32bit mode, the memory operand must be a %cs reference. The data
> > + * segments may not be usable (vm86 mode), and the stack segment may not
> > + * be flat (ESPFIX32).
> > + */
> > + ALTERNATIVE "", "verw %cs:mds_verw_sel", X86_FEATURE_CLEAR_CPU_BUF
> > +#endif
>
> So why didn't we ifdef the "verw mds_verw_sel(%rip)" and "verw
> %cs:mds_verw_sel" macro argument instead of adding more bigger ugly ifdeffery?
You need ifdeffery either way around, either directly like this or for
that macro. This is simple and straight forward.
Powered by blists - more mailing lists