The patch titled Subject: mm: don't look at xarray value entries in split_huge_pages_in_file has been added to the -mm mm-unstable branch. Its filename is mm-dont-look-at-xarray-value-entries-in-split_huge_pages_in_file.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/mm-dont-look-at-xarray-value-entries-in-split_huge_pages_in_file.patch This patch will later appear in the mm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: Christoph Hellwig <hch@xxxxxx> Subject: mm: don't look at xarray value entries in split_huge_pages_in_file Date: Tue, 7 Mar 2023 15:34:04 +0100 Patch series "return an ERR_PTR from __filemap_get_folio", v3. __filemap_get_folio and its wrappers can return NULL for three different conditions, which in some cases requires the caller to reverse engineer the decision making. This is fixed by returning an ERR_PTR instead of NULL and thus transporting the reason for the failure. But to make that work we first need to ensure that no xa_value special case is returned and thus return the FGP_ENTRY flag. It turns out that flag is barely used and can usually be deal with in a better way. This patch (of 7): split_huge_pages_in_file never wants to do anything with the special value enties. Switch to using filemap_get_folio to not even see them. Link: https://lkml.kernel.org/r/20230307143410.28031-1-hch@xxxxxx Link: https://lkml.kernel.org/r/20230307143410.28031-2-hch@xxxxxx Signed-off-by: Christoph Hellwig <hch@xxxxxx> Reviewed-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx> Cc: Hugh Dickins <hughd@xxxxxxxxxx> Cc: Andreas Gruenbacher <agruenba@xxxxxxxxxx> Cc: Ryusuke Konishi <konishi.ryusuke@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/huge_memory.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) --- a/mm/huge_memory.c~mm-dont-look-at-xarray-value-entries-in-split_huge_pages_in_file +++ a/mm/huge_memory.c @@ -3093,11 +3093,10 @@ static int split_huge_pages_in_file(cons mapping = candidate->f_mapping; for (index = off_start; index < off_end; index += nr_pages) { - struct folio *folio = __filemap_get_folio(mapping, index, - FGP_ENTRY, 0); + struct folio *folio = filemap_get_folio(mapping, index); nr_pages = 1; - if (xa_is_value(folio) || !folio) + if (!folio) continue; if (!folio_test_large(folio)) _ Patches currently in -mm which might be from hch@xxxxxx are ufs-dont-flush-page-immediately-for-dirsync-directories.patch ocfs2-dont-use-write_one_page-in-ocfs2_duplicate_clusters_by_page.patch mmjfs-move-write_one_page-folio_write_one-to-jfs.patch mm-dont-look-at-xarray-value-entries-in-split_huge_pages_in_file.patch mm-make-mapping_get_entry-available-outside-of-filemapc.patch mm-use-filemap_get_entry-in-filemap_get_incore_folio.patch shmem-remove-shmem_get_partial_folio.patch shmem-open-code-the-page-cache-lookup-in-shmem_get_folio_gfp.patch mm-remove-fgp_entry.patch mm-return-an-err_ptr-from-__filemap_get_folio.patch