NACK: [SRU][kernel-snaps-uc24.04/pc][PATCH v4 1/1] snapcraft.yaml: Add nvidia-550 and nouveau component support support
Aaron Jauregui
aaron.jauregui at canonical.com
Mon Jan 20 23:55:09 UTC 2025
On Mon, Jan 20, 2025 at 02:21:11PM +0100, Juerg Haefliger wrote:
> I'd still like this to be called nouveau-ko for namespace consistency
> reasons. But the bigger issue is that I'm still not convinced that we need
> this. depmod can look in different places [1][2] for external modules which
> is IMO what we want so that we don't have to produce a nouveau component and
> shuffle nouveau.ko around.
>
> Assuming this is feasible, the simplest is to put the new modules in
> /lib/module/$(uname -r)/updates/
>
> But we should probably add some directory hierarchy to account for potential
> additional future kernel components:
> /lib/module/$(uname -r)/updates/<component-name>/
>
Would this not cause conflicts with nouveau and nvidia drivers being
present at the same time?
The new modules can't go into /lib/module, as it's read-only. Modules
are installed similarly as to what you suggested, with nvidia and
nouveau currently being installed into:
/var/snap/pc-kernel/$ver/modules/$(uname -r)/graphics
as a special case of:
/var/snap/pc-kernel/$ver/modules/$(uname -r)/<component-name>
Having nvidia anv nouveau install into 'graphics' rather than a
component-specific directory ensures they're mutually exclusive
(particularly between different nvidia versions in the future).
> There's lots of effort put into figuring out what packages and versions to
> download. This feels too complicated. Would it help to make nvidia and/or
> kernel packaging changes and provide additional meta packages?
>
> What we want is a set of nvidia packages that match a kernel version?
I agree this solution feels very overcomplicated for what it does. The
main problem I'm trying to solve with all of this is matching the nvidia
version of the kernel modules with that of the libraries, a bit
similarly to the uc22 issue that popped up recently.
The main challenge is that the kmod deb is versioned according to the kernel
version rather than the nvidia driver version, and there is no trivial way to
match this on the snapcraft side. Snapcraft doesn't have functionality for
requesting specific deb package versions, so a metapackage sounds like a
good idea. I'd appreciate having a chat about what this would require.
Cheers,
Aaron
More information about the kernel-team
mailing list