]> www.infradead.org Git - users/dwmw2/linux.git/commit
iommu/vt-d: Remove global page flush support
authorJacob Pan <jacob.jun.pan@linux.intel.com>
Mon, 26 Aug 2019 15:53:29 +0000 (08:53 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 21 Sep 2019 05:18:48 +0000 (07:18 +0200)
commitd5898d2f06fc13e163596aab175101c1b1816290
treec2bd3a632c857593aacf1c0510388f00f0b28e2c
parent5df0a5fd4d1c227a496e2173f240fabdfa2b02d2
iommu/vt-d: Remove global page flush support

[ Upstream commit 8744daf4b0699b724ee0a56b313a6c0c4ea289e3 ]

Global pages support is removed from VT-d spec 3.0. Since global pages G
flag only affects first-level paging structures and because DMA request
with PASID are only supported by VT-d spec. 3.0 and onward, we can
safely remove global pages support.

For kernel shared virtual address IOTLB invalidation, PASID
granularity and page selective within PASID will be used. There is
no global granularity supported. Without this fix, IOTLB invalidation
will cause invalid descriptor error in the queued invalidation (QI)
interface.

Fixes: 1c4f88b7f1f9 ("iommu/vt-d: Shared virtual address in scalable mode")
Reported-by: Sanjay K Kumar <sanjay.k.kumar@intel.com>
Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/iommu/intel-svm.c
include/linux/intel-iommu.h