|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v2 2/3] x86/spec: fix BRANCH_HARDEN option to only be set when build-enabled
On 26.02.2024 10:57, Roger Pau Monné wrote:
> On Mon, Feb 26, 2024 at 10:33:14AM +0100, Jan Beulich wrote:
>> On 26.02.2024 10:09, Roger Pau Monné wrote:
>>> On Mon, Feb 26, 2024 at 09:42:58AM +0100, Jan Beulich wrote:
>>>> On 23.02.2024 13:06, Roger Pau Monne wrote:
>>>>> --- a/xen/arch/x86/spec_ctrl.c
>>>>> +++ b/xen/arch/x86/spec_ctrl.c
>>>>> @@ -50,7 +50,8 @@ static int8_t __initdata opt_psfd = -1;
>>>>> int8_t __ro_after_init opt_ibpb_ctxt_switch = -1;
>>>>> int8_t __read_mostly opt_eager_fpu = -1;
>>>>> int8_t __read_mostly opt_l1d_flush = -1;
>>>>> -static bool __initdata opt_branch_harden = true;
>>>>> +static bool __initdata opt_branch_harden =
>>>>> + IS_ENABLED(CONFIG_SPECULATIVE_HARDEN_BRANCH);
>>>>>
>>>>> bool __initdata bsp_delay_spec_ctrl;
>>>>> uint8_t __read_mostly default_xen_spec_ctrl;
>>>>> @@ -268,7 +269,14 @@ static int __init cf_check parse_spec_ctrl(const
>>>>> char *s)
>>>>> else if ( (val = parse_boolean("l1d-flush", s, ss)) >= 0 )
>>>>> opt_l1d_flush = val;
>>>>> else if ( (val = parse_boolean("branch-harden", s, ss)) >= 0 )
>>>>> + {
>>>>> +#ifdef CONFIG_SPECULATIVE_HARDEN_BRANCH
>>>>> opt_branch_harden = val;
>>>>> +#else
>>>>> + no_config_param("SPECULATIVE_HARDEN_BRANCH", "spec-ctrl", s,
>>>>> ss);
>>>>> + rc = -EINVAL;
>>>>> +#endif
>>>>> + }
>>>>> else if ( (val = parse_boolean("srb-lock", s, ss)) >= 0 )
>>>>> opt_srb_lock = val;
>>>>> else if ( (val = parse_boolean("unpriv-mmio", s, ss)) >= 0 )
>>>>
>>>> While looking at patch 3 I noticed another inconsistency: Wouldn't
>>>> "Compiled-in support:" better also enumerate HARDEN_BRANCH then, just
>>>> like for thunks both CONFIG_* state and actual runtime choice are
>>>> logged?
>>>
>>> Yes, I guess we would also need to expand "Compiled-in support:" to
>>> include HARDEN_ARRAY and HARDEN_GUEST_ACCESS.
>>>
>>>> Or alternatively, should logging of thunk runtime choice be
>>>> suppressed when the Kconfig setting is off?
>>>
>>> Hm, I think printing "BTI-Thunk N/A" is good enough when the thunk has
>>> been built time disabled.
>>
>> Good enough - yes. But redundant with the other log line. And since all
>> of this output is getting longer and longer anyway, omitting whatever
>> can sensibly be omitted might be at least worth considering.
>
> I can add yet another patch to remove that when not built-in, this
> cleanup is turning into a never-ending exercise I'm afraid.
Just to be clear: I'm not meaning to insist that you also clean up the
thunk part. But I still wanted to mention such as I noticed it.
Jan
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |