Lines Matching full:region

136 	struct vfio_dma_region region;  in TEST_F()  local
142 region.vaddr = mmap(NULL, size, PROT_READ | PROT_WRITE, flags, -1, 0); in TEST_F()
145 if (flags & MAP_HUGETLB && region.vaddr == MAP_FAILED) in TEST_F()
148 ASSERT_NE(region.vaddr, MAP_FAILED); in TEST_F()
150 region.iova = iova_allocator_alloc(self->iova_allocator, size); in TEST_F()
151 region.size = size; in TEST_F()
153 vfio_pci_dma_map(self->device, &region); in TEST_F()
154 printf("Mapped HVA %p (size 0x%lx) at IOVA 0x%lx\n", region.vaddr, size, region.iova); in TEST_F()
156 ASSERT_EQ(region.iova, to_iova(self->device, region.vaddr)); in TEST_F()
158 rc = iommu_mapping_get(device_bdf, region.iova, &mapping); in TEST_F()
170 printf("Found IOMMU mappings for IOVA 0x%lx:\n", region.iova); in TEST_F()
195 rc = __vfio_pci_dma_unmap(self->device, &region, &unmapped); in TEST_F()
197 ASSERT_EQ(unmapped, region.size); in TEST_F()
198 printf("Unmapped IOVA 0x%lx\n", region.iova); in TEST_F()
199 ASSERT_EQ(INVALID_IOVA, __to_iova(self->device, region.vaddr)); in TEST_F()
200 ASSERT_NE(0, iommu_mapping_get(device_bdf, region.iova, &mapping)); in TEST_F()
202 ASSERT_TRUE(!munmap(region.vaddr, size)); in TEST_F()
207 struct vfio_dma_region region; in FIXTURE() local
226 struct vfio_dma_region *region = &self->region; in FIXTURE_SETUP() local
239 region->vaddr = mmap(NULL, self->mmap_size, PROT_READ | PROT_WRITE, in FIXTURE_SETUP()
241 ASSERT_NE(region->vaddr, MAP_FAILED); in FIXTURE_SETUP()
249 region->iova = last_iova & ~(region_size - 1); in FIXTURE_SETUP()
250 region->size = region_size; in FIXTURE_SETUP()
256 ASSERT_EQ(munmap(self->region.vaddr, self->mmap_size), 0); in FIXTURE_TEARDOWN()
261 struct vfio_dma_region *region = &self->region; in TEST_F() local
265 vfio_pci_dma_map(self->device, region); in TEST_F()
266 ASSERT_EQ(region->iova, to_iova(self->device, region->vaddr)); in TEST_F()
268 rc = __vfio_pci_dma_unmap(self->device, region, &unmapped); in TEST_F()
270 ASSERT_EQ(unmapped, region->size); in TEST_F()
275 struct vfio_dma_region *region = &self->region; in TEST_F() local
279 vfio_pci_dma_map(self->device, region); in TEST_F()
280 ASSERT_EQ(region->iova, to_iova(self->device, region->vaddr)); in TEST_F()
284 ASSERT_EQ(unmapped, region->size); in TEST_F()
289 struct vfio_dma_region *region = &self->region; in TEST_F() local
292 region->iova = ~(iova_t)0 & ~(region->size - 1); in TEST_F()
293 region->size = self->mmap_size; in TEST_F()
295 rc = __vfio_pci_dma_map(self->device, region); in TEST_F()
298 rc = __vfio_pci_dma_unmap(self->device, region, NULL); in TEST_F()