s/blk-integiry/blk-integrity/ in the subject. > +static inline bool bip_full(struct bio_integrity_payload *bip, unsigned int len) > +static bool bip_try_merge_hw_seg(struct request_queue *q, > + struct bio_integrity_payload *bip, > + struct page *page, unsigned int len, > + unsigned int offset, bool *same_page) ... but adding static functions without users will cause a compile error anyway, so I'd suggest to just merge it into the patch adding users. But I wonder if we really want to duplicate all this logic anyway. If we passed a bio_vec array, the vec count and an iter, we should be able to just share the logic with the bio data payload.