[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201028185927.GB128655@google.com>
Date: Thu, 29 Oct 2020 03:59:27 +0900
From: Sergey Senozhatsky <sergey.senozhatsky.work@...il.com>
To: Minchan Kim <minchan@...nel.org>,
Rui Salvaterra <rsalvaterra@...il.com>
Cc: Andrew Morton <akpm@...ux-foundation.org>, ngupta@...are.org,
sergey.senozhatsky.work@...il.com, linux-block@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v4] zram: break the strict dependency from lzo
Cc-ing Andrew
message-id: 20201028115921.848-1-rsalvaterra@...il.com
On (20/10/28 11:59), Rui Salvaterra wrote:
> There's nothing special about zram and lzo. It works just fine without it, so
> as long as at least one of the other supported compression algorithms is
> selected.
>
> Suggested-by: Sergey Senozhatsky <sergey.senozhatsky.work@...il.com>
> Signed-off-by: Rui Salvaterra <rsalvaterra@...il.com>
Minchan, I'm fine with the change.
Two things from my side:
1) The commit message, probably, can be a bit more informative. Something
like this?
ZRAM always enables CRYPTO_LZO because lzo-rle is the hardcoded
fallback compression algorithm, which means that on systems where
ZRAM always use, for instance, CRYPTO_ZSTD lzo kernel module
becomes unneeded. This patch removes the hardcoded lzo-lre
dependency, instead ZRAM picks the first supported CRYPTO
compression algorithm, should it be ZSTD or LZ4, etc; and only
forcibly enables CRYPTO_LZO (previous behaviour) if none of the
alternative algorithms were selected.
2) The ZRAM_AUTOSEL_ALGO allows to deselect CRYPTO_LZO only if
CRYPTO_LZ4/CRYPTO_LZ4HC/CRYPTO_842/CRYPTO_ZSTD are compiled in (=y).
If any of the algorithms is selected as a module (=m) then CRYPTO_LZO
is selected as the default algorithm. Apparently depends on !(CONFIG_FOO)
means depends on !(CONFIG_FOO=y).
It appears that the below change fixes it, but it looks a bit ugly.
---
diff --git a/drivers/block/zram/Kconfig b/drivers/block/zram/Kconfig
index 141ce0ebad06..f2fd34de9200 100644
--- a/drivers/block/zram/Kconfig
+++ b/drivers/block/zram/Kconfig
@@ -15,7 +15,7 @@ config ZRAM
config ZRAM_AUTOSEL_ALGO
def_bool y
- depends on ZRAM && !(CRYPTO_LZ4 || CRYPTO_LZ4HC || CRYPTO_842 || CRYPTO_ZSTD)
+ depends on ZRAM && !(CRYPTO_LZ4=m || CRYPTO_LZ4HC=m || CRYPTO_842=m || CRYPTO_ZSTD=m || CRYPTO_LZ4=y || CRYPTO_LZ4HC=y || CRYPTO_842=y || CRYPTO_ZSTD=y)
select CRYPTO_LZO
config ZRAM_WRITEBACK
---
-ss
Powered by blists - more mailing lists