• Thomas Hellstrom's avatar
    drm/ttm: ttm object security fixes for render nodes · 05efb1ab
    Thomas Hellstrom authored
    When a client looks up a ttm object, don't look it up through the device hash
    table, but rather from the file hash table. That makes sure that the client
    has indeed put a reference on the object, or in gem terms, has opened
    the object; either using prime or using the global "name".
    
    To avoid a performance loss, make sure the file hash table entries can be
    looked up from under an RCU lock, and as a consequence, replace the rwlock
    with a spinlock, since we never need to take it in read mode only anymore.
    
    Finally add a ttm object lookup function for the device hash table, that is
    intended to be used when we put a ref object on a base object or, in  gem terms,
    when we open the object.
    Signed-off-by: default avatarThomas Hellstrom <thellstrom@vmware.com>
    Reviewed-by: default avatarBrian Paul <brianp@vmware.com>
    05efb1ab
ttm_object.c 18.8 KB