nfs: Pass the file pointer to nfs_symlink_filler()
authorMatthew Wilcox (Oracle) <willy@infradead.org>
Sun, 1 May 2022 23:39:03 +0000 (19:39 -0400)
committerMatthew Wilcox (Oracle) <willy@infradead.org>
Mon, 9 May 2022 20:28:41 +0000 (16:28 -0400)
In preparation for unifying the read_cache_page() and read_folio()
implementations, make nfs_symlink_filler() get the inode
from the page instead of passing it in from read_cache_page().

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
fs/nfs/symlink.c

index 25ba299..8b53538 100644 (file)
@@ -28,7 +28,7 @@
 
 static int nfs_symlink_filler(void *data, struct page *page)
 {
-       struct inode *inode = data;
+       struct inode *inode = page->mapping->host;
        int error;
 
        error = NFS_PROTO(inode)->readlink(inode, page, 0, PAGE_SIZE);
@@ -67,7 +67,7 @@ static const char *nfs_get_link(struct dentry *dentry,
                if (err)
                        return err;
                page = read_cache_page(&inode->i_data, 0, nfs_symlink_filler,
-                               inode);
+                               NULL);
                if (IS_ERR(page))
                        return ERR_CAST(page);
        }