Re: [PATCH] config/mips: support zswap function

From: Yosry Ahmed
Date: Wed Mar 20 2024 - 03:28:36 EST


On Wed, Mar 20, 2024 at 02:44:21PM +0800, mengfanhui wrote:
> Zswap and zsmalloc are compression methods, and kernel configuration can be configured simultaneously.
> zbud is an algorithm, and users can use that method if they want to use it.It won't affect each other.

Zswap compressed swapped out pages in-memory. To store those compressed
pages, it uses one of three allocators that implement the zpool API:
zbud, z3fold, and zsmalloc. In that sense, zsmalloc is comparable to
zbud, not zswap. I suspect you are mixing up zsmalloc and zram.

Anyway, zsmalloc is the default allocator and should be better for
almost all use cases. So unless you have a very good reason to use zbud
over zsmalloc, please do not use zbud. We are trying to deprecate zbud
and z3fold.

>
> 在 2024/3/20 14:00, Yosry Ahmed 写道:
> > On Fri, Jan 26, 2024 at 03:55:47PM +0800, mengfanhui wrote:
> >> Solution /sys/module/zswap/parameters/enabled attribute node
> >> does not exist issue,handle zpool zbud initialization failed,
> >> open CONFIG_ZSWAP CONFIG_ZPOOL CONFIG_ZBUD configuration,manual
> >> zswap function by /sys/module/zswap/parameters/enabled file
> >>
> >> Signed-off-by: mengfanhui <mengfanhui@xxxxxxxxxx>
> >> ---
> >> arch/mips/configs/generic_defconfig | 3 +++
> >> 1 file changed, 3 insertions(+)
> >>
> >> diff --git a/arch/mips/configs/generic_defconfig b/arch/mips/configs/generic_defconfig
> >> index 071e2205c7ed..14884df392f4 100644
> >> --- a/arch/mips/configs/generic_defconfig
> >> +++ b/arch/mips/configs/generic_defconfig
> >> @@ -13,6 +13,9 @@ CONFIG_CGROUP_DEVICE=y
> >> CONFIG_CGROUP_CPUACCT=y
> >> CONFIG_NAMESPACES=y
> >> CONFIG_USER_NS=y
> >> +CONFIG_ZSWAP=y
> >> +CONFIG_ZPOOL=y
> >> +CONFIG_ZBUD=y
> >
> > Any reason for choosing zbud over zsmalloc, the default zswap allocator?
> >
> >> CONFIG_SCHED_AUTOGROUP=y
> >> CONFIG_BLK_DEV_INITRD=y
> >> CONFIG_BPF_SYSCALL=y
> >> --
> >> 2.25.1
> >>