befs: Convert befs to read_folio

This is a "weak" conversion which converts straight back to using pages.
A full conversion should be performed at some point, hopefully by
someone familiar with the filesystem.

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
This commit is contained in:
Matthew Wilcox (Oracle) 2022-04-29 11:12:16 -04:00
parent d7e0f539d8
commit a13fe6928a

View File

@ -48,7 +48,7 @@ static struct inode *befs_iget(struct super_block *, unsigned long);
static struct inode *befs_alloc_inode(struct super_block *sb); static struct inode *befs_alloc_inode(struct super_block *sb);
static void befs_free_inode(struct inode *inode); static void befs_free_inode(struct inode *inode);
static void befs_destroy_inodecache(void); static void befs_destroy_inodecache(void);
static int befs_symlink_readpage(struct file *, struct page *); static int befs_symlink_read_folio(struct file *, struct folio *);
static int befs_utf2nls(struct super_block *sb, const char *in, int in_len, static int befs_utf2nls(struct super_block *sb, const char *in, int in_len,
char **out, int *out_len); char **out, int *out_len);
static int befs_nls2utf(struct super_block *sb, const char *in, int in_len, static int befs_nls2utf(struct super_block *sb, const char *in, int in_len,
@ -92,7 +92,7 @@ static const struct address_space_operations befs_aops = {
}; };
static const struct address_space_operations befs_symlink_aops = { static const struct address_space_operations befs_symlink_aops = {
.readpage = befs_symlink_readpage, .read_folio = befs_symlink_read_folio,
}; };
static const struct export_operations befs_export_operations = { static const struct export_operations befs_export_operations = {
@ -468,8 +468,9 @@ befs_destroy_inodecache(void)
* The data stream become link name. Unless the LONG_SYMLINK * The data stream become link name. Unless the LONG_SYMLINK
* flag is set. * flag is set.
*/ */
static int befs_symlink_readpage(struct file *unused, struct page *page) static int befs_symlink_read_folio(struct file *unused, struct folio *folio)
{ {
struct page *page = &folio->page;
struct inode *inode = page->mapping->host; struct inode *inode = page->mapping->host;
struct super_block *sb = inode->i_sb; struct super_block *sb = inode->i_sb;
struct befs_inode_info *befs_ino = BEFS_I(inode); struct befs_inode_info *befs_ino = BEFS_I(inode);