On 3/4/19 10:59 AM, Fenghua Yu wrote: >> But, it goes unmentioned why you do the boot-cpu-only restriction here. >> It doesn't match the behavior of the two functions called before >> init_core_capability(): >> >> init_scattered_cpuid_features(c); >> init_speculation_control(c); >> >> So why is this new function special? > The function sets the split_lock_detect feature which needs to be > applied before BSP calls apply_enforced_caps() in get_cpu_cap(). Why does it need to be applied that way? > And I want to enable split lock detection in earlier phase to detect > split lock earlier. Why do you want to do this? Why is this *required* as part of this implementation? ... and how is this different than the other features that are processed for cpus other than the boot CPU?