Lines Matching defs:base
74 * @type: derived type this object is base class for.
82 * including the hash entry. A reference to a base object can
90 * "base" should be set to NULL by the function.
97 * This struct is intended to be used as a base struct for objects that
106 void (*refcount_release) (struct ttm_base_object **base);
114 * struct ttm_prime_object - Modified base object that is prime-aware
116 * @base: struct ttm_base_object that we derive from
120 * the value of @base::object_type to ttm_prime_type
124 * we set @base::refcount_release to our own release method.
128 struct ttm_base_object base;
140 * @base: The struct ttm_base_object to initialize.
151 struct ttm_base_object *base,
177 * caller doesn't yet have a reference to the base object.
188 * Decrements the base object refcount and clears the pointer pointed to by
199 * @base: The base object to reference.
206 * Checks that the base object is shareable and adds a ref object to it.
208 * Adding a ref object to a base object is basically like referencing the
209 * base object, but a user-space application holds the reference. When the
215 * will hold a single reference on a base object.
218 struct ttm_base_object *base,
225 * @key: Key representing the base object.
229 * on the base object identified by @key. If there are no duplicate
230 * references, the ref object will be destroyed and the base object
266 * data structures needed for ttm base and ref objects.
297 ttm_base_object_type(struct ttm_base_object *base)
299 return (base->object_type == ttm_prime_type) ?
300 container_of(base, struct ttm_prime_object, base)->real_type :
301 base->object_type;
310 kfree_rcu(__obj, __prime.base.rhead)