Loading fs/dcache.c +3 −10 Original line number Diff line number Diff line Loading @@ -593,8 +593,6 @@ static inline struct dentry *lock_parent(struct dentry *dentry) struct dentry *parent = dentry->d_parent; if (IS_ROOT(dentry)) return NULL; if (unlikely(dentry->d_lockref.count < 0)) return NULL; if (likely(spin_trylock(&parent->d_lock))) return parent; rcu_read_lock(); Loading @@ -614,16 +612,11 @@ static inline struct dentry *lock_parent(struct dentry *dentry) spin_unlock(&parent->d_lock); goto again; } if (parent != dentry) { rcu_read_unlock(); if (parent != dentry) spin_lock_nested(&dentry->d_lock, DENTRY_D_LOCK_NESTED); if (unlikely(dentry->d_lockref.count < 0)) { spin_unlock(&parent->d_lock); parent = NULL; } } else { else parent = NULL; } rcu_read_unlock(); return parent; } Loading Loading
fs/dcache.c +3 −10 Original line number Diff line number Diff line Loading @@ -593,8 +593,6 @@ static inline struct dentry *lock_parent(struct dentry *dentry) struct dentry *parent = dentry->d_parent; if (IS_ROOT(dentry)) return NULL; if (unlikely(dentry->d_lockref.count < 0)) return NULL; if (likely(spin_trylock(&parent->d_lock))) return parent; rcu_read_lock(); Loading @@ -614,16 +612,11 @@ static inline struct dentry *lock_parent(struct dentry *dentry) spin_unlock(&parent->d_lock); goto again; } if (parent != dentry) { rcu_read_unlock(); if (parent != dentry) spin_lock_nested(&dentry->d_lock, DENTRY_D_LOCK_NESTED); if (unlikely(dentry->d_lockref.count < 0)) { spin_unlock(&parent->d_lock); parent = NULL; } } else { else parent = NULL; } rcu_read_unlock(); return parent; } Loading