diff options
Diffstat (limited to 'fs/gfs2/recovery.c')
-rw-r--r-- | fs/gfs2/recovery.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/gfs2/recovery.c b/fs/gfs2/recovery.c index 80701d1566a1..963b2d75200c 100644 --- a/fs/gfs2/recovery.c +++ b/fs/gfs2/recovery.c | |||
@@ -583,6 +583,7 @@ fail_gunlock_j: | |||
583 | 583 | ||
584 | fs_info(sdp, "jid=%u: %s\n", jd->jd_jid, (error) ? "Failed" : "Done"); | 584 | fs_info(sdp, "jid=%u: %s\n", jd->jd_jid, (error) ? "Failed" : "Done"); |
585 | fail: | 585 | fail: |
586 | jd->jd_recover_error = error; | ||
586 | gfs2_recovery_done(sdp, jd->jd_jid, LM_RD_GAVEUP); | 587 | gfs2_recovery_done(sdp, jd->jd_jid, LM_RD_GAVEUP); |
587 | done: | 588 | done: |
588 | clear_bit(JDF_RECOVERY, &jd->jd_flags); | 589 | clear_bit(JDF_RECOVERY, &jd->jd_flags); |
@@ -611,6 +612,6 @@ int gfs2_recover_journal(struct gfs2_jdesc *jd, bool wait) | |||
611 | wait_on_bit(&jd->jd_flags, JDF_RECOVERY, gfs2_recovery_wait, | 612 | wait_on_bit(&jd->jd_flags, JDF_RECOVERY, gfs2_recovery_wait, |
612 | TASK_UNINTERRUPTIBLE); | 613 | TASK_UNINTERRUPTIBLE); |
613 | 614 | ||
614 | return 0; | 615 | return wait ? jd->jd_recover_error : 0; |
615 | } | 616 | } |
616 | 617 | ||