diff options
Diffstat (limited to 'fs/gfs2/super.c')
-rw-r--r-- | fs/gfs2/super.c | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/fs/gfs2/super.c b/fs/gfs2/super.c index 119a5b20eb00..be3f69c15edc 100644 --- a/fs/gfs2/super.c +++ b/fs/gfs2/super.c @@ -549,17 +549,7 @@ void gfs2_make_fs_ro(struct gfs2_sbd *sdp) if (!test_bit(SDF_KILL, &sdp->sd_flags)) gfs2_flush_delete_work(sdp); - if (!log_write_allowed && current == sdp->sd_quotad_process) - fs_warn(sdp, "The quotad daemon is withdrawing.\n"); - else if (sdp->sd_quotad_process) - kthread_stop(sdp->sd_quotad_process); - sdp->sd_quotad_process = NULL; - - if (!log_write_allowed && current == sdp->sd_logd_process) - fs_warn(sdp, "The logd daemon is withdrawing.\n"); - else if (sdp->sd_logd_process) - kthread_stop(sdp->sd_logd_process); - sdp->sd_logd_process = NULL; + gfs2_destroy_threads(sdp); if (log_write_allowed) { gfs2_quota_sync(sdp->sd_vfs, 0); @@ -615,8 +605,10 @@ restart: if (!sb_rdonly(sb)) { gfs2_make_fs_ro(sdp); } - if (gfs2_withdrawn(sdp)) + if (gfs2_withdrawn(sdp)) { + gfs2_destroy_threads(sdp); gfs2_quota_cleanup(sdp); + } WARN_ON(gfs2_withdrawing(sdp)); /* At this point, we're through modifying the disk */ |