Browse Source

[XFS] set b_error from bio error in xfs_buf_bio_end_io

Preserve any error returned by the bio layer.

Reviewed-by: Eric Sandeen <sandeen@sandeen.net>
Reviewed-by: Tim Shimmin <tes@sgi.com>
Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Lachlan McIlroy 16 years ago
parent
commit
cfbe52672f
1 changed files with 1 additions and 2 deletions
  1. 1 2
      fs/xfs/linux-2.6/xfs_buf.c

+ 1 - 2
fs/xfs/linux-2.6/xfs_buf.c

@@ -1126,8 +1126,7 @@ xfs_buf_bio_end_io(
 	unsigned int		blocksize = bp->b_target->bt_bsize;
 	struct bio_vec		*bvec = bio->bi_io_vec + bio->bi_vcnt - 1;
 
-	if (!test_bit(BIO_UPTODATE, &bio->bi_flags))
-		bp->b_error = EIO;
+	xfs_buf_ioerror(bp, -error);
 
 	do {
 		struct page	*page = bvec->bv_page;