@@ -112,7 +112,7 @@ static int jffs2_do_readpage_nolock (struct inode *inode, struct page *pg)
int jffs2_do_readpage_unlock(void *data, struct page *pg)
{
- int ret = jffs2_do_readpage_nolock(data, pg);
+ int ret = jffs2_do_readpage_nolock(pg->mapping->host, pg);
unlock_page(pg);
return ret;
}
@@ -124,7 +124,7 @@ static int jffs2_read_folio(struct file *file, struct folio *folio)
int ret;
mutex_lock(&f->sem);
- ret = jffs2_do_readpage_unlock(folio->mapping->host, &folio->page);
+ ret = jffs2_do_readpage_unlock(file, &folio->page);
mutex_unlock(&f->sem);
return ret;
}
@@ -1327,7 +1327,7 @@ static int jffs2_garbage_collect_dnode(struct jffs2_sb_info *c, struct jffs2_era
* trying to write out, read_cache_page() will not deadlock. */
mutex_unlock(&f->sem);
page = read_cache_page(inode->i_mapping, start >> PAGE_SHIFT,
- jffs2_do_readpage_unlock, inode);
+ jffs2_do_readpage_unlock, NULL);
if (IS_ERR(page)) {
pr_warn("read_cache_page() returned error: %ld\n",
PTR_ERR(page));
In preparation for unifying the read_cache_page() and read_folio() implementations, make jffs2_do_readpage_unlock() get the inode from the page instead of passing it in from read_cache_page(). Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> --- fs/jffs2/file.c | 4 ++-- fs/jffs2/gc.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-)