On Thu, Dec 21, 2023 at 12:48:24PM +0000, John Garry wrote: >>> - ubuf / iovecs need to be PAGE-aligned >>> - each iovec needs to be length of multiple of atomic_write_unit_min. If >>> total length > PAGE_SIZE, each iovec also needs to be a multiple of >>> PAGE_SIZE. >>> >>> I'd rather something simpler. Maybe it's ok. >> If we decided to not support atomic writes on anything setting a virt >> boundary we don't have to care about the alignment of each vector, > > ok, I think that alignment is not so important, but we still need to > consider a minimum length per iovec, such that we will always be able to > fit a write of length atomic_write_unit_max in a bio. I don't think you man a minim length per iovec for that, but a maximum number of iovecs instead. For SGL-capable devices that would be BIO_MAX_VECS, otherwise 1.