pagecache_get_page() can do find_subpage() for us if we do not specify FGP_HEAD. No functional change intended. Signed-off-by: Miaohe Lin <linmiaohe@xxxxxxxxxx> --- mm/swap_state.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/mm/swap_state.c b/mm/swap_state.c index a55b7b74b0e6..bc92e4893fec 100644 --- a/mm/swap_state.c +++ b/mm/swap_state.c @@ -394,13 +394,11 @@ struct page *find_get_incore_page(struct address_space *mapping, pgoff_t index) { swp_entry_t swp; struct swap_info_struct *si; - struct page *page = pagecache_get_page(mapping, index, - FGP_ENTRY | FGP_HEAD, 0); + struct page *page = pagecache_get_page(mapping, index, FGP_ENTRY, 0); - if (!page) + if (!page || !xa_is_value(page)) return page; - if (!xa_is_value(page)) - return find_subpage(page, index); + if (!shmem_mapping(mapping)) return NULL; -- 2.23.0