ACK: [SRU][Noble/mantic/jammy][PATCH 0/1] Include erofs in linux-modules instead of linux-modules-extra
Roxana Nicolescu
roxana.nicolescu at canonical.com
Mon Mar 18 09:46:49 UTC 2024
On 15/03/2024 20:33, Daan De Meyer wrote:
> Hi Roxana,
>
> I was wondering if this patch will be applied to linux-azure as well.
> If not, how can I propose this change to be applied to linux-azure as
> well?
>
> The use case is running systemd-nspawn containers with erofs
> filesystems on Github Actions in systemd's CI.
>
> Cheers,
>
> Daan
>
> On Wed, 28 Feb 2024 at 11:01, Roxana Nicolescu
> <roxana.nicolescu at canonical.com> wrote:
>>
>> On 23/02/2024 14:25, Daan De Meyer wrote:
>>> Buglink: https://bugs.launchpad.net/bugs/2054809
>>>
>>> SRU Justification:
>>>
>>> [Impact]
>>>
>>> The erofs.ko module (CONFIG_EROFS) is currently shipped in linux-modules-extra. This makes it
>>> hard to pull in via the linux-virtual package, it can only come from the linux-generic one that
>>> also pulls in the firmware and everything else needed for baremetal, and that serves no purpose
>>> in a qemu VM. This stops VMs using these kernels from using the erofs filesystem. Erofs is a modern
>>> alternative to squashfs that supports more features such as ACLs. The following LPC presentation
>>> has more details on erofs and its advantages over squashfs: https://youtu.be/jt-hp_LtSBc.
>>>
>>> A user launching a VM using the linux-virtual kernel image is not able to mount erofs filesystems due
>>> to the lack of this kconfig. We make extensive use of erofs in systemd's upstream CI, which is running
>>> on Github Actions.
>>>
>>> [Fix]
>>>
>>> Please consider moving this module to linux-modules.
>>>
>>> These are already enabled in the 'main' kernel config, and in other distros. In Debian/Archlinux/Fedora
>>> it is a (core) module that is built by default.
>>>
>>> To verify this works, it is sufficient to create an erofs filesystem with mkfs.erofs and verify that it
>>> can be mounted:
>>>
>>> $ mkdir sources
>>> $ echo abcde > sources/file
>>> $ mkfs.erofs erofs sources
>>> $ mount erofs mnt --mkdir
>>> $ ls mnt
>>> file
>>>
>>> Without this module installed and loaded, the mount will fail. Once enabled, it will succeed.
>>>
>>> [Test Plan]
>>>
>>> 1. pull built linux-modules packages for architectures with do_extras_package
>>> set to true;
>>> 2. extract the deb and check if erofs kernel module file exists:
>>>
>>> $ dpkg-deb -R linux-modules-*.deb .
>>> $ find . -name erofs.ko\*
>>>
>>> [Regression Potential]
>>>
>>> Moving a module from a less-common to a more-common package should not have any negative side effects.
>>> The main effect will be a little more disk space used by the more common package, whether the module
>>> is in use or not. There will also be more functionality available in the default installation, which
>>> means a slightly increased surface and possibility of new bugs in case it gets used.
>>>
>>> Daan De Meyer (1):
>>> Include erofs in linux-modules instead of linux-modules-extra
>>>
>>> debian.master/control.d/generic.inclusion-list | 1 +
>>> 1 file changed, 1 insertion(+)
>>>
>> Will include this to mantic and jammy.
>>
>> Acked-by: Roxana Nicolescu <roxana.nicolescu at canonical.com>
Hi Daan,
It will be included in mantic/jammy:linux-azure as they haven't been
prepared for this cycle yet.
They should be out in updates in roughly 2 weeks.
This change is not automatically inherited by derivatives at the moment,
I suggest in the future if you need it for a specific kernel,
mention it in the subject so we know.
Roxana
More information about the kernel-team
mailing list