Lines Matching full:object

32  * Base- and reference object implementation for the various
51 * Describes what type of reference a ref object holds.
53 * TTM_REF_USAGE is a simple refcount on a base object.
56 * buffer object.
59 * buffer object.
73 * One entry per ttm object type.
97 * @hash: hash entry for the per-device object hash.
98 * @type: derived type this object is base class for.
99 * @shareable: Other ttm_object_files can access this object.
102 * NULL if the object was not created by a user request.
103 * (kernel object).
105 * @refcount: Number of references to this object, not
106 * including the hash entry. A reference to a base object can
107 * only be held by a ref object.
110 * no more references to this object. This function should
111 * destroy the object (or make sure destruction eventually happens),
112 * and when it is called, the object has
116 * @ref_obj_release: A function to be called when a reference object
140 * struct ttm_prime_object - Modified base object that is prime-aware
144 * @size: Size of the dma_buf associated with this object
145 * @real_type: Type of the underlying object. Needed since we're setting
148 * object.
149 * @refcount_release: The underlying object's release method. Needed since
167 * @shareable: This object is shareable with other applcations.
169 * @type: The object type.
207 * caller doesn't yet have a reference to the base object.
218 * Decrements the base object refcount and clears the pointer pointed to by
229 * @base: The base object to reference.
231 * @existed: Upon completion, indicates that an identical reference object
232 * already existed, and the refcount was upped on that object instead.
233 * @require_existed: Fail with -EPERM if an identical ref object didn't
236 * Checks that the base object is shareable and adds a ref object to it.
238 * Adding a ref object to a base object is basically like referencing the
239 * base object, but a user-space application holds the reference. When the
241 * deleted. A reference object can have different types depending on what
242 * it's intended for. It can be refcounting to prevent object destruction,
243 * When user-space takes a lock, it can add a ref object to that lock to
244 * make sure the lock is released if the application dies. A ref object
245 * will hold a single reference on a base object.
258 * @key: Key representing the base object.
259 * @ref_type: Ref type of the ref object to be dereferenced.
261 * Unreference a ref object with type @ref_type
262 * on the base object identified by @key. If there are no duplicate
263 * references, the ref object will be destroyed and the base object
286 * @p_tfile: Pointer to pointer to the ttm_object_file object to release.
315 * @p_tdev: Pointer to pointer to the ttm_object_device object to release.
356 * Extra memory required by the base object's idr storage, which is allocated
357 * separately from the base object itself. We estimate an on-average 128 bytes
366 * ttm_base_object_noref_release - release a base object pointer looked up
369 * Releases a base object pointer looked up with ttm_base_object_noref_lookup().