Lines Matching refs:idxd_cdev
160 struct idxd_cdev *idxd_cdev = dev_to_cdev(dev); in idxd_cdev_dev_release() local
162 struct idxd_wq *wq = idxd_cdev->wq; in idxd_cdev_dev_release()
165 ida_free(&cdev_ctx->minor_ida, idxd_cdev->minor); in idxd_cdev_dev_release()
166 kfree(idxd_cdev); in idxd_cdev_dev_release()
174 static inline struct idxd_cdev *inode_idxd_cdev(struct inode *inode) in inode_idxd_cdev()
178 return container_of(cdev, struct idxd_cdev, cdev); in inode_idxd_cdev()
183 struct idxd_cdev *idxd_cdev = inode_idxd_cdev(inode); in inode_wq() local
185 return idxd_cdev->wq; in inode_wq()
227 struct idxd_cdev *idxd_cdev; in idxd_cdev_open() local
283 idxd_cdev = wq->idxd_cdev; in idxd_cdev_open()
292 fdev->parent = cdev_dev(idxd_cdev); in idxd_cdev_open()
535 struct idxd_cdev *idxd_cdev; in idxd_wq_add_cdev() local
541 idxd_cdev = kzalloc(sizeof(*idxd_cdev), GFP_KERNEL); in idxd_wq_add_cdev()
542 if (!idxd_cdev) in idxd_wq_add_cdev()
545 idxd_cdev->idxd_dev.type = IDXD_DEV_CDEV; in idxd_wq_add_cdev()
546 idxd_cdev->wq = wq; in idxd_wq_add_cdev()
547 cdev = &idxd_cdev->cdev; in idxd_wq_add_cdev()
548 dev = cdev_dev(idxd_cdev); in idxd_wq_add_cdev()
552 kfree(idxd_cdev); in idxd_wq_add_cdev()
555 idxd_cdev->minor = minor; in idxd_wq_add_cdev()
567 wq->idxd_cdev = idxd_cdev; in idxd_wq_add_cdev()
579 wq->idxd_cdev = NULL; in idxd_wq_add_cdev()
585 struct idxd_cdev *idxd_cdev; in idxd_wq_del_cdev() local
587 idxd_cdev = wq->idxd_cdev; in idxd_wq_del_cdev()
588 wq->idxd_cdev = NULL; in idxd_wq_del_cdev()
589 cdev_device_del(&idxd_cdev->cdev, cdev_dev(idxd_cdev)); in idxd_wq_del_cdev()
590 put_device(cdev_dev(idxd_cdev)); in idxd_wq_del_cdev()