iommu/vt-d: Avoid unnecessary global DMA cache invalidation
authorLu Baolu <baolu.lu@linux.intel.com>
Mon, 26 Sep 2022 13:15:29 +0000 (21:15 +0800)
committerJoerg Roedel <jroedel@suse.de>
Mon, 26 Sep 2022 13:52:26 +0000 (15:52 +0200)
commit6ad931a232e71620c6dbb8d573ccef51f84f2566
tree12f9b04423e9fbddaf98c49f8b15e6c3fd0910a0
parenteb5b20114b9710d1dcd4118dbf01b081c104bbc0
iommu/vt-d: Avoid unnecessary global DMA cache invalidation

Some VT-d hardware implementations invalidate all DMA remapping hardware
translation caches as part of SRTP flow. The VT-d spec adds a ESRTPS
(Enhanced Set Root Table Pointer Support, section 11.4.2 in VT-d spec)
capability bit to indicate this. With this bit set, software has no need
to issue the global invalidation request.

Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Reviewed-by: Jerry Snitselaar <jsnitsel@redhat.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Link: https://lore.kernel.org/r/20220919062523.3438951-3-baolu.lu@linux.intel.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/intel/iommu.c
drivers/iommu/intel/iommu.h