diff options
author | Hu hui <b29976@freescale.com> | 2010-10-20 09:49:47 +0800 |
---|---|---|
committer | Scott Sweeny <scott.sweeny@timesys.com> | 2011-01-19 11:50:09 -0500 |
commit | 318848c1463e34c902fa765e34c634cb71945d7b (patch) | |
tree | 75227ebe735825fca5eb22582435cb2fee7fac8b /drivers | |
parent | e14abb28dae9a647e623513311a9d70c89c23387 (diff) |
ENGR00132493 RAMDISK: doing write barrier will return -EIO
when doing write barrier, the data of the bio is NULL, it's OK for ramdisk
doing nothing, So the result of the bio must be success.
Signed-off-by: Hu Hui <b29976@freescale.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/block/brd.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/block/brd.c b/drivers/block/brd.c index f1bf79d9bc0a..bcb50e84cf4b 100644 --- a/drivers/block/brd.c +++ b/drivers/block/brd.c @@ -333,13 +333,14 @@ static int brd_make_request(struct request_queue *q, struct bio *bio) struct bio_vec *bvec; sector_t sector; int i; - int err = -EIO; + int err = 0; sector = bio->bi_sector; if (sector + (bio->bi_size >> SECTOR_SHIFT) > - get_capacity(bdev->bd_disk)) + get_capacity(bdev->bd_disk)) { + err = -EIO; goto out; - + } if (unlikely(bio_rw_flagged(bio, BIO_RW_DISCARD))) { err = 0; discard_from_brd(brd, sector, bio->bi_size); |