[PATCH] mm: z3fold: deprecated ZSWAP_ZPOOL_DEFAULT_Z3FOLD as well

Arnd Bergmann posted 1 patch 2 months, 3 weeks ago
mm/Kconfig | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
[PATCH] mm: z3fold: deprecated ZSWAP_ZPOOL_DEFAULT_Z3FOLD as well
Posted by Arnd Bergmann 2 months, 3 weeks ago
From: Arnd Bergmann <arnd@arndb.de>

Randconfig builds that use ZSWAP_ZPOOL_DEFAULT_Z3FOLD
now cause a harmless warning:

WARNING: unmet direct dependencies detected for Z3FOLD
  Depends on [n]: Z3FOLD_DEPRECATED [=n]
  Selected by [y]:
  - ZSWAP_ZPOOL_DEFAULT_Z3FOLD [=y] && ZSWAP [=y]

Avoid the warning by selecting Z3FOLD_DEPRECATED instead,
but rename this symbol to ZSWAP_ZPOOL_DEFAULT_Z3FOLD_DEPRECATED
in the process so it no longer automatically gets used with
old defconfigs while still allowing users to select it
manually.

Fixes: c68c1bed014d ("mm: z3fold: deprecate CONFIG_Z3FOLD")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 mm/Kconfig | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/mm/Kconfig b/mm/Kconfig
index 7c9930bf8a9d..09aebca1cae3 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -146,12 +146,15 @@ config ZSWAP_ZPOOL_DEFAULT_ZBUD
 	help
 	  Use the zbud allocator as the default allocator.
 
-config ZSWAP_ZPOOL_DEFAULT_Z3FOLD
-	bool "z3fold"
-	select Z3FOLD
+config ZSWAP_ZPOOL_DEFAULT_Z3FOLD_DEPRECATED
+	bool "z3foldi (DEPRECATED)"
+	select Z3FOLD_DEPRECATED
 	help
 	  Use the z3fold allocator as the default allocator.
 
+	  Deprecated and scheduled for removal in a few cycles,
+	  see CONFIG_Z3FOLD_DEPRECATED.
+
 config ZSWAP_ZPOOL_DEFAULT_ZSMALLOC
 	bool "zsmalloc"
 	select ZSMALLOC
@@ -163,7 +166,7 @@ config ZSWAP_ZPOOL_DEFAULT
        string
        depends on ZSWAP
        default "zbud" if ZSWAP_ZPOOL_DEFAULT_ZBUD
-       default "z3fold" if ZSWAP_ZPOOL_DEFAULT_Z3FOLD
+       default "z3fold" if ZSWAP_ZPOOL_DEFAULT_Z3FOLD_DEPRECATED
        default "zsmalloc" if ZSWAP_ZPOOL_DEFAULT_ZSMALLOC
        default ""
 
-- 
2.39.2
Re: [PATCH] mm: z3fold: deprecated ZSWAP_ZPOOL_DEFAULT_Z3FOLD as well
Posted by Yosry Ahmed 2 months, 3 weeks ago
On Mon, Sep 9, 2024 at 1:26 PM Arnd Bergmann <arnd@kernel.org> wrote:
>
> From: Arnd Bergmann <arnd@arndb.de>
>
> Randconfig builds that use ZSWAP_ZPOOL_DEFAULT_Z3FOLD
> now cause a harmless warning:
>
> WARNING: unmet direct dependencies detected for Z3FOLD
>   Depends on [n]: Z3FOLD_DEPRECATED [=n]
>   Selected by [y]:
>   - ZSWAP_ZPOOL_DEFAULT_Z3FOLD [=y] && ZSWAP [=y]
>
> Avoid the warning by selecting Z3FOLD_DEPRECATED instead,
> but rename this symbol to ZSWAP_ZPOOL_DEFAULT_Z3FOLD_DEPRECATED
> in the process so it no longer automatically gets used with
> old defconfigs while still allowing users to select it
> manually.
>
> Fixes: c68c1bed014d ("mm: z3fold: deprecate CONFIG_Z3FOLD")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>  mm/Kconfig | 11 +++++++----
>  1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/mm/Kconfig b/mm/Kconfig
> index 7c9930bf8a9d..09aebca1cae3 100644
> --- a/mm/Kconfig
> +++ b/mm/Kconfig
> @@ -146,12 +146,15 @@ config ZSWAP_ZPOOL_DEFAULT_ZBUD
>         help
>           Use the zbud allocator as the default allocator.
>
> -config ZSWAP_ZPOOL_DEFAULT_Z3FOLD
> -       bool "z3fold"
> -       select Z3FOLD
> +config ZSWAP_ZPOOL_DEFAULT_Z3FOLD_DEPRECATED
> +       bool "z3foldi (DEPRECATED)"
> +       select Z3FOLD_DEPRECATED

Thanks for looking into this!

I was going to fix this by changing "select Z3FOLD" to "depends on
Z3FOLD" instead. It makes the warning go away in my builds. Does this
work for you?

FYI I will send a new version of "mm: z3fold: deprecate CONFIG_Z3FOLD"
as a hotfix after v6.12-rc1 is out as there are currently conflicts,
so I plan to squash the fix into the next version if that's okay with
you.

>         help
>           Use the z3fold allocator as the default allocator.
>
> +         Deprecated and scheduled for removal in a few cycles,
> +         see CONFIG_Z3FOLD_DEPRECATED.
> +
>  config ZSWAP_ZPOOL_DEFAULT_ZSMALLOC
>         bool "zsmalloc"
>         select ZSMALLOC
> @@ -163,7 +166,7 @@ config ZSWAP_ZPOOL_DEFAULT
>         string
>         depends on ZSWAP
>         default "zbud" if ZSWAP_ZPOOL_DEFAULT_ZBUD
> -       default "z3fold" if ZSWAP_ZPOOL_DEFAULT_Z3FOLD
> +       default "z3fold" if ZSWAP_ZPOOL_DEFAULT_Z3FOLD_DEPRECATED
>         default "zsmalloc" if ZSWAP_ZPOOL_DEFAULT_ZSMALLOC
>         default ""
>
> --
> 2.39.2
>