On 09/08/22 12:37, Sidhartha Kumar wrote: > Removes the last caller of delete_from_page_cache() by converting the > code to its folio equivalent. Changes below look fine. However, if this patch removes the last caller of delete_from_page_cache() then I think it should also remove delete_from_page_cache? -- Mike Kravetz > > Signed-off-by: Sidhartha Kumar <sidhartha.kumar@xxxxxxxxxx> > --- > fs/hugetlbfs/inode.c | 14 +++++++------- > 1 file changed, 7 insertions(+), 7 deletions(-) > > diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c > index d9e08c445e2f..38920702765e 100644 > --- a/fs/hugetlbfs/inode.c > +++ b/fs/hugetlbfs/inode.c > @@ -364,11 +364,11 @@ static int hugetlbfs_write_end(struct file *file, struct address_space *mapping, > return -EINVAL; > } > > -static void hugetlb_delete_from_page_cache(struct page *page) > +static void hugetlb_delete_from_page_cache(struct folio *folio) > { > - ClearPageDirty(page); > - ClearPageUptodate(page); > - delete_from_page_cache(page); > + folio_clear_dirty(folio); > + folio_clear_uptodate(folio); > + filemap_remove_folio(folio); > } > > /* > @@ -562,8 +562,8 @@ static bool remove_inode_single_folio(struct hstate *h, struct inode *inode, > * map could fail. Correspondingly, the subpool and global > * reserve usage count can need to be adjusted. > */ > - VM_BUG_ON(HPageRestoreReserve(&folio->page)); > - hugetlb_delete_from_page_cache(&folio->page); > + VM_BUG_ON_FOLIO(folio_test_hugetlb_restore_reserve(folio), folio); > + hugetlb_delete_from_page_cache(folio); > ret = true; > if (!truncate_op) { > if (unlikely(hugetlb_unreserve_pages(inode, index, > @@ -1174,7 +1174,7 @@ static int hugetlbfs_error_remove_page(struct address_space *mapping, > struct inode *inode = mapping->host; > pgoff_t index = page->index; > > - hugetlb_delete_from_page_cache(page); > + hugetlb_delete_from_page_cache(page_folio(page)); > if (unlikely(hugetlb_unreserve_pages(inode, index, index + 1, 1))) > hugetlb_fix_reserve_counts(inode); > > -- > 2.31.1 >