Re: [PATCH v6 06/11] x86/smpboot: Support parallel startup of secondary CPUs

From: Sean Christopherson
Date: Fri Feb 03 2023 - 13:17:14 EST


On Thu, Feb 02, 2023, Usama Arif wrote:
> @@ -1515,6 +1530,17 @@ void __init native_smp_prepare_cpus(unsigned int max_cpus)
>
> speculative_store_bypass_ht_init();
>
> + /*
> + * We can do 64-bit AP bringup in parallel if the CPU reports its
> + * APIC ID in CPUID leaf 0x0B. Otherwise it's too hard. And not
> + * for SEV-ES guests because they can't use CPUID that early.
> + * Also, some AMD CPUs crash when doing parallel cpu bringup, disable
> + * it for all AMD CPUs to be on the safe side.
> + */
> + if (IS_ENABLED(CONFIG_X86_32) || boot_cpu_data.cpuid_level < 0x0B ||
> + cc_platform_has(CC_ATTR_GUEST_STATE_ENCRYPT))

Obviously not your fault, but CC_ATTR_GUEST_STATE_ENCRYPT is a terrible name.
TDX guest state is also encrypted, but TDX doesn't return true CC_ATTR_GUEST_STATE_ENCRYPT.
I.e. this looks wrong, but is correct, because CC_ATTR_GUEST_STATE_ENCRYPT really
just means "SEV-ES guest".

> + do_parallel_bringup = false;
> +
> snp_set_wakeup_secondary_cpu();
> }