[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v2 2/6] x86: reduce CET-SS related #ifdef-ary
On 28/09/2020 13:37, Jan Beulich wrote: > On 28.09.2020 14:30, Jan Beulich wrote: >> Commit b586a81b7a90 ("x86/CET: Fix build following c/s 43b98e7190") had >> to introduce a number of #ifdef-s to make the build work with older tool >> chains. Introduce an assembler macro covering for tool chains not >> knowing of CET-SS, allowing some conditionals where just SETSSBSY is the >> problem to be dropped again. >> >> No change to generated code. >> >> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> >> Reviewed-by: Roger Pau Monné <roger.pau@xxxxxxxxxx> >> --- >> Now that I've done this I'm no longer sure which direction is better to >> follow: On one hand this introduces dead code (even if just NOPs) into >> CET-SS-disabled builds. > A possible compromise here might be to ... > >> --- a/xen/include/asm-x86/asm-defns.h >> +++ b/xen/include/asm-x86/asm-defns.h >> @@ -7,3 +7,9 @@ >> .byte 0x0f, 0x01, 0xcb >> .endm >> #endif >> + >> +#ifndef CONFIG_HAS_AS_CET_SS >> +.macro setssbsy >> + .byte 0xf3, 0x0f, 0x01, 0xe8 >> +.endm >> +#endif > ... comment out this macro's body. If we went this route, incssp > and wrssp could be dealt with in similar ways, to allow dropping > further #ifdef-s. No, because how you've got something which reads as a real instruction which sometimes disappears into nothing. (Interestingly, zero length alternatives do appear to compile, and this is clearly a bug.) The thing which matters is the clarity of code in its surrounding context, and this isn't an improvement. ~Andrew
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |