Hi,
Recently I got a strange case where for write bio, at its endio time, I
got bio->bi_iter.bi_size == 0, but bio_for_each_segment_all() reports we
still have some bv_len.
And obviously, when the bio get submitted, its bi_size is not 0.
This is especially common for REQ_OP_ZONE_APPEND bio, but I also get
rare bi_size == 0 at endio time, for REQ_OP_WRITE too.
So I guess bi_size at endio time is no longer reliable due to bio
merging/splitting?
Thus the only correct way to get how large a bio really is, is through
bio_for_each_segment_all()?
Thanks,
Qu