Lines Matching refs:lessee

69 #define drm_for_each_lessee(lessee, lessor) \  argument
70 list_for_each_entry((lessee), &(lessor)->lessees, lessee_list)
99 struct drm_master *lessee; in _drm_has_leased() local
102 drm_for_each_lessee(lessee, master) in _drm_has_leased()
103 if (_drm_lease_held_master(lessee, id)) in _drm_has_leased()
211 struct drm_master *lessee; in drm_lease_create() local
218 lessee = drm_master_create(lessor->dev); in drm_lease_create()
219 if (!lessee) { in drm_lease_create()
240 id = idr_alloc(&(drm_lease_owner(lessor)->lessee_idr), lessee, 1, 0, GFP_KERNEL); in drm_lease_create()
246 lessee->lessee_id = id; in drm_lease_create()
247 lessee->lessor = drm_master_get(lessor); in drm_lease_create()
248 list_add_tail(&lessee->lessee_list, &lessor->lessees); in drm_lease_create()
251 lessee->leases = *leases; in drm_lease_create()
253 lessee->lessee_id, lessee, lessor->lessee_id, lessor); in drm_lease_create()
256 return lessee; in drm_lease_create()
261 drm_master_put(&lessee); in drm_lease_create()
484 struct drm_master *lessee = NULL; in drm_mode_create_lease_ioctl() local
542 lessee = drm_lease_create(lessor, &leases); in drm_mode_create_lease_ioctl()
544 if (IS_ERR(lessee)) { in drm_mode_create_lease_ioctl()
545 ret = PTR_ERR(lessee); in drm_mode_create_lease_ioctl()
561 lessee_priv->master = lessee; in drm_mode_create_lease_ioctl()
566 drm_dbg_lease(dev, "Returning fd %d id %d\n", fd, lessee->lessee_id); in drm_mode_create_lease_ioctl()
568 cl->lessee_id = lessee->lessee_id; in drm_mode_create_lease_ioctl()
578 drm_master_put(&lessee); in drm_mode_create_lease_ioctl()
595 struct drm_master *lessor, *lessee; in drm_mode_list_lessees_ioctl() local
612 drm_for_each_lessee(lessee, lessor) { in drm_mode_list_lessees_ioctl()
614 if (!idr_is_empty(&lessee->leases)) { in drm_mode_list_lessees_ioctl()
617 lessee->lessee_id); in drm_mode_list_lessees_ioctl()
618 ret = put_user(lessee->lessee_id, lessee_ids + count); in drm_mode_list_lessees_ioctl()
643 struct drm_master *lessee; in drm_mode_get_lease_ioctl() local
657 lessee = drm_file_get_master(lessee_priv); in drm_mode_get_lease_ioctl()
658 drm_dbg_lease(dev, "get lease for %d\n", lessee->lessee_id); in drm_mode_get_lease_ioctl()
662 if (lessee->lessor == NULL) in drm_mode_get_lease_ioctl()
664 object_idr = &lessee->dev->mode_config.object_idr; in drm_mode_get_lease_ioctl()
667 object_idr = &lessee->leases; in drm_mode_get_lease_ioctl()
685 drm_master_put(&lessee); in drm_mode_get_lease_ioctl()
700 struct drm_master *lessee; in drm_mode_revoke_lease_ioctl() local
712 lessee = _drm_find_lessee(lessor, arg->lessee_id); in drm_mode_revoke_lease_ioctl()
715 if (!lessee) { in drm_mode_revoke_lease_ioctl()
721 if (lessee->lessor != lessor) { in drm_mode_revoke_lease_ioctl()
726 _drm_lease_revoke(lessee); in drm_mode_revoke_lease_ioctl()