Whamcloud - gitweb
LU-10992 llite: decrease sa_running if fail to start statahead 26/32526/3
authorFan Yong <fan.yong@intel.com>
Fri, 4 May 2018 02:18:26 +0000 (10:18 +0800)
committerJohn L. Hammond <jhammond@whamcloud.com>
Fri, 3 Aug 2018 20:01:14 +0000 (20:01 +0000)
Otherwise the counter of ll_sb_info::ll_sa_running will leak as
to the umount process will be blocked for ever.

Lustre-change: https://review.whamcloud.com/32287
Lustre-commit:◁6b8638bf792086d9e4b249e95091095bba4ada02

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I6b3a0dfb39f120a0c58184a22211b52376b41bd9
Reviewed-by: Lai Siyao <lai.siyao@intel.com>
Reviewed-by: Bobi Jam <bobijam@hotmail.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Signed-off-by: Minh Diep <minh.diep@intel.com>
Reviewed-on: https://review.whamcloud.com/32526
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: John L. Hammond <jhammond@whamcloud.com>
lustre/llite/statahead.c

index 69f701e..5d961c2 100644 (file)
@@ -1590,6 +1590,7 @@ static int start_statahead_thread(struct inode *dir, struct dentry *dentry)
                spin_lock(&lli->lli_sa_lock);
                lli->lli_sai = NULL;
                spin_unlock(&lli->lli_sa_lock);
+               atomic_dec(&ll_i2sbi(parent->d_inode)->ll_sa_running);
                rc = PTR_ERR(task);
                CERROR("can't start ll_sa thread, rc: %d\n", rc);
                GOTO(out, rc);