From: David Woodhouse Date: Wed, 28 Oct 2015 06:14:09 +0000 (+0900) Subject: iommu/vt-d: Fix rwxp flags in SVM device fault callback X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=0bdec95ce52d2705787f813e82c1ff2f1b29af17;p=deliverable%2Flinux.git 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 --- 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,