mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/
synced 2026-10-14 05:55:17 +00:00
iommu_flush_dev_iotlb() is called to invalidate caches on a device but
only loops over the devices which are fully-attached to the domain. For
sub-devices, this is ineffective and can result in invalid caching
entries left on the device.
Fix the missing invalidation by adding a loop over the subdevices and
ensuring that 'domain->has_iotlb_device' is updated when attaching to
subdevices.
Fixes:
|
History
|
|
|---|---|---|
| .. | ||
| debugfs.c | ||
| dmar.c | ||
| iommu.c | ||
| irq_remapping.c | ||
| Kconfig | ||
| Makefile | ||
| pasid.c | ||
| pasid.h | ||
| svm.c | ||
| trace.c | ||