size_t iommufd_test_memory_limit = 65536;
 
+struct mock_bus_type {
+       struct bus_type bus;
+       struct notifier_block nb;
+};
+
+static struct mock_bus_type iommufd_mock_bus_type = {
+       .bus = {
+               .name = "iommufd_mock",
+       },
+};
+
+static atomic_t mock_dev_num;
+
 enum {
        MOCK_DIRTY_TRACK = 1,
        MOCK_IO_PAGE_SIZE = PAGE_SIZE / 2,
 
 static struct iommu_device *mock_probe_device(struct device *dev)
 {
+       if (dev->bus != &iommufd_mock_bus_type.bus)
+               return ERR_PTR(-ENODEV);
        return &mock_iommu_device;
 }
 
        return hwpt;
 }
 
-struct mock_bus_type {
-       struct bus_type bus;
-       struct notifier_block nb;
-};
-
-static struct mock_bus_type iommufd_mock_bus_type = {
-       .bus = {
-               .name = "iommufd_mock",
-       },
-};
-
-static atomic_t mock_dev_num;
-
 static void mock_dev_release(struct device *dev)
 {
        struct mock_dev *mdev = container_of(dev, struct mock_dev, dev);