aboutsummaryrefslogtreecommitdiffstats
path: root/fs/gfs2/meta_io.c
diff options
context:
space:
mode:
authorSteven Whitehouse <swhiteho@redhat.com>2006-05-18 14:10:52 -0400
committerSteven Whitehouse <swhiteho@redhat.com>2006-05-18 14:10:52 -0400
commit1b50259bc33f2adfcb4c5fba4b740bf80789df22 (patch)
treef8d20f032c9cb85883cdee846423667543947dde /fs/gfs2/meta_io.c
parent02f211f4d0e67794020ba1babbdaf7c45d56db45 (diff)
[GFS2] Drop log lock on I/O error & tidy up
This patch drops the log spinlock when an I/O error occurs to avoid any possible problems in case of blocking or recursion in the I/O error routine. It also has a few cosmetic changes to tidy up various other files. Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs/gfs2/meta_io.c')
-rw-r--r--fs/gfs2/meta_io.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/gfs2/meta_io.c b/fs/gfs2/meta_io.c
index da49973a90d1..fe46d563d3c8 100644
--- a/fs/gfs2/meta_io.c
+++ b/fs/gfs2/meta_io.c
@@ -226,8 +226,11 @@ void gfs2_ail1_start_one(struct gfs2_sbd *sdp, struct gfs2_ail *ai)
226 gfs2_assert(sdp, bd->bd_ail == ai); 226 gfs2_assert(sdp, bd->bd_ail == ai);
227 227
228 if (!buffer_busy(bh)) { 228 if (!buffer_busy(bh)) {
229 if (!buffer_uptodate(bh)) 229 if (!buffer_uptodate(bh)) {
230 gfs2_log_unlock(sdp);
230 gfs2_io_error_bh(sdp, bh); 231 gfs2_io_error_bh(sdp, bh);
232 gfs2_log_lock(sdp);
233 }
231 list_move(&bd->bd_ail_st_list, 234 list_move(&bd->bd_ail_st_list,
232 &ai->ai_ail2_list); 235 &ai->ai_ail2_list);
233 continue; 236 continue;