[PATCH] bio: Make the test correct for idx in __bio_clone_fast

From: Minfei Huang
Date: Fri Dec 18 2015 - 12:10:08 EST


It is more lucky that kernel crash does not happen, since we test the
bi_pool in function __bio_clone_fast.

The idx will be still equal to BIO_POOL_NONE, if there is no bvec to be
allocated.

Fix the bug_on condition to make the test correct.

Signed-off-by: Minfei Huang <mnfhuang@xxxxxxxxx>
---
block/bio.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/block/bio.c b/block/bio.c
index 4f184d9..041ece0 100644
--- a/block/bio.c
+++ b/block/bio.c
@@ -573,8 +573,7 @@ EXPORT_SYMBOL(bio_phys_segments);
*/
void __bio_clone_fast(struct bio *bio, struct bio *bio_src)
{
- BUG_ON(bio->bi_pool && BIO_POOL_IDX(bio) != BIO_POOL_NONE);
-
+ BUG_ON(BIO_POOL_IDX(bio) != BIO_POOL_NONE);
/*
* most users will be overriding ->bi_bdev with a new target,
* so we don't set nor calculate new physical/hw segment counts here
--
2.6.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/