]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
NFS: Update readdir to use a scratch folio
authorAnna Schumaker <anna.schumaker@oracle.com>
Mon, 30 Jun 2025 14:07:56 +0000 (10:07 -0400)
committerAnna Schumaker <anna.schumaker@oracle.com>
Tue, 23 Sep 2025 17:29:50 +0000 (13:29 -0400)
Signed-off-by: Anna Schumaker <anna.schumaker@oracle.com>
fs/nfs/dir.c

index d812179239362bccae5d99cd5ad0417088822422..263aae15eb68cb8dfb97ef5b396b90411976df74 100644 (file)
@@ -829,17 +829,17 @@ static int nfs_readdir_folio_filler(struct nfs_readdir_descriptor *desc,
        struct address_space *mapping = desc->file->f_mapping;
        struct folio *new, *folio = *arrays;
        struct xdr_stream stream;
-       struct page *scratch;
+       struct folio *scratch;
        struct xdr_buf buf;
        u64 cookie;
        int status;
 
-       scratch = alloc_page(GFP_KERNEL);
+       scratch = folio_alloc(GFP_KERNEL, 0);
        if (scratch == NULL)
                return -ENOMEM;
 
        xdr_init_decode_pages(&stream, &buf, xdr_pages, buflen);
-       xdr_set_scratch_page(&stream, scratch);
+       xdr_set_scratch_folio(&stream, scratch);
 
        do {
                status = nfs_readdir_entry_decode(desc, entry, &stream);
@@ -891,7 +891,7 @@ static int nfs_readdir_folio_filler(struct nfs_readdir_descriptor *desc,
        if (folio != *arrays)
                nfs_readdir_folio_unlock_and_put(folio);
 
-       put_page(scratch);
+       folio_put(scratch);
        return status;
 }