Re: [PATCH BUGFIX V2] block: add missing group association in bio-cloning functions

From: Paolo
Date: Tue May 10 2016 - 17:45:06 EST


Il 10/05/2016 23:34, Jeff Moyer ha scritto:
Paolo Valente <paolo.valente@xxxxxxxxxx> writes:

diff --git a/block/bio.c b/block/bio.c
index 807d25e..e9b136a 100644
--- a/block/bio.c
+++ b/block/bio.c
@@ -622,6 +622,8 @@ struct bio *bio_clone_fast(struct bio *bio, gfp_t gfp_mask, struct bio_set *bs)
}
}

+ bio_clone_blkcg_association(b, bio);
+
return b;
}
EXPORT_SYMBOL(bio_clone_fast);
@@ -695,6 +697,8 @@ integrity_clone:
}
}

+ bio_clone_blkcg_association(bio, bio_src);
+
return bio;
}
EXPORT_SYMBOL(bio_clone_bioset);
@@ -1811,6 +1815,8 @@ struct bio *bio_split(struct bio *bio, int sectors,

bio_advance(bio, split->bi_iter.bi_size);

+ bio_clone_blkcg_association(split, bio);
+

Hi, Paolo,

Did you test this? bio_split calls bio_clone_bioset or bio_clone_fast,
so I'd be surprised if you didn't trigger that newly added warning. :-)

Of course I didn't check the kernel log ...

I hope next version will not introduce more bugs than it will fix.

Thanks,
Paolo
Please remove the bio_split call site.

Cheers,
Jeff