Re: [PATCH v3 1/2] mm, swap: distinguish a malformed swap entry from a dying device

From: Nhat Pham

Date: Tue Aug 18 2026 - 12:22:41 EST


On Tue, Aug 18, 2026 at 3:08 AM Breno Leitao <leitao@xxxxxxxxxx> wrote:
>
> get_swap_device() returns NULL for two different things: an entry whose
> type names no swap device or whose offset is past the end of one, and a
> device that swapoff is taking away. The first never becomes valid, the
> second does, and callers cannot tell them apart.
>
> Return ERR_PTR(-EIO) for the two malformed cases and keep NULL for
> swapoff. copy_nonpresent_pte() already reports -EIO for an entry whose
> type names no device.
>
> Callers bail out on failure either way, so switch them to
> IS_ERR_OR_NULL(), and let the two paths that drop the reference skip an
> error pointer. No functional change.
>
> Reviewed-by: Barry Song <baohua@xxxxxxxxxx>
> Acked-by: Kairui Song <kasong@xxxxxxxxxxx>
> Signed-off-by: Breno Leitao <leitao@xxxxxxxxxx>

Reviewed-by: Nhat Pham <nphamcs@xxxxxxxxx>