summaryrefslogtreecommitdiffstats
path: root/fs/nfs/inode.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2024-05-27 18:36:09 +0200
committerAnna Schumaker <Anna.Schumaker@Netapp.com>2024-07-08 16:55:39 +0200
commit49b29a573da83b65d5f4ecf2db6619bab7aa910c (patch)
treed512fb830dd31287fc37c2ec23d67d28a314c486 /fs/nfs/inode.c
parentfilemap: Convert generic_perform_write() to support large folios (diff)
downloadlinux-49b29a573da83b65d5f4ecf2db6619bab7aa910c.tar.xz
linux-49b29a573da83b65d5f4ecf2db6619bab7aa910c.zip
nfs: add support for large folios
NFS already is void of folio size assumption, so just pass the chunk size to __filemap_get_folio and set the large folio address_space flag for all regular files. Signed-off-by: Christoph Hellwig <hch@lst.de> Tested-by: Sagi Grimberg <sagi@grimberg.me> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'fs/nfs/inode.c')
-rw-r--r--fs/nfs/inode.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/nfs/inode.c b/fs/nfs/inode.c
index acef52ecb1bb..6d185af4cb29 100644
--- a/fs/nfs/inode.c
+++ b/fs/nfs/inode.c
@@ -491,6 +491,7 @@ nfs_fhget(struct super_block *sb, struct nfs_fh *fh, struct nfs_fattr *fattr)
inode->i_fop = NFS_SB(sb)->nfs_client->rpc_ops->file_ops;
inode->i_data.a_ops = &nfs_file_aops;
nfs_inode_init_regular(nfsi);
+ mapping_set_large_folios(inode->i_mapping);
} else if (S_ISDIR(inode->i_mode)) {
inode->i_op = NFS_SB(sb)->nfs_client->rpc_ops->dir_inode_ops;
inode->i_fop = &nfs_dir_operations;