aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/iommu
diff options
context:
space:
mode:
authorDavid Woodhouse <David.Woodhouse@intel.com>2015-10-28 15:14:09 +0900
committerDavid Woodhouse <David.Woodhouse@intel.com>2015-10-28 15:14:09 +0900
commit0bdec95ce52d2705787f813e82c1ff2f1b29af17 (patch)
tree01cc0dd88369b5c658a406c7f5f7597cd1712d14 /drivers/iommu
parentiommu/vt-d: Expose struct svm_dev_ops without CONFIG_INTEL_IOMMU_SVM (diff)
downloadlinux-dev-0bdec95ce52d2705787f813e82c1ff2f1b29af17.tar.xz
linux-dev-0bdec95ce52d2705787f813e82c1ff2f1b29af17.zip
iommu/vt-d: Fix rwxp flags in SVM device fault callback
This is the downside of using bitfields in the struct definition, rather than doing all the explicit masking and shifting. Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Diffstat (limited to 'drivers/iommu')
-rw-r--r--drivers/iommu/intel-svm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/iommu/intel-svm.c b/drivers/iommu/intel-svm.c
index 48a3d4a3d6c0..c69e3f9ec958 100644
--- a/drivers/iommu/intel-svm.c
+++ b/drivers/iommu/intel-svm.c
@@ -564,7 +564,7 @@ static irqreturn_t prq_event_thread(int irq, void *d)
if (sdev && sdev->ops && sdev->ops->fault_cb) {
int rwxp = (req->rd_req << 3) | (req->wr_req << 2) |
- (req->wr_req << 1) | (req->exe_req);
+ (req->exe_req << 1) | (req->priv_req);
sdev->ops->fault_cb(sdev->dev, req->pasid, req->addr, req->private, rwxp, result);
}
/* We get here in the error case where the PASID lookup failed,