Whamcloud - gitweb
LU-11699 lfsck: Umount while running LFSCK 15/33715/2
authorAndriy Skulysh <c17819@cray.com>
Tue, 2 Oct 2018 09:33:29 +0000 (12:33 +0300)
committerOleg Drokin <green@whamcloud.com>
Fri, 4 Jan 2019 04:48:11 +0000 (04:48 +0000)
lod_device_free() ASSERTION( atomic_read(&lu->ld_ref) == 0)failed

Wake up master thread after releasing all refernces.

Change-Id: I2933f7c58c12f4e3cd2510b01babbf02814c8768
Cray-bug-id: LUS-6510
Signed-off-by: Andriy Skulysh <c17819@cray.com>
Reviewed-by: Alexander Boyko <c17825@cray.com>
Reviewed-by: Andrew Perepechko <c17827@cray.com>
Reviewed-on: https://review.whamcloud.com/33715
Tested-by: Jenkins
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Alexandr Boyko <c17825@cray.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/lfsck/lfsck_engine.c

index 20866fc..626c2bb 100644 (file)
@@ -1837,7 +1837,6 @@ fini:
        spin_lock(&lad->lad_lock);
        lad->lad_assistant_status = (rc1 != 0 ? rc1 : rc);
        thread_set_flags(athread, SVC_STOPPED);
        spin_lock(&lad->lad_lock);
        lad->lad_assistant_status = (rc1 != 0 ? rc1 : rc);
        thread_set_flags(athread, SVC_STOPPED);
-       wake_up_all(&mthread->t_ctl_waitq);
        lad->lad_task = NULL;
        spin_unlock(&lad->lad_lock);
 
        lad->lad_task = NULL;
        spin_unlock(&lad->lad_lock);
 
@@ -1846,6 +1845,7 @@ fini:
               lad->lad_assistant_status);
 
        lfsck_thread_args_fini(lta);
               lad->lad_assistant_status);
 
        lfsck_thread_args_fini(lta);
+       wake_up_all(&mthread->t_ctl_waitq);
 
        return rc;
 }
 
        return rc;
 }