Messages in this thread | | | Subject | Re: [PATCH v2 07/33] x86/intel_rdt: Add support for Cache Allocation detection | From | Dave Hansen <> | Date | Tue, 13 Sep 2016 16:00:27 -0700 |
| |
On 09/13/2016 03:52 PM, Luck, Tony wrote: > On Tue, Sep 13, 2016 at 03:40:18PM -0700, Dave Hansen wrote: >> Are you sure you don't want to add RDT to disabled-features.h? You have >> a config option for it, so it seems like you should also be able to >> optimize some of these checks away when the config option is off. > > Makefile looks like this: > > obj-$(CONFIG_INTEL_RDT) += intel_rdt.o intel_rdt_rdtgroup.o intel_rdt_schemata.o > > which seems to skip compiling all our code when the CONFIG > option is off. > > Our hooks to generic code look like: > > +#ifdef CONFIG_INTEL_RDT > +extern void rdtgroup_fork(struct task_struct *child); > +extern void rdtgroup_exit(struct task_struct *tsk); > +#else > +static inline void rdtgroup_fork(struct task_struct *child) {} > +static inline void rdtgroup_exit(struct task_struct *tsk) {} > +#endif /* CONFIG_INTEL_RDT */ > > Does this disabled-features.h thing do something more?
If you have cpuid checks in common code, disabled-features.h can compile them out if the config options are turned off. For instance:
if (cpu_feature_enabled(X86_FEATURE_PKU)) foo();
is equivalent to:
#ifdef CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS if (boot_cpu_has(X86_FEATURE_PKU)) foo(); #endif
But, if all the cpu_has(c, X86_FEATURE_CAT_L3) checks are confined to files only compiled under CONFIG_INTEL_RDT then it won't do you much good. But, it's pretty simple to add things, and would help you out if checks spread beyond intel_rdt*.c.
| |