diff options
author | Jason Gunthorpe <jgg@nvidia.com> | 2023-03-01 15:30:29 -0400 |
---|---|---|
committer | Jason Gunthorpe <jgg@nvidia.com> | 2023-03-06 13:06:11 -0400 |
commit | 4ed4791afb34c61650b17407846174a72e4034f4 (patch) | |
tree | e98dd71aa2f13ffc8435d082a4ce7d7ade2bda6c | |
parent | 65c619ae06801e1f21cff1a78c7e64923ad17896 (diff) | |
download | linux-4ed4791afb34c61650b17407846174a72e4034f4.tar.gz linux-4ed4791afb34c61650b17407846174a72e4034f4.tar.bz2 linux-4ed4791afb34c61650b17407846174a72e4034f4.zip |
iommufd/selftest: Add a selftest for iommufd_device_attach() with a hwpt argument
This can now be covered since we have a full struct device.
Link: https://lore.kernel.org/r/12-v3-ae9c2975a131+2e1e8-iommufd_hwpt_jgg@nvidia.com
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
-rw-r--r-- | tools/testing/selftests/iommu/iommufd.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/tools/testing/selftests/iommu/iommufd.c b/tools/testing/selftests/iommu/iommufd.c index fe20342abfb0..da0443ba1683 100644 --- a/tools/testing/selftests/iommu/iommufd.c +++ b/tools/testing/selftests/iommu/iommufd.c @@ -187,6 +187,7 @@ FIXTURE(iommufd_ioas) int fd; uint32_t ioas_id; uint32_t stdev_id; + uint32_t hwpt_id; uint64_t base_iova; }; @@ -212,7 +213,8 @@ FIXTURE_SETUP(iommufd_ioas) } for (i = 0; i != variant->mock_domains; i++) { - test_cmd_mock_domain(self->ioas_id, &self->stdev_id, NULL); + test_cmd_mock_domain(self->ioas_id, &self->stdev_id, + &self->hwpt_id); self->base_iova = MOCK_APERTURE_START; } } @@ -259,6 +261,16 @@ TEST_F(iommufd_ioas, ioas_destroy) } } +TEST_F(iommufd_ioas, hwpt_attach) +{ + /* Create a device attached directly to a hwpt */ + if (self->stdev_id) { + test_cmd_mock_domain(self->hwpt_id, NULL, NULL); + } else { + test_err_mock_domain(ENOENT, self->hwpt_id, NULL, NULL); + } +} + TEST_F(iommufd_ioas, ioas_area_destroy) { /* Adding an area does not change ability to destroy */ |