On 05/28/2012 04:23 AM, Tejun Heo wrote: > On Fri, May 25, 2012 at 01:25:26PM -0700, Kent Overstreet wrote: >> Reusing bios is something that's been highly frowned upon in the past, >> but driver code keeps doing it anyways. If it's going to happen anyways, >> we should provide a generic method. >> >> This'll help with getting rid of bi_destructor - drivers/block/pktcdvd.c >> was open coding it, by doing a bio_init() and resetting bi_destructor. >> >> Signed-off-by: Kent Overstreet <koverstreet@xxxxxxxxxx> >> Change-Id: Ib0a43dfcb3f6c22a54da513d4a86be544b5ffd95 >> --- >> fs/bio.c | 8 ++++++++ >> include/linux/bio.h | 1 + >> include/linux/blk_types.h | 6 ++++++ >> 3 files changed, 15 insertions(+) >> >> diff --git a/fs/bio.c b/fs/bio.c >> index 3667cef..240da21 100644 >> --- a/fs/bio.c >> +++ b/fs/bio.c >> @@ -259,6 +259,14 @@ void bio_init(struct bio *bio) >> } >> EXPORT_SYMBOL(bio_init); >> > > Function comment please. And please make this inline in header. We should not EXPORT_SYMBOL a memset. (Even the memset gets inlined by compiler. Boaz > >> +void bio_reset(struct bio *bio) >> +{ >> + memset(bio, 0, BIO_RESET_BYTES); >> + bio->bi_flags = 1 << BIO_UPTODATE; >> + >> +} >> +EXPORT_SYMBOL(bio_reset); > -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel