aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs
diff options
context:
space:
mode:
authorAjeet Yadav <ajeet.yadav.77@gmail.com>2011-07-29 03:42:59 -0400
committerAlex Elder <aelder@sgi.com>2011-08-10 18:00:21 -0400
commit9e978d8f7db1c5de7cdc6450a8ca208db3b95f84 (patch)
tree728a04a500acc62e49c944cb46096d651daf0d41 /fs/xfs
parente44f4112a46ca817fe2758aac7bf7893a64a8c0e (diff)
"xfs: fix error handling for synchronous writes" revisited
xfs: fix for hang during synchronous buffer write error If removed storage while synchronous buffer write underway, "xfslogd" hangs. Detailed log http://oss.sgi.com/archives/xfs/2011-07/msg00740.html Related work bfc60177f8ab509bc225becbb58f7e53a0e33e81 "xfs: fix error handling for synchronous writes" Given that xfs_bwrite actually does the shutdown already after waiting for the b_iodone completion and given that we actually found that calling xfs_force_shutdown from inside xfs_buf_iodone_callbacks was a major contributor the problem it better to drop this call. Signed-off-by: Ajeet Yadav <ajeet.yadav.77@gmail.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
Diffstat (limited to 'fs/xfs')
-rw-r--r--fs/xfs/xfs_buf_item.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/fs/xfs/xfs_buf_item.c b/fs/xfs/xfs_buf_item.c
index 0402173e79e9..cac2ecfa6746 100644
--- a/fs/xfs/xfs_buf_item.c
+++ b/fs/xfs/xfs_buf_item.c
@@ -1010,7 +1010,6 @@ xfs_buf_iodone_callbacks(
1010 XFS_BUF_UNDELAYWRITE(bp); 1010 XFS_BUF_UNDELAYWRITE(bp);
1011 1011
1012 trace_xfs_buf_error_relse(bp, _RET_IP_); 1012 trace_xfs_buf_error_relse(bp, _RET_IP_);
1013 xfs_force_shutdown(mp, SHUTDOWN_META_IO_ERROR);
1014 1013
1015do_callbacks: 1014do_callbacks:
1016 xfs_buf_do_callbacks(bp); 1015 xfs_buf_do_callbacks(bp);