On 18/02/2025 22:21, Bart Van Assche wrote:
On 2/18/25 9:12 AM, John Garry wrote:
On 18/02/2025 11:40, Andreas Hindborg wrote:
But I am genuinely curious if there is a reason for not setting
`bi_vcnt` during a clone.
I think that it came from commit 59d276fe0 (with the addition of
bio_clone_fast()), where we assume that the cloned bio is not having
the bio_vec touched and so does not need to know bi_vcnt (or
bi_max_vecs). And it is inefficient to needlessly set bi_vcnt then.
Hmm ... I prefer paying the very small performance hit caused by copying
bi_vcnt rather than having to deal with the inconsistency caused by not
copying that data structure member.
From my experience, setting anything which is not strictly necessary in
the fastpath code is generally not wanted.
Thanks,
John