diff options
author | Andrew Morton <akpm@linux-foundation.org> | 2025-03-16 22:04:39 -0700 |
---|---|---|
committer | Andrew Morton <akpm@linux-foundation.org> | 2025-03-16 22:04:39 -0700 |
commit | 833ea1277f8e04bc05248a077ec1d41f5aa6dc70 (patch) | |
tree | 3b96debff9db612f2a683bdb7918fddfcc14385c /lib/iov_iter.c | |
parent | 80e54e84911a923c40d7bee33a34c1b4be148d7a (diff) | |
parent | 800f1059c99e2b39899bdc67a7593a7bea6375d8 (diff) |
Merge branch 'mm-hotfixes-stable' into mm-stable in order to pick up memcg
and DAMON changes which are required by mm-stable material.
Diffstat (limited to 'lib/iov_iter.c')
-rw-r--r-- | lib/iov_iter.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/iov_iter.c b/lib/iov_iter.c index 65f550cb5081..8c7fdb7d8c8f 100644 --- a/lib/iov_iter.c +++ b/lib/iov_iter.c @@ -1190,8 +1190,12 @@ static ssize_t __iov_iter_get_pages_alloc(struct iov_iter *i, if (!n) return -ENOMEM; p = *pages; - for (int k = 0; k < n; k++) - get_page(p[k] = page + k); + for (int k = 0; k < n; k++) { + struct folio *folio = page_folio(page); + p[k] = page + k; + if (!folio_test_slab(folio)) + folio_get(folio); + } maxsize = min_t(size_t, maxsize, n * PAGE_SIZE - *start); i->count -= maxsize; i->iov_offset += maxsize; |