Messages in this thread | | | Date | Fri, 26 Jun 2020 11:10:00 -0700 | From | "Luck, Tony" <> | Subject | Re: [PATCH v4 12/12] x86/traps: Fix up invalid PASID |
| |
On Fri, Jun 26, 2020 at 11:44:50AM +0200, Peter Zijlstra wrote: > On Thu, Jun 25, 2020 at 01:17:22PM -0700, Fenghua Yu wrote: > > > +static bool fixup_pasid_exception(void) > > +{ > > + if (!IS_ENABLED(CONFIG_INTEL_IOMMU_SVM)) > > + return false; > > + if (!static_cpu_has(X86_FEATURE_ENQCMD)) > > + return false; > > elsewhere you had another variation: > > + if (!IS_ENABLED(CONFIG_INTEL_IOMMU_SVM)) > + return; > + > + if (!cpu_feature_enabled(X86_FEATURE_ENQCMD)) > + return; > > Which is it, and why do we need the CONFIG thing when combined with the > enabled thing?
Do we have a standard way of coding for a feature that depends on multiple other features? For this case the system needs to both suport the ENQCMD instruction, and also have kernel code that programs the IOMMU.
And/or guidance on when to use each of the very somewhat simlar looking boot_cpu_has() static_cpu_has() IS_ENABLED() cpu_feature_enabled() options?
-Tony
| |