aboutsummaryrefslogtreecommitdiff
path: root/src/userspace_io.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/userspace_io.c')
-rw-r--r--src/userspace_io.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/userspace_io.c b/src/userspace_io.c
index b7afb7e..4677409 100644
--- a/src/userspace_io.c
+++ b/src/userspace_io.c
@@ -132,22 +132,22 @@ int main(int argc, char *argv[])
device = vfio_init_dev(group, container, &group_status, &iommu_info,
&device_info, group_uuid);
+ mmio = uio_map_mmio(exec_ops, device);
+ if (!mmio) {
+ printf("Cannot map MMIO\n");
+ goto out;
+ }
/* XXX FIXME check pointers and munmap properly */
- rxring = vfio_mmap_region(device, VFIO_PCI_NUM_REGIONS + 1);
+ rxring = vfio_mmap_region(device, VFIO_PCI_NUM_REGIONS + 2);
if (!rxring) {
printf("Cannot map RxRing\n");
goto out;
}
- txring = vfio_mmap_region(device, VFIO_PCI_NUM_REGIONS + 2);
+ txring = vfio_mmap_region(device, VFIO_PCI_NUM_REGIONS + 3);
if (!txring) {
printf("Cannot map TxRing\n");
goto out;
}
- mmio = uio_map_mmio(exec_ops, device);
- if (!mmio) {
- printf("Cannot map MMIO\n");
- goto out;
- }
/* FIXME decide on allocated areas, instead of getting 2MB per direction */
ret = iomem_alloc(device, 2 * 1024 * 1024, &iocur, &rx_data);