idxd_cdev
struct idxd_cdev *idxd_cdev = dev_to_cdev(dev);
kfree(idxd_cdev);
static inline struct idxd_cdev *inode_idxd_cdev(struct inode *inode)
return container_of(cdev, struct idxd_cdev, cdev);
struct idxd_cdev *idxd_cdev = inode_idxd_cdev(inode);
return idxd_cdev->wq;
struct idxd_cdev *idxd_cdev;
idxd_cdev = wq->idxd_cdev;
fdev->parent = cdev_dev(idxd_cdev);
struct idxd_cdev *idxd_cdev;
idxd_cdev = kzalloc_obj(*idxd_cdev);
if (!idxd_cdev)
idxd_cdev->idxd_dev.type = IDXD_DEV_CDEV;
idxd_cdev->wq = wq;
cdev = &idxd_cdev->cdev;
dev = cdev_dev(idxd_cdev);
kfree(idxd_cdev);
idxd_cdev->minor = minor;
wq->idxd_cdev = idxd_cdev;
wq->idxd_cdev = NULL;
struct idxd_cdev *idxd_cdev;
idxd_cdev = wq->idxd_cdev;
wq->idxd_cdev = NULL;
cdev_device_del(&idxd_cdev->cdev, cdev_dev(idxd_cdev));
ida_free(&cdev_ctx->minor_ida, idxd_cdev->minor);
put_device(cdev_dev(idxd_cdev));
struct idxd_cdev *idxd_cdev;
static inline struct idxd_cdev *dev_to_cdev(struct device *dev)
return container_of(idxd_dev, struct idxd_cdev, idxd_dev);
if (wq->idxd_cdev)
minor = wq->idxd_cdev->minor;