Loading fs/dcache.c +4 −5 Original line number Diff line number Diff line Loading @@ -2442,13 +2442,14 @@ static void dentry_lock_for_move(struct dentry *dentry, struct dentry *target) } } static void dentry_unlock_parents_for_move(struct dentry *dentry, struct dentry *target) static void dentry_unlock_for_move(struct dentry *dentry, struct dentry *target) { if (target->d_parent != dentry->d_parent) spin_unlock(&dentry->d_parent->d_lock); if (target->d_parent != target) spin_unlock(&target->d_parent->d_lock); spin_unlock(&target->d_lock); spin_unlock(&dentry->d_lock); } /* Loading Loading @@ -2531,9 +2532,7 @@ static void __d_move(struct dentry *dentry, struct dentry *target, write_seqcount_end(&target->d_seq); write_seqcount_end(&dentry->d_seq); dentry_unlock_parents_for_move(dentry, target); spin_unlock(&target->d_lock); spin_unlock(&dentry->d_lock); dentry_unlock_for_move(dentry, target); } /* Loading Loading
fs/dcache.c +4 −5 Original line number Diff line number Diff line Loading @@ -2442,13 +2442,14 @@ static void dentry_lock_for_move(struct dentry *dentry, struct dentry *target) } } static void dentry_unlock_parents_for_move(struct dentry *dentry, struct dentry *target) static void dentry_unlock_for_move(struct dentry *dentry, struct dentry *target) { if (target->d_parent != dentry->d_parent) spin_unlock(&dentry->d_parent->d_lock); if (target->d_parent != target) spin_unlock(&target->d_parent->d_lock); spin_unlock(&target->d_lock); spin_unlock(&dentry->d_lock); } /* Loading Loading @@ -2531,9 +2532,7 @@ static void __d_move(struct dentry *dentry, struct dentry *target, write_seqcount_end(&target->d_seq); write_seqcount_end(&dentry->d_seq); dentry_unlock_parents_for_move(dentry, target); spin_unlock(&target->d_lock); spin_unlock(&dentry->d_lock); dentry_unlock_for_move(dentry, target); } /* Loading