Re: [PATCH 2/3] x86/split_lock: Bits in IA32_CORE_CAPABILITIES are not architectural

From: Thomas Gleixner
Date: Fri Apr 17 2020 - 15:29:38 EST


"Luck, Tony" <tony.luck@xxxxxxxxx> writes:
> On Fri, Apr 17, 2020 at 12:04:36PM +0200, Thomas Gleixner wrote:
> + if (!m->driver_data)
> + goto setup;
> + if (!cpu_has(c, X86_FEATURE_CORE_CAPABILITIES))
> + return;
> + rdmsrl(MSR_IA32_CORE_CAPS, ia32_core_caps);
> + if (!(ia32_core_caps & MSR_IA32_CORE_CAPS_SPLIT_LOCK_DETECT))
> + return;
> +setup:
> + split_lock_setup();

Which looks nicer w/o the goto:

if (m->driver_data) {
if (!cpu_has(c, X86_FEATURE_CORE_CAPABILITIES))
return;
rdmsrl(MSR_IA32_CORE_CAPS, ia32_core_caps);
if (!(ia32_core_caps & MSR_IA32_CORE_CAPS_SPLIT_LOCK_DETECT))
return;
}

Hmm?