Re: [PATCH] mm/mincore: handle non-swap entries before !CONFIG_SWAP guard

From: Nhat Pham

Date: Mon Jun 08 2026 - 12:17:56 EST


On Tue, Jun 2, 2026 at 10:23 AM Usama Arif <usama.arif@xxxxxxxxx> wrote:
>
> mincore_swap() also fields migration/hwpoison entries (and shmem
> swapin-error entries), which can exist on !CONFIG_SWAP builds when
> CONFIG_MIGRATION or CONFIG_MEMORY_FAILURE is enabled. The
> !IS_ENABLED(CONFIG_SWAP) guard ran before the non-swap-entry early
> return, so mincore_pte_range() can spuriously WARN and report these
> pages nonresident on !CONFIG_SWAP kernels.
>
> Move the guard below the non-swap-entry check so only true swap
> entries trip the WARN, and migration/hwpoison entries take the
> existing "uptodate / non-shmem" path.
>
> Fixes: 1f2052755c15 ("mm/mincore: use a helper for checking the swap cache")
> Signed-off-by: Usama Arif <usama.arif@xxxxxxxxx>
> ---
> This was discovered when working on PMD swap entry series
> (https://lore.kernel.org/all/20260602142537.198755-1-usama.arif@xxxxxxxxx/)
> ---
> mm/mincore.c | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)

Acked-by: Nhat Pham <nphamcs@xxxxxxxxx>