Lines Matching defs:df
493 struct vfio_device_file *df;
495 df = kzalloc(sizeof(*df), GFP_KERNEL_ACCOUNT);
496 if (!df)
499 df->device = device;
500 spin_lock_init(&df->kvm_ref_lock);
502 return df;
505 static int vfio_df_device_first_open(struct vfio_device_file *df)
507 struct vfio_device *device = df->device;
508 struct iommufd_ctx *iommufd = df->iommufd;
517 ret = vfio_df_iommufd_bind(df);
532 vfio_df_iommufd_unbind(df);
540 static void vfio_df_device_last_close(struct vfio_device_file *df)
542 struct vfio_device *device = df->device;
543 struct iommufd_ctx *iommufd = df->iommufd;
550 vfio_df_iommufd_unbind(df);
556 int vfio_df_open(struct vfio_device_file *df)
558 struct vfio_device *device = df->device;
567 if (device->open_count != 0 && !df->group)
572 ret = vfio_df_device_first_open(df);
580 void vfio_df_close(struct vfio_device_file *df)
582 struct vfio_device *device = df->device;
589 vfio_df_device_last_close(df);
631 struct vfio_device_file *df = filep->private_data;
632 struct vfio_device *device = df->device;
634 if (df->group)
635 vfio_df_group_close(df);
637 vfio_df_unbind_iommufd(df);
641 kfree(df);
1264 struct vfio_device_file *df = filep->private_data;
1265 struct vfio_device *device = df->device;
1270 return vfio_df_ioctl_bind_iommufd(df, uptr);
1273 if (!smp_load_acquire(&df->access_granted))
1281 if (IS_ENABLED(CONFIG_VFIO_DEVICE_CDEV) && !df->group) {
1284 ret = vfio_df_ioctl_attach_pt(df, uptr);
1288 ret = vfio_df_ioctl_detach_pt(df, uptr);
1313 struct vfio_device_file *df = filep->private_data;
1314 struct vfio_device *device = df->device;
1317 if (!smp_load_acquire(&df->access_granted))
1330 struct vfio_device_file *df = filep->private_data;
1331 struct vfio_device *device = df->device;
1334 if (!smp_load_acquire(&df->access_granted))
1345 struct vfio_device_file *df = filep->private_data;
1346 struct vfio_device *device = df->device;
1349 if (!smp_load_acquire(&df->access_granted))
1371 struct vfio_device_file *df = file->private_data;
1375 return df->device;
1418 struct vfio_device_file *df = file->private_data;
1425 spin_lock(&df->kvm_ref_lock);
1426 df->kvm = kvm;
1427 spin_unlock(&df->kvm_ref_lock);