Hi I need the function bio_kmap_irq in the driver that I am developing, but it doesn't return the size of the mapped data. I've made this patch to fix it. Mikulas From: Mikulas Patocka <mpatocka@xxxxxxxxxx> The function bio_kmap_irq is not usable because it does not return the size of the mapped data. Fix bio_kmap_irq and __bio_kmap_irq so that they return the size of mapped data. Signed-off-by: Mikulas Patocka <mpatocka@xxxxxxxxxx> Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx> --- include/linux/bio.h | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) Index: linux-2.6/include/linux/bio.h =================================================================== --- linux-2.6.orig/include/linux/bio.h +++ linux-2.6/include/linux/bio.h @@ -576,14 +576,16 @@ static inline void bvec_kunmap_irq(char #endif static inline char *__bio_kmap_irq(struct bio *bio, struct bvec_iter iter, - unsigned long *flags) + unsigned long *flags, unsigned *size) { - return bvec_kmap_irq(&bio_iter_iovec(bio, iter), flags); + struct bio_vec bv = bio_iter_iovec(bio, iter); + *size = bv.bv_len; + return bvec_kmap_irq(&bv, flags); } #define __bio_kunmap_irq(buf, flags) bvec_kunmap_irq(buf, flags) -#define bio_kmap_irq(bio, flags) \ - __bio_kmap_irq((bio), (bio)->bi_iter, (flags)) +#define bio_kmap_irq(bio, flags, size) \ + __bio_kmap_irq((bio), (bio)->bi_iter, (flags), (size)) #define bio_kunmap_irq(buf,flags) __bio_kunmap_irq(buf, flags) /* -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel