Searched refs:lockref (Results 1 – 6 of 6) sorted by relevance
13 struct lockref old; \15 old.lock_count = READ_ONCE(lockref->lock_count); \17 struct lockref new = old; \19 if (likely(try_cmpxchg64_relaxed(&lockref->lock_count, \43 void lockref_get(struct lockref *lockref) in lockref_get() argument51 spin_lock(&lockref->lock); in lockref_get()52 lockref->count++; in lockref_get()53 spin_unlock(&lockref->lock); in lockref_get()62 int lockref_get_not_zero(struct lockref *lockref) in lockref_get_not_zero() argument74 spin_lock(&lockref->lock); in lockref_get_not_zero()[all …]
43 obj-y += lockref.o
25 struct lockref { struct37 extern void lockref_get(struct lockref *); argument38 extern int lockref_put_return(struct lockref *);39 extern int lockref_get_not_zero(struct lockref *);40 extern int lockref_put_not_zero(struct lockref *);41 extern int lockref_put_or_lock(struct lockref *);43 extern void lockref_mark_dead(struct lockref *);44 extern int lockref_get_not_dead(struct lockref *);47 static inline bool __lockref_is_dead(const struct lockref *l) in __lockref_is_dead()
94 struct lockref d_lockref; /* per-dentry lock and refcount */
341 struct lockref gl_lockref;445 struct lockref qd_lockref;
167 This uses the lockref primitive to provide both a spinlock and a