]> www.infradead.org Git - users/willy/pagecache.git/commit
fs: Change readpage to take a folio
authorMatthew Wilcox (Oracle) <willy@infradead.org>
Tue, 15 Dec 2020 15:48:32 +0000 (10:48 -0500)
committerMatthew Wilcox (Oracle) <willy@infradead.org>
Tue, 28 Sep 2021 16:45:41 +0000 (12:45 -0400)
commitab4cc4e12ff0216b43f15eb89e1f568af02f638c
tree19b478c2c2316f817141a8082cc1889749f1007a
parent8c64d7efa1c648ca74feffea1123b911fbb21ad2
fs: Change readpage to take a folio

We track the uptodate state on the entire folio, not individual
pages.  That means the readpage should be passed a folio and told
to update the entire folio.  Filesystems will not have multi-page
folios created for them until they indicate support for them by
setting the FS_MULTI_PAGE_FOLIO flag.  Until they do, they can
assume that the folio being passed in contains a single page.

Also convert filler_t to take a folio as these two are tightly
intertwined.

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
95 files changed:
Documentation/filesystems/locking.rst
Documentation/filesystems/vfs.rst
block/fops.c
fs/9p/vfs_addr.c
fs/adfs/inode.c
fs/affs/file.c
fs/affs/symlink.c
fs/afs/file.c
fs/afs/write.c
fs/befs/linuxvfs.c
fs/bfs/file.c
fs/btrfs/ctree.h
fs/btrfs/file.c
fs/btrfs/free-space-cache.c
fs/btrfs/inode.c
fs/btrfs/ioctl.c
fs/btrfs/relocation.c
fs/btrfs/send.c
fs/buffer.c
fs/cachefiles/rdwr.c
fs/ceph/addr.c
fs/cifs/file.c
fs/coda/symlink.c
fs/cramfs/inode.c
fs/ecryptfs/mmap.c
fs/efs/inode.c
fs/efs/symlink.c
fs/erofs/data.c
fs/erofs/zdata.c
fs/exfat/inode.c
fs/ext2/inode.c
fs/ext4/ext4.h
fs/ext4/inode.c
fs/ext4/readpage.c
fs/f2fs/data.c
fs/fat/inode.c
fs/freevxfs/vxfs_immed.c
fs/freevxfs/vxfs_subr.c
fs/fuse/dir.c
fs/fuse/file.c
fs/gfs2/aops.c
fs/hfs/inode.c
fs/hfsplus/inode.c
fs/hpfs/file.c
fs/hpfs/namei.c
fs/iomap/buffered-io.c
fs/isofs/compress.c
fs/isofs/inode.c
fs/isofs/rock.c
fs/jffs2/file.c
fs/jffs2/os-linux.h
fs/jfs/inode.c
fs/jfs/jfs_metapage.c
fs/libfs.c
fs/minix/inode.c
fs/mpage.c
fs/netfs/read_helper.c
fs/nfs/file.c
fs/nfs/fscache.c
fs/nfs/fscache.h
fs/nfs/read.c
fs/nfs/symlink.c
fs/nilfs2/inode.c
fs/ntfs/aops.c
fs/ntfs3/inode.c
fs/ocfs2/aops.c
fs/ocfs2/refcounttree.c
fs/ocfs2/symlink.c
fs/omfs/file.c
fs/orangefs/inode.c
fs/qnx4/inode.c
fs/qnx6/inode.c
fs/reiserfs/inode.c
fs/romfs/super.c
fs/squashfs/file.c
fs/squashfs/symlink.c
fs/sysv/itree.c
fs/ubifs/file.c
fs/udf/file.c
fs/udf/inode.c
fs/udf/symlink.c
fs/ufs/inode.c
fs/vboxsf/file.c
fs/xfs/xfs_aops.c
fs/zonefs/super.c
include/linux/buffer_head.h
include/linux/fs.h
include/linux/iomap.h
include/linux/mpage.h
include/linux/netfs.h
include/linux/nfs_fs.h
include/linux/pagemap.h
mm/filemap.c
mm/page_io.c
mm/readahead.c