diff options
author | Ming Lei <tom.leiming@gmail.com> | 2016-11-11 20:05:30 +0800 |
---|---|---|
committer | Jens Axboe <axboe@fb.com> | 2016-11-22 08:57:55 -0700 |
commit | 06efffda51d9785ea765b42ad25bd65405facf12 (patch) | |
tree | cdcdc97326e0b259efcb0f1b9bf559a523f985f4 /drivers/block/drbd | |
parent | 3a83f4677539bce8eaa2bca9ee9c20e172d7ab04 (diff) | |
download | linux-06efffda51d9785ea765b42ad25bd65405facf12.tar.gz linux-06efffda51d9785ea765b42ad25bd65405facf12.tar.bz2 linux-06efffda51d9785ea765b42ad25bd65405facf12.zip |
block: drbd: remove impossible failure handling
For a non-cloned bio, bio_add_page() only returns failure when
the io vec table is full, but in that case, bio->bi_vcnt can't
be zero at all.
So remove the impossible failure handling.
Reviewed-by: Christoph Hellwig <hch@lst.de>
Acked-by: Lars Ellenberg <lars.ellenberg@linbit.com>
Signed-off-by: Ming Lei <tom.leiming@gmail.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'drivers/block/drbd')
-rw-r--r-- | drivers/block/drbd/drbd_receiver.c | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/drivers/block/drbd/drbd_receiver.c b/drivers/block/drbd/drbd_receiver.c index a89538cb3eaa..c7728dd77230 100644 --- a/drivers/block/drbd/drbd_receiver.c +++ b/drivers/block/drbd/drbd_receiver.c @@ -1648,20 +1648,8 @@ next_bio: page_chain_for_each(page) { unsigned len = min_t(unsigned, data_size, PAGE_SIZE); - if (!bio_add_page(bio, page, len, 0)) { - /* A single page must always be possible! - * But in case it fails anyways, - * we deal with it, and complain (below). */ - if (bio->bi_vcnt == 0) { - drbd_err(device, - "bio_add_page failed for len=%u, " - "bi_vcnt=0 (bi_sector=%llu)\n", - len, (uint64_t)bio->bi_iter.bi_sector); - err = -ENOSPC; - goto fail; - } + if (!bio_add_page(bio, page, len, 0)) goto next_bio; - } data_size -= len; sector += len >> 9; --nr_pages; |