On Mon, Jan 06, 2025 at 09:13:02AM +0000, David Howells wrote: > Okay, I can reproduce it trivially. Question is, do I need to copy the > bio_vec array (or kvec array or folio_queue list) or can I rely on that being > maintained till the end of the op? (Obviously, I can't rely on the iov_iter > struct itself being maintained). I think I have to copy the contents, just in > case. The bio_vec array can't be freed while I/O is in progress. Take a look at the iov_iter_is_bvec case in bio_iov_iter_get_pages for how simple ITER_BVEC handling can be.