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(); > }