]> git.baikalelectronics.ru Git - kernel.git/commit
iommu/vt-d: Handle non-page aligned address
authorLiu Yi L <yi.l.liu@intel.com>
Fri, 24 Jul 2020 01:49:17 +0000 (09:49 +0800)
committerJoerg Roedel <jroedel@suse.de>
Fri, 24 Jul 2020 08:51:21 +0000 (10:51 +0200)
commit36024119bbef213773ef445d92fed7a8d012ad51
treed6d0c95bbc0c5a64549268ffb2494ce28e5d14ba
parente6d512cb1820f732ed8929f1a96309ee05b8b7d8
iommu/vt-d: Handle non-page aligned address

Address information for device TLB invalidation comes from userspace
when device is directly assigned to a guest with vIOMMU support.
VT-d requires page aligned address. This patch checks and enforce
address to be page aligned, otherwise reserved bits can be set in the
invalidation descriptor. Unrecoverable fault will be reported due to
non-zero value in the reserved bits.

Fixes: ed65807b4a079 ("iommu/vt-d: Support flushing more translation cache types")
Signed-off-by: Liu Yi L <yi.l.liu@intel.com>
Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com>
Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Link: https://lore.kernel.org/r/20200724014925.15523-5-baolu.lu@linux.intel.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/intel/dmar.c