Explorar o código

acct: move mnt_pin() upwards.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Al Viro %!s(int64=11) %!d(string=hai) anos
pai
achega
215748e67d
Modificáronse 1 ficheiros con 1 adicións e 2 borrados
  1. 1 2
      kernel/acct.c

+ 1 - 2
kernel/acct.c

@@ -206,7 +206,6 @@ static void acct_kill(struct bsd_acct_struct *acct,
 		ns->bacct = new;
 		ns->bacct = new;
 		if (new) {
 		if (new) {
 			struct vfsmount *m = new->file->f_path.mnt;
 			struct vfsmount *m = new->file->f_path.mnt;
-			mnt_pin(m);
 			spin_lock(&acct_lock);
 			spin_lock(&acct_lock);
 			hlist_add_head(&new->s_list, &m->mnt_sb->s_pins);
 			hlist_add_head(&new->s_list, &m->mnt_sb->s_pins);
 			hlist_add_head(&new->m_list, &real_mount(m)->mnt_pins);
 			hlist_add_head(&new->m_list, &real_mount(m)->mnt_pins);
@@ -256,6 +255,7 @@ static int acct_on(struct filename *pathname)
 	acct->ns = ns;
 	acct->ns = ns;
 	mutex_init(&acct->lock);
 	mutex_init(&acct->lock);
 	mnt = file->f_path.mnt;
 	mnt = file->f_path.mnt;
+	mnt_pin(mnt);
 
 
 	old = acct_get(ns);
 	old = acct_get(ns);
 	mutex_lock_nested(&acct->lock, 1);	/* nobody has seen it yet */
 	mutex_lock_nested(&acct->lock, 1);	/* nobody has seen it yet */
@@ -264,7 +264,6 @@ static int acct_on(struct filename *pathname)
 	} else {
 	} else {
 		ns->bacct = acct;
 		ns->bacct = acct;
 		spin_lock(&acct_lock);
 		spin_lock(&acct_lock);
-		mnt_pin(mnt);
 		hlist_add_head(&acct->s_list, &mnt->mnt_sb->s_pins);
 		hlist_add_head(&acct->s_list, &mnt->mnt_sb->s_pins);
 		hlist_add_head(&acct->m_list, &real_mount(mnt)->mnt_pins);
 		hlist_add_head(&acct->m_list, &real_mount(mnt)->mnt_pins);
 		spin_unlock(&acct_lock);
 		spin_unlock(&acct_lock);