projects
/
linux-2.6-microblaze.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
55f4bb9
)
iov_iter: Fix missing alloc fail check in iov_iter_extract_bvec_pages()
author
David Howells
<dhowells@redhat.com>
Thu, 25 Jun 2026 14:06:24 +0000
(15:06 +0100)
committer
Christian Brauner
<brauner@kernel.org>
Wed, 1 Jul 2026 13:26:28 +0000
(15:26 +0200)
Fix iov_iter_extract_bvec_pages() to check if want_pages_array() fails and,
if so, return -ENOMEM appropriately.
Fixes:
e4e535bff2bc
("iov_iter: don't require contiguous pages in iov_iter_extract_bvec_pages")
Link:
https://sashiko.dev/#/patchset/20260608145432.681865-1-dhowells%40redhat.com
Signed-off-by: David Howells <dhowells@redhat.com>
Link:
https://patch.msgid.link/20260625140640.3116900-7-dhowells@redhat.com
Reviewed-by: Christoph Hellwig <hch@lst.de>
cc: Ming Lei <ming.lei@redhat.com>
cc: Paulo Alcantara <pc@manguebit.org>
cc: Matthew Wilcox <willy@infradead.org>
cc: Christoph Hellwig <hch@infradead.org>
cc: Jens Axboe <axboe@kernel.dk>
cc: netfs@lists.linux.dev
cc: linux-fsdevel@vger.kernel.org
Signed-off-by: Christian Brauner (Amutable) <brauner@kernel.org>
lib/iov_iter.c
patch
|
blob
|
history
diff --git
a/lib/iov_iter.c
b/lib/iov_iter.c
index
0f320b4
..
3dfad70
100644
(file)
--- a/
lib/iov_iter.c
+++ b/
lib/iov_iter.c
@@
-1637,6
+1637,8
@@
static ssize_t iov_iter_extract_bvec_pages(struct iov_iter *i,
bi.bi_bvec_done = skip;
maxpages = want_pages_array(pages, maxsize, skip, maxpages);
+ if (!maxpages)
+ return -ENOMEM;
while (bi.bi_size && bi.bi_idx < i->nr_segs) {
struct bio_vec bv = bvec_iter_bvec(i->bvec, bi);