Lines Matching refs:d_seq
94 These members are also protected by d_seq seqlock, although this offers
96 using d_seq for synchronisation (see seqcount based lookups, below).
184 dentry seqlock (d_seq) is used to take a "coherent snapshot" of what the dentry
186 the next part of the path walk. When loading the coherent snapshot under d_seq,
201 provided that d_seq is rechecked after that operation is complete.
226 path string, rcu-walk uses a d_seq protected snapshot. When looking up a
227 child of this parent snapshot, we open d_seq critical section on the child
228 before closing d_seq critical section on the parent. This gives an interlocking
246 +---------------------+ rcu-walk begins here, we note d_seq, check the
254 | name: "home" | hash lookup, then note d_seq and compare name
256 | children:"npiggin" | we now recheck the d_seq of dentry0. Then we
262 | inode: 543 | parent for d_seq verification, and grandparents
268 | name: "a.c" | We now take its d_lock, verify d_seq of this
274 re-checking its d_seq, and then incrementing its refcount is called
278 parent snapshot fails, the house comes down, because we had closed the d_seq
312 verify d_seq, increment refcount).
342 drop rcu that fail due to d_seq failure and requiring the entire path lookup