Browse Source

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>
David Woodhouse 9 years ago
parent
commit
0bdec95ce5
1 changed files with 1 additions and 1 deletions
  1. 1 1
      drivers/iommu/intel-svm.c

+ 1 - 1
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,