diff options
author | Matthew Wilcox (Oracle) | 2022-04-30 23:21:43 -0400 |
---|---|---|
committer | Matthew Wilcox (Oracle) | 2022-05-09 23:12:32 -0400 |
commit | 5e4146558c96f4935b803f2c4243f3c3f29c4476 (patch) | |
tree | d34aaea26456f5ec6f48c7d8fada38432d372e37 | |
parent | f913cff3505adb8c1e9e631535a847ac089e24c4 (diff) |
ceph: Convert to release_folio
Use a folio throughout ceph_release_folio().
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
-rw-r--r-- | fs/ceph/addr.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/fs/ceph/addr.c b/fs/ceph/addr.c index e040b92bb17c..737d13931d52 100644 --- a/fs/ceph/addr.c +++ b/fs/ceph/addr.c @@ -162,24 +162,24 @@ static void ceph_invalidate_folio(struct folio *folio, size_t offset, folio_wait_fscache(folio); } -static int ceph_releasepage(struct page *page, gfp_t gfp) +static bool ceph_release_folio(struct folio *folio, gfp_t gfp) { - struct inode *inode = page->mapping->host; + struct inode *inode = folio->mapping->host; - dout("%llx:%llx releasepage %p idx %lu (%sdirty)\n", - ceph_vinop(inode), page, - page->index, PageDirty(page) ? "" : "not "); + dout("%llx:%llx release_folio idx %lu (%sdirty)\n", + ceph_vinop(inode), + folio->index, folio_test_dirty(folio) ? "" : "not "); - if (PagePrivate(page)) - return 0; + if (folio_test_private(folio)) + return false; - if (PageFsCache(page)) { + if (folio_test_fscache(folio)) { if (current_is_kswapd() || !(gfp & __GFP_FS)) - return 0; - wait_on_page_fscache(page); + return false; + folio_wait_fscache(folio); } ceph_fscache_note_page_release(inode); - return 1; + return true; } static void ceph_netfs_expand_readahead(struct netfs_io_request *rreq) @@ -1380,7 +1380,7 @@ const struct address_space_operations ceph_aops = { .write_end = ceph_write_end, .dirty_folio = ceph_dirty_folio, .invalidate_folio = ceph_invalidate_folio, - .releasepage = ceph_releasepage, + .release_folio = ceph_release_folio, .direct_IO = noop_direct_IO, }; |