On 06/27/18 17:30, Ming Lei wrote:
One core idea of immutable bvec is to use bio->bi_iter and the original bvec table to iterate over anywhere in the bio. That is why .bi_io_vec needs to copy, but not see any reason why .bi_vcnt needs to do. Do you have use cases on .bi_vcnt for cloned bio?
So far this is only a theoretical concern. There are many functions in the block layer that use .bi_vcnt, and it is a lot of work to figure out all the callers of all these functions.
Bart.