diff options
| -rw-r--r-- | fs/gfs2/log.c | 5 | 
1 files changed, 5 insertions, 0 deletions
| diff --git a/fs/gfs2/log.c b/fs/gfs2/log.c index 3a75843ae580..cf0b80c78c82 100644 --- a/fs/gfs2/log.c +++ b/fs/gfs2/log.c @@ -1131,6 +1131,10 @@ int gfs2_logd(void *data)  	while (!kthread_should_stop()) { +		if (gfs2_withdrawn(sdp)) { +			msleep_interruptible(HZ); +			continue; +		}  		/* Check for errors writing to the journal */  		if (sdp->sd_log_error) {  			gfs2_lm(sdp, @@ -1139,6 +1143,7 @@ int gfs2_logd(void *data)  				"prevent further damage.\n",  				sdp->sd_fsname, sdp->sd_log_error);  			gfs2_withdraw(sdp); +			continue;  		}  		did_flush = false; | 
