Re: [PATCH v7 6/6] x86/arch_prctl: Add ARCH_[GET|SET]_CPUID

From: Thomas Gleixner
Date: Thu Oct 27 2016 - 18:42:50 EST


On Thu, 27 Oct 2016, Andy Lutomirski wrote:
> On Thu, Oct 27, 2016 at 4:15 AM, Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
> Let's just do this right from day one:
>
> static void set_cpuid_faulting(bool on)
> {
> u64 msrval;
>
> DEBUG_LOCKS_WARN_ON(!irqs_disabled());
>
> msrval = this_cpu_read(msr_misc_features_enables_shadow);
> msrval &= CPUID_FAULT_ENABLE;
> msrval |= (on << CPUID_FAULT_ENABLE_BIT);
> this_cpu_write(msr_misc_features_enables_shadow, msrval);
> wrmsrl(MSR_MISC_FEATURES_ENABLES, msrval);
> }
>
> RDMSR may be considerably faster than WRMSR, but that doesn't mean it's *fast*.

Good point!