Commit 1cae3388 authored by Jacob Pan's avatar Jacob Pan Committed by Jason Zeng
Browse files

iommu/vt-d: Fix buggy QAT device mask

mainline inclusion
from mainline-v6.1
commit 81c95fba
category: bugfix
bugzilla: https://gitee.com/openeuler/intel-kernel/issues/I8C8B4
CVE: NA

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=81c95fbaebfa5990c3c786c8c3e87426a33106fe



-------------------------------------

Intel-SIG: commit 81c95fba iommu/vt-d: Fix buggy QAT device mask
dtlb flush
Backport SPR and EMR IOMMU PCIe related upstream bugfixes to kernel 5.10.

Impacted QAT device IDs that need extra dtlb flush quirk is ranging
from 0x4940 to 0x4943. After bitwise AND device ID with 0xfffc the
result should be 0x4940 instead of 0x494c to identify these devices.

Fixes: e65a6897 ("iommu/vt-d: Add a fix for devices need extra dtlb flush")
Reported-by: default avatarRaghunathan Srinivasan <raghunathan.srinivasan@intel.com>
Signed-off-by: default avatarAshok Raj <ashok.raj@intel.com>
Signed-off-by: default avatarJacob Pan <jacob.jun.pan@linux.intel.com>
Link: https://lore.kernel.org/r/20221203005610.2927487-1-jacob.jun.pan@linux.intel.com


Signed-off-by: default avatarLu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
(cherry picked from commit 81c95fba)
Signed-off-by: default avatarEthan Zhao <haifeng.zhao@linux.intel.com>
parent db1be5d8
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1546,7 +1546,7 @@ static void domain_update_iotlb(struct dmar_domain *domain)
 * check because it applies only to the built-in QAT devices and it doesn't
 * grant additional privileges.
 */
#define BUGGY_QAT_DEVID_MASK 0x494c
#define BUGGY_QAT_DEVID_MASK 0x4940
static bool dev_needs_extra_dtlb_flush(struct pci_dev *pdev)
{
	if (pdev->vendor != PCI_VENDOR_ID_INTEL)