[PATCH -next] hostfs: Convert hostfs_writepage to use folio
Li Zetao
lizetao1 at huawei.com
Mon Aug 19 19:50:45 PDT 2024
convert to use folio, so that we can get rid of 'page->index' to
prepare for removal of 'index' field in structure page [1].
[1]: https://lore.kernel.org/all/Zp8fgUSIBGQ1TN0D@casper.infradead.org/
Cc: Matthew Wilcox <willy at infradead.org>
Signed-off-by: Li Zetao <lizetao1 at huawei.com>
---
fs/hostfs/hostfs_kern.c | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/fs/hostfs/hostfs_kern.c b/fs/hostfs/hostfs_kern.c
index 6d1cf2436ead..e17e70f20fa1 100644
--- a/fs/hostfs/hostfs_kern.c
+++ b/fs/hostfs/hostfs_kern.c
@@ -411,18 +411,19 @@ static const struct file_operations hostfs_dir_fops = {
static int hostfs_writepage(struct page *page, struct writeback_control *wbc)
{
- struct address_space *mapping = page->mapping;
- struct inode *inode = mapping->host;
+ struct folio *folio = page_folio(page);
+ struct address_space *mapping = folio->mapping;
+ struct inode *inode = folio_inode(folio);
char *buffer;
- loff_t base = page_offset(page);
+ loff_t base = folio_pos(folio);
int count = PAGE_SIZE;
int end_index = inode->i_size >> PAGE_SHIFT;
int err;
- if (page->index >= end_index)
+ if (folio->index >= end_index)
count = inode->i_size & (PAGE_SIZE-1);
- buffer = kmap_local_page(page);
+ buffer = kmap_local_folio(folio, 0);
err = write_file(HOSTFS_I(inode)->fd, &base, buffer, count);
if (err != count) {
@@ -439,7 +440,7 @@ static int hostfs_writepage(struct page *page, struct writeback_control *wbc)
out:
kunmap_local(buffer);
- unlock_page(page);
+ folio_unlock(folio);
return err;
}
--
2.34.1
More information about the linux-um
mailing list