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>
Reviewed-by: Christoph Hellwig <hch@lst.de>
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;
}
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;
}
* 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));