[PATCH] arm64: defconfig: Build STMMAC Ethernet driver into the kernel for NFS boot

Krzysztof Kozlowski krzysztof.kozlowski at linaro.org
Tue May 6 06:14:32 PDT 2025


On 06/05/2025 14:42, Geert Uytterhoeven wrote:
> Hi Krzysztof,
> 
> CC arnd
> 
> On Tue, 6 May 2025 at 12:52, Krzysztof Kozlowski
> <krzysztof.kozlowski at linaro.org> wrote:
>> On 06/05/2025 12:47, Prabhakar wrote:
>>> From: Lad Prabhakar <prabhakar.mahadev-lad.rj at bp.renesas.com>
>>>
>>> Enable `CONFIG_STMMAC_ETH` as built-in (`y`) instead of a module (`m`) to
>>> ensure the Ethernet driver is available early in the boot process. This
>>> is necessary for platforms mounting the root filesystem via NFS, as the
>>> driver must be available before the root filesystem is accessed.
>>>
>>> Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj at bp.renesas.com>
>>
>> Same comments as for previous patches like this (even the same?): you
>> are supposed to use initramfs for your arm74 boards. Even armv7 boards
>> use initramfs, so network driver does not have to be built in.
> 
> Are we? When has that policy changed? Why are lots of network drivers
> still built-in?  Making network drivers built-in for systems where

I would be happy to make them modules, but it is different thing to
accept new patch like that than change existing workflow.

> development is done using nfsroot has always been acceptable for the
> arm64 defconfig before.  For things not critical for booting, modular
> is indeed the preferred way.

And this is not critical for booting. System boots perfectly fine, all
critical SoCs are working, serial is working, clocks/interconnects kick
in, kernel mounts initramfs and you can probe the network/USB/storage to
mount rootfs.

> 
> arm64/defconfig is for development and testing, not for production
> (which famous kernel developer said that before?)

And we all for testing use initramfs, don't we? I really do not
understand the problem being solved here - all of our setups are
supposed to have initramfs already. My simple, private CI even has it,
so if such little fella like me is able to use initramfs, I am sure that
SoC vendor can adjust their CI as well.

> 
>> For example all of our setups use it thus we do not have to populate all
>> other vendors with our own drivers.
>>
>> Sorry, but I am strongly against such change. Kernel is already way too
> 
> The kernel will grow without this (it will just take a few more weeks ;-),
> so that is IMHO not a good argument.

I meant, kernel built out of defconfig. Yes, it will grow and my
comments are, hopefully, slowing that growth so I can still work with
kernel defconfig.

Otherwise why Renesas usecase of defconfig - built in modules, because
initramfs is too difficult (???) - is more important than my usecase of
small defconfig for my development?

And there is a consensus: use initramfs, just like we all are supposed
to use since years.

> 
>> big and with KASAN it does not fit to boot partitions in some of the
>> devices (and I cannot change the boot partition size, at least not
>> without big effort).
> 
> arm64/defconfig does not have KASAN enabled?

Does not have, but I want to be able to toggle KASAN and boot the
kernel, without going through 1000 kernel options which I could disable
or toggle to module to get the kernel fit into boot partition.

> 
>> Nacked-by: Krzysztof Kozlowski <krzysztof.kozlowski at linaro.org>
> 
> Doh...

Sorry that it feels harsh. I do not create the policy, but lack of my
words of objection are then used again in many discussions, e.g. via
"someone added patch like this, so I can add as well". I won't feel
offended if you take the patch with my Nacked tag.


Best regards,
Krzysztof



More information about the linux-arm-kernel mailing list