diff options
Diffstat (limited to 'fs/namei.c')
-rw-r--r-- | fs/namei.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/fs/namei.c b/fs/namei.c index 4379ef989709..8c1f48ae68e7 100644 --- a/fs/namei.c +++ b/fs/namei.c | |||
@@ -675,23 +675,23 @@ loop: | |||
675 | return err; | 675 | return err; |
676 | } | 676 | } |
677 | 677 | ||
678 | int follow_up(struct vfsmount **mnt, struct dentry **dentry) | 678 | int follow_up(struct path *path) |
679 | { | 679 | { |
680 | struct vfsmount *parent; | 680 | struct vfsmount *parent; |
681 | struct dentry *mountpoint; | 681 | struct dentry *mountpoint; |
682 | spin_lock(&vfsmount_lock); | 682 | spin_lock(&vfsmount_lock); |
683 | parent=(*mnt)->mnt_parent; | 683 | parent = path->mnt->mnt_parent; |
684 | if (parent == *mnt) { | 684 | if (parent == path->mnt) { |
685 | spin_unlock(&vfsmount_lock); | 685 | spin_unlock(&vfsmount_lock); |
686 | return 0; | 686 | return 0; |
687 | } | 687 | } |
688 | mntget(parent); | 688 | mntget(parent); |
689 | mountpoint=dget((*mnt)->mnt_mountpoint); | 689 | mountpoint = dget(path->mnt->mnt_mountpoint); |
690 | spin_unlock(&vfsmount_lock); | 690 | spin_unlock(&vfsmount_lock); |
691 | dput(*dentry); | 691 | dput(path->dentry); |
692 | *dentry = mountpoint; | 692 | path->dentry = mountpoint; |
693 | mntput(*mnt); | 693 | mntput(path->mnt); |
694 | *mnt = parent; | 694 | path->mnt = parent; |
695 | return 1; | 695 | return 1; |
696 | } | 696 | } |
697 | 697 | ||