Lines Matching +full:key +full:- +full:release
3 * Copyright (c) 2006-2022 VMware, Inc., Palo Alto, CA., USA
20 * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
28 * Authors: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
32 * Base- and reference object implementation for the various
34 * and release on file close.
40 #include <linux/dma-buf.h>
51 * Device-specific types should use the
73 * @hash: hash entry for the per-device object hash.
89 * already been taken out of the per-device hash. The parameter
94 * This function may, for example, release a lock held by a user-space
98 * are visible to user-space. It provides a global name, race-safe
114 * struct ttm_prime_object - Modified base object that is prime-aware
121 * @dma_buf: Non ref-coutned pointer to a struct dma_buf created from this
123 * @refcount_release: The underlying object's release method. Needed since
124 * we set @base::refcount_release to our own release method.
161 * @key: Hash key
163 * Looks up a struct ttm_base_object with the key @key.
167 *tfile, uint64_t key);
173 * @key: Hash key
175 * Looks up a struct ttm_base_object with the key @key.
181 ttm_base_object_lookup_for_ref(struct ttm_object_device *tdev, uint64_t key);
203 * @require_existed: Fail with -EPERM if an identical ref object didn't
209 * base object, but a user-space application holds the reference. When the
213 * When user-space takes a lock, it can add a ref object to that lock to
225 * @key: Key representing the base object.
229 * on the base object identified by @key. If there are no duplicate
234 unsigned long key);
237 * ttm_object_file_init - initialize a struct ttm_object file
248 * ttm_object_file_release - release data held by a ttm_object_file
250 * @p_tfile: Pointer to pointer to the ttm_object_file object to release.
254 * Typically called from file_ops::release. The caller must
261 * ttm_object device init - initialize a struct ttm_object_device
273 * ttm_object_device_release - release data held by a ttm_object_device
275 * @p_tdev: Pointer to pointer to the ttm_object_device object to release.
299 return (base->object_type == ttm_prime_type) ? in ttm_base_object_type()
300 container_of(base, struct ttm_prime_object, base)->real_type : in ttm_base_object_type()
301 base->object_type; in ttm_base_object_type()