Lines Matching refs:lessor

69 #define drm_for_each_lessee(lessee, lessor) \  argument
70 list_for_each_entry((lessee), &(lessor)->lessees, lessee_list)
76 while (master->lessor != NULL) in drm_lease_owner()
77 master = master->lessor; in drm_lease_owner()
91 if (master->lessor) in _drm_lease_held_master()
137 if (!master->lessor) { in drm_lease_held()
168 if (!master->lessor) { in drm_lease_filter_crtcs()
207 static struct drm_master *drm_lease_create(struct drm_master *lessor, struct idr *leases) in drm_lease_create() argument
209 struct drm_device *dev = lessor->dev; in drm_lease_create()
216 drm_dbg_lease(dev, "lessor %d\n", lessor->lessee_id); in drm_lease_create()
218 lessee = drm_master_create(lessor->dev); in drm_lease_create()
230 else if (_drm_has_leased(lessor, object)) in drm_lease_create()
240 id = idr_alloc(&(drm_lease_owner(lessor)->lessee_idr), lessee, 1, 0, GFP_KERNEL); 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()
253 lessee->lessee_id, lessee, lessor->lessee_id, lessor); in drm_lease_create()
291 if (master->lessor) { in drm_lease_destroy()
294 drm_master_put(&master->lessor); in drm_lease_destroy()
327 …while (master != top && master == list_last_entry(&master->lessor->lessees, struct drm_master, les… in _drm_lease_revoke()
328 master = master->lessor; in _drm_lease_revoke()
483 struct drm_master *lessor; in drm_mode_create_lease_ioctl() local
500 lessor = drm_file_get_master(lessor_priv); in drm_mode_create_lease_ioctl()
502 if (lessor->lessor) { in drm_mode_create_lease_ioctl()
542 lessee = drm_lease_create(lessor, &leases); in drm_mode_create_lease_ioctl()
573 drm_master_put(&lessor); in drm_mode_create_lease_ioctl()
584 drm_master_put(&lessor); in drm_mode_create_lease_ioctl()
595 struct drm_master *lessor, *lessee; in drm_mode_list_lessees_ioctl() local
606 lessor = drm_file_get_master(lessor_priv); in drm_mode_list_lessees_ioctl()
607 drm_dbg_lease(dev, "List lessees for %d\n", lessor->lessee_id); in drm_mode_list_lessees_ioctl()
612 drm_for_each_lessee(lessee, lessor) { in drm_mode_list_lessees_ioctl()
631 drm_master_put(&lessor); in drm_mode_list_lessees_ioctl()
662 if (lessee->lessor == NULL) in drm_mode_get_lease_ioctl()
699 struct drm_master *lessor; in drm_mode_revoke_lease_ioctl() local
709 lessor = drm_file_get_master(lessor_priv); in drm_mode_revoke_lease_ioctl()
712 lessee = _drm_find_lessee(lessor, arg->lessee_id); in drm_mode_revoke_lease_ioctl()
721 if (lessee->lessor != lessor) { in drm_mode_revoke_lease_ioctl()
730 drm_master_put(&lessor); in drm_mode_revoke_lease_ioctl()