Re: [PATCH mm-unstable 3/5] mm: zpool: Remove object mapping APIs

From: Yosry Ahmed
Date: Thu Mar 06 2025 - 11:55:26 EST


On Thu, Mar 06, 2025 at 12:19:19PM +0800, Herbert Xu wrote:
> On Thu, Mar 06, 2025 at 09:48:58AM +0800, Herbert Xu wrote:
> >
> > This patch breaks zbud and z3fold because they haven't been converted
> > to the new interface.
>
> I've rebased my zswap SG patch on top of your series. I've removed
> all the mapping code from zpool/zsmalloc and pushed it out to zram
> instead.
>
> This patch depends on a new memcpy_sglist function which I've just
> posted a patch for:
>
> https://patchwork.kernel.org/project/linux-crypto/patch/Z8kXhLb681E_FLzs@xxxxxxxxxxxxxxxxxxx/
>
> From a77ee529b831e7e606ed2a5b723b74ce234a3915 Mon Sep 17 00:00:00 2001
> From: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
> Date: Thu, 6 Mar 2025 12:13:58 +0800
> Subject: [PATCH] mm: zswap: Give non-linear objects to Crypto API
>
> Instead of copying non-linear objects into a buffer, use the
> scatterlist to give them directly to the Crypto API.
>
> Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

The zswap and zsmalloc look good and the code is simpler. I am fine with
this approach if Sergey is fine with it, although I wonder if we should
update Sergey's patches in mm-unstable do this directly. Currently we
are switching from mapping APIs to read/write APIs, and then quickly to
the pinning APIs. The history will be confusing.

Sergey, do you prefer if we keep things as-is, or if you update your
series to incorporate Herbert's changes for zsmalloc/zram, then I can
update my series to incorporate the changes in zswap?

We can also combine the series into a single updated one with
zsmalloc/zram/zswap changes.

Let me know what you prefer.