mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 10:40:03 +01:00
x86/spec: fix BRANCH_HARDEN option to only be set when build-enabled
The current logic to handle the BRANCH_HARDEN option will report it as enabled even when build-time disabled. Fix this by only allowing the option to be set when support for it is built into Xen. Fixes:2d6f36daa0('x86/nospec: Introduce CONFIG_SPECULATIVE_HARDEN_BRANCH') Signed-off-by: Roger Pau Monné <roger.pau@citrix.com> Reviewed-by: Jan Beulich <jbeulich@suse.com> master commit:60e00f77a5master date: 2024-02-26 16:06:42 +0100
This commit is contained in:
1 parent
19fd9ff998
commit
4d47dca20d
1 file changed
+12
-2
@@ -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,16 @@ 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 )
|
||||
opt_branch_harden = val;
|
||||
{
|
||||
if ( IS_ENABLED(CONFIG_SPECULATIVE_HARDEN_BRANCH) )
|
||||
opt_branch_harden = val;
|
||||
else
|
||||
{
|
||||
no_config_param("SPECULATIVE_HARDEN_BRANCH", "spec-ctrl", s,
|
||||
ss);
|
||||
rc = -EINVAL;
|
||||
}
|
||||
}
|
||||
else if ( (val = parse_boolean("srb-lock", s, ss)) >= 0 )
|
||||
opt_srb_lock = val;
|
||||
else if ( (val = parse_boolean("unpriv-mmio", s, ss)) >= 0 )
|
||||
|
||||