iommufd: Only enforce cache coherency in iommufd_hw_pagetable_alloc
authorNicolin Chen <nicolinc@nvidia.com>
Tue, 24 Oct 2023 01:29:58 +0000 (18:29 -0700)
committerJason Gunthorpe <jgg@nvidia.com>
Tue, 24 Oct 2023 15:56:37 +0000 (12:56 -0300)
commit2ccabf81ddff81355bf044bdad3c44e9e6ac32d9
treed8a4a81488d15704280614ff7826a1090dcc4cc3
parent0795b305da8902e7d092f90bf9a1a2c98f34b1db
iommufd: Only enforce cache coherency in iommufd_hw_pagetable_alloc

According to the conversation in the following link:
https://lore.kernel.org/linux-iommu/20231020135501.GG3952@nvidia.com/

The enforce_cache_coherency should be set/enforced in the hwpt allocation
routine. The iommu driver in its attach_dev() op should decide whether to
reject or not a device that doesn't match with the configuration of cache
coherency. Drop the enforce_cache_coherency piece in the attach/replace()
and move the remaining "num_devices" piece closer to the refcount that is
using it.

Accordingly drop its function prototype in the header and mark it static.
Also add some extra comments to clarify the expected behaviors.

Link: https://lore.kernel.org/r/20231024012958.30842-1-nicolinc@nvidia.com
Suggested-by: Kevin Tian <kevin.tian@intel.com>
Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Signed-off-by: Nicolin Chen <nicolinc@nvidia.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/iommu/iommufd/device.c
drivers/iommu/iommufd/hw_pagetable.c
drivers/iommu/iommufd/iommufd_private.h