Re: [PATCH RFC V3 3/9] x86/pks: Enable Protection Keys Supervisor (PKS)

From: Ira Weiny
Date: Tue Oct 13 2020 - 22:08:37 EST


On Tue, Oct 13, 2020 at 11:23:08AM -0700, Dave Hansen wrote:
> On 10/9/20 12:42 PM, ira.weiny@xxxxxxxxx wrote:
> > +/*
> > + * PKS is independent of PKU and either or both may be supported on a CPU.
> > + * Configure PKS if the cpu supports the feature.
> > + */
>
> Let's at least be consistent about CPU vs. cpu in a single comment. :)

Sorry, done.

>
> > +static void setup_pks(void)
> > +{
> > + if (!IS_ENABLED(CONFIG_ARCH_HAS_SUPERVISOR_PKEYS))
> > + return;
> > + if (!cpu_feature_enabled(X86_FEATURE_PKS))
> > + return;
>
> If you put X86_FEATURE_PKS in disabled-features.h, you can get rid of
> the explicit CONFIG_ check.

Done.

>
> > + cr4_set_bits(X86_CR4_PKS);
> > +}
> > +
> > /*
> > * This does the hard work of actually picking apart the CPU stuff...
> > */
> > @@ -1544,6 +1558,7 @@ static void identify_cpu(struct cpuinfo_x86 *c)
> >
> > x86_init_rdrand(c);
> > setup_pku(c);
> > + setup_pks();
> >
> > /*
> > * Clear/Set all flags overridden by options, need do it
> > diff --git a/mm/Kconfig b/mm/Kconfig
> > index 6c974888f86f..1b9bc004d9bc 100644
> > --- a/mm/Kconfig
> > +++ b/mm/Kconfig
> > @@ -822,6 +822,8 @@ config ARCH_USES_HIGH_VMA_FLAGS
> > bool
> > config ARCH_HAS_PKEYS
> > bool
> > +config ARCH_HAS_SUPERVISOR_PKEYS
> > + bool
> >
> > config PERCPU_STATS
> > bool "Collect percpu memory statistics"
> >
>