[tip: x86/urgent] dmaengine: idxd: Use cpu_feature_enabled()

From: tip-bot2 for Borislav Petkov
Date: Wed Jun 02 2021 - 15:49:38 EST

The following commit has been merged into the x86/urgent branch of tip:

Commit-ID: db099bafbf5e9c421a3a11cf33965c7b0afb3f89
Gitweb: https://git.kernel.org/tip/db099bafbf5e9c421a3a11cf33965c7b0afb3f89
Author: Borislav Petkov <bp@xxxxxxx>
AuthorDate: Wed, 02 Jun 2021 12:07:52 +02:00
Committer: Borislav Petkov <bp@xxxxxxx>
CommitterDate: Wed, 02 Jun 2021 12:29:00 +02:00

dmaengine: idxd: Use cpu_feature_enabled()

When testing x86 feature bits, use cpu_feature_enabled() so that
build-disabled features can remain off, regardless of what CPUID says.

Fixes: 8e50d392652f ("dmaengine: idxd: Add shared workqueue support")
Signed-off-by: Borislav Petkov <bp@xxxxxxx>
Reviewed-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Cc: <stable@xxxxxxxxxxxxxxx>
drivers/dma/idxd/init.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/dma/idxd/init.c b/drivers/dma/idxd/init.c
index 2a926be..776fd44 100644
--- a/drivers/dma/idxd/init.c
+++ b/drivers/dma/idxd/init.c
@@ -745,12 +745,12 @@ static int __init idxd_init_module(void)
* If the CPU does not support MOVDIR64B or ENQCMDS, there's no point in
* enumerating the device. We can not utilize it.
- if (!boot_cpu_has(X86_FEATURE_MOVDIR64B)) {
+ if (!cpu_feature_enabled(X86_FEATURE_MOVDIR64B)) {
pr_warn("idxd driver failed to load without MOVDIR64B.\n");
return -ENODEV;

- if (!boot_cpu_has(X86_FEATURE_ENQCMD))
+ if (!cpu_feature_enabled(X86_FEATURE_ENQCMD))
pr_warn("Platform does not have ENQCMD(S) support.\n");
support_enqcmd = true;