bvec/iter: disallow zero-length segment bvecs
authorPavel Begunkov <asml.silence@gmail.com>
Sat, 9 Jan 2021 16:02:58 +0000 (16:02 +0000)
committerJens Axboe <axboe@kernel.dk>
Mon, 25 Jan 2021 15:58:24 +0000 (08:58 -0700)
commit9b2e0016d04c6542ace0128eb82ecb3b10c97e43
tree7354e1e1321f6b8e1117fc77eb49f2c504006fee
parent0f1d344feb534555a0dcd0beafb7211a37c5355e
bvec/iter: disallow zero-length segment bvecs

zero-length bvec segments are allowed in general, but not handled by bio
and down the block layer so filtered out. This inconsistency may be
confusing and prevent from optimisations. As zero-length segments are
useless and places that were generating them are patched, declare them
not allowed.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Reviewed-by: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Documentation/block/biovecs.rst
Documentation/filesystems/porting.rst
lib/iov_iter.c