Lines Matching full:managed
21 * DOC: managed resources
23 * Inspired by struct &device managed resources, but tied to the lifetime of
33 * Note that release actions and managed memory can also be added and removed
35 * safe. But it is recommended to use managed resources only for resources that
69 list_for_each_entry_safe(dr, tmp, &dev->managed.resources, node.entry) { in drm_managed_release()
121 spin_lock_irqsave(&dev->managed.lock, flags); in add_dr()
122 list_add(&dr->node.entry, &dev->managed.resources); in add_dr()
123 spin_unlock_irqrestore(&dev->managed.lock, flags); in add_dr()
131 WARN_ON(dev->managed.final_kfree); in drmm_add_final_kfree()
134 dev->managed.final_kfree = container; in drmm_add_final_kfree()
180 * drmm_release_action - release a managed action from a &drm_device
197 spin_lock_irqsave(&dev->managed.lock, flags); in drmm_release_action()
198 list_for_each_entry_reverse(dr, &dev->managed.resources, node.entry) { in drmm_release_action()
207 spin_unlock_irqrestore(&dev->managed.lock, flags); in drmm_release_action()
219 * drmm_kmalloc - &drm_device managed kmalloc()
224 * This is a &drm_device managed version of kmalloc(). The allocated memory is
247 * drmm_kstrdup - &drm_device managed kstrdup()
252 * This is a &drm_device managed version of kstrdup(). The allocated memory is
273 * drmm_kfree - &drm_device managed kfree()
277 * This is a &drm_device managed version of kfree() which can be used to
289 spin_lock_irqsave(&dev->managed.lock, flags); in drmm_kfree()
290 list_for_each_entry(dr, &dev->managed.resources, node.entry) { in drmm_kfree()
297 spin_unlock_irqrestore(&dev->managed.lock, flags); in drmm_kfree()