iommu/vt-d: Set the right field for Page Walk Snoop
authorLu Baolu <baolu.lu@linux.intel.com>
Tue, 21 May 2019 07:30:16 +0000 (15:30 +0800)
committerJoerg Roedel <jroedel@suse.de>
Mon, 27 May 2019 14:32:43 +0000 (16:32 +0200)
Set the page walk snoop to the right bit, otherwise the domain
id field will be overlapped.

Reported-by: Dave Jiang <dave.jiang@intel.com>
Fixes: 6f7db75e1c469 ("iommu/vt-d: Add second level page table interface")
Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/intel-pasid.c

index 2fefeaf..fe51d8a 100644 (file)
@@ -389,7 +389,7 @@ static inline void pasid_set_present(struct pasid_entry *pe)
  */
 static inline void pasid_set_page_snoop(struct pasid_entry *pe, bool value)
 {
-       pasid_set_bits(&pe->val[1], 1 << 23, value);
+       pasid_set_bits(&pe->val[1], 1 << 23, value << 23);
 }
 
 /*