Name

drm_vma_offset_lock_lookup — Lock lookup for extended private use

Synopsis

void drm_vma_offset_lock_lookup (struct drm_vma_offset_manager * mgr);
 

Arguments

mgr

Manager object

Description

Lock VMA manager for extended lookups. Only *_locked VMA function calls are allowed while holding this lock. All other contexts are blocked from VMA until the lock is released via drm_vma_offset_unlock_lookup.

Use this if you need to take a reference to the objects returned by drm_vma_offset_lookup_locked before releasing this lock again.

This lock must not be used for anything else than extended lookups. You must not call any other VMA helpers while holding this lock.

Note

You're in atomic-context while holding this lock!

Example

     drm_vma_offset_lock_lookup(mgr);
     node = drm_vma_offset_lookup_locked(mgr);
     if (node)
         kref_get_unless_zero(container_of(node, sth, entr));
     drm_vma_offset_unlock_lookup(mgr);