ARM: exynos_defconfig: Enable zram as loadable modules

Message ID 20230410124907.3293869-1-javierm@redhat.com
State New
Headers
Series ARM: exynos_defconfig: Enable zram as loadable modules |

Commit Message

Javier Martinez Canillas April 10, 2023, 12:49 p.m. UTC
  Enable zram and dependencies as loadable modules. This allows to use the
/dev/zramX virtual block devices as swap stored in system memory.

Options were taken from commit 5c824e8be64d ("ARM: omap2plus_defconfig:
Enable zram as loadable modules") that does the same for OMAP2+ platforms.

Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
---

 arch/arm/configs/exynos_defconfig | 4 ++++
 1 file changed, 4 insertions(+)


base-commit: e3adc46da349d4a4cda1c58d8186c5bce0b011fd
  

Comments

Krzysztof Kozlowski April 10, 2023, 4:47 p.m. UTC | #1
On 10/04/2023 14:49, Javier Martinez Canillas wrote:
> Enable zram and dependencies as loadable modules. This allows to use the
> /dev/zramX virtual block devices as swap stored in system memory.
> 
> Options were taken from commit 5c824e8be64d ("ARM: omap2plus_defconfig:
> Enable zram as loadable modules") that does the same for OMAP2+ platforms.

Neither this commit msg nor above omap commit explain why do we want it.
I know what zram is, I know its purpose, but the commit should answer
why we want it in defconfig.

To me it is not a matching defconfig at all:
1. Not a feature related to Exynos hardware,
2. Not needed for basic boot (systemd) or debug.

> 
> Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
> ---
> 
>  arch/arm/configs/exynos_defconfig | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/arch/arm/configs/exynos_defconfig b/arch/arm/configs/exynos_defconfig
> index b0f0baa3a6c4..2d5be864b4ca 100644
> --- a/arch/arm/configs/exynos_defconfig
> +++ b/arch/arm/configs/exynos_defconfig
> @@ -37,6 +37,8 @@ CONFIG_MODULES=y
>  CONFIG_MODULE_UNLOAD=y
>  CONFIG_PARTITION_ADVANCED=y
>  CONFIG_CMA=y
> +CONFIG_ZSMALLOC=m
> +CONFIG_PGTABLE_MAPPING=y
>  CONFIG_NET=y
>  CONFIG_PACKET=y
>  CONFIG_UNIX=y
> @@ -84,6 +86,8 @@ CONFIG_NFC_SHDLC=y
>  CONFIG_NFC_S3FWRN5_I2C=y
>  CONFIG_DEVTMPFS=y
>  CONFIG_DEVTMPFS_MOUNT=y
> +CONFIG_ZRAM=m
> +CONFIG_ZRAM_WRITEBACK=y
>  CONFIG_BLK_DEV_LOOP=y
>  CONFIG_BLK_DEV_CRYPTOLOOP=y
>  CONFIG_BLK_DEV_RAM=y
> 
> base-commit: e3adc46da349d4a4cda1c58d8186c5bce0b011fd

BTW, I think the base commit makes sense if it is "well-known commit". I
have latest master and next and commit is unknown.

Best regards,
Krzysztof
  
Javier Martinez Canillas April 10, 2023, 5:51 p.m. UTC | #2
Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> writes:

> On 10/04/2023 14:49, Javier Martinez Canillas wrote:
>> Enable zram and dependencies as loadable modules. This allows to use the
>> /dev/zramX virtual block devices as swap stored in system memory.
>> 
>> Options were taken from commit 5c824e8be64d ("ARM: omap2plus_defconfig:
>> Enable zram as loadable modules") that does the same for OMAP2+ platforms.
>
> Neither this commit msg nor above omap commit explain why do we want it.
> I know what zram is, I know its purpose, but the commit should answer
> why we want it in defconfig.
>
> To me it is not a matching defconfig at all:
> 1. Not a feature related to Exynos hardware,
> 2. Not needed for basic boot (systemd) or debug.
>

It's needed for basic boot on distros that use swap on zram (i.e: Fedora).

I just had this as a local change to boot an ODROID XU4. But have a custom
defconfig for other boards anyways, so I'll just do the same for this one.
  
Krzysztof Kozlowski April 10, 2023, 6:05 p.m. UTC | #3
On 10/04/2023 19:51, Javier Martinez Canillas wrote:
> Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> writes:
> 
>> On 10/04/2023 14:49, Javier Martinez Canillas wrote:
>>> Enable zram and dependencies as loadable modules. This allows to use the
>>> /dev/zramX virtual block devices as swap stored in system memory.
>>>
>>> Options were taken from commit 5c824e8be64d ("ARM: omap2plus_defconfig:
>>> Enable zram as loadable modules") that does the same for OMAP2+ platforms.
>>
>> Neither this commit msg nor above omap commit explain why do we want it.
>> I know what zram is, I know its purpose, but the commit should answer
>> why we want it in defconfig.
>>
>> To me it is not a matching defconfig at all:
>> 1. Not a feature related to Exynos hardware,
>> 2. Not needed for basic boot (systemd) or debug.
>>
> 
> It's needed for basic boot on distros that use swap on zram (i.e: Fedora).

ZSWAP could be for this as well, but none of them should be used to be
able to boot Fedora. If Fedora requires them, it's something broken
there. I can setup SWAP on my eMMC as well, so why would I need ZRAM?

Best regards,
Krzysztof
  

Patch

diff --git a/arch/arm/configs/exynos_defconfig b/arch/arm/configs/exynos_defconfig
index b0f0baa3a6c4..2d5be864b4ca 100644
--- a/arch/arm/configs/exynos_defconfig
+++ b/arch/arm/configs/exynos_defconfig
@@ -37,6 +37,8 @@  CONFIG_MODULES=y
 CONFIG_MODULE_UNLOAD=y
 CONFIG_PARTITION_ADVANCED=y
 CONFIG_CMA=y
+CONFIG_ZSMALLOC=m
+CONFIG_PGTABLE_MAPPING=y
 CONFIG_NET=y
 CONFIG_PACKET=y
 CONFIG_UNIX=y
@@ -84,6 +86,8 @@  CONFIG_NFC_SHDLC=y
 CONFIG_NFC_S3FWRN5_I2C=y
 CONFIG_DEVTMPFS=y
 CONFIG_DEVTMPFS_MOUNT=y
+CONFIG_ZRAM=m
+CONFIG_ZRAM_WRITEBACK=y
 CONFIG_BLK_DEV_LOOP=y
 CONFIG_BLK_DEV_CRYPTOLOOP=y
 CONFIG_BLK_DEV_RAM=y