NACK: [SRU kernel-snaps-uc24.04/pc][SRU canonical-kernel-snap/main][RFC PATCH v2 0/2] add nvidia-550 driver components

Juerg Haefliger juerg.haefliger at canonical.com
Fri Dec 6 07:03:42 UTC 2024


There's no patch 2/2 in this series.

...Juerg


On Thu,  5 Dec 2024 13:50:43 +1100
Aaron Jauregui <aaron.jauregui at canonical.com> wrote:

> BugLink: https://bugs.launchpad.net/bugs/2088970
> 
> [Changes between v1 and v2]
> 
> kernel-snaps-u24.04:
>   - replaced TODO HACK FOR HOOKS
>   - updated nvidia userspace component type to standard
> 
> hooks:
>   - included install hook for the pc-kernel to install nouveau
>     component by default
> 
> [Impact]
> Snap components are a way to have optional content for snaps available
> for install without resorting to building a completely new snap. It's
> useful to think of them as lazy loading for snaps. Concretely, components
> are themselves snaps with locked-down functionality that are mounted
> within their parent snap's filesystem. Component revisions are tied 1 to
> 1 with their parent snap revision at upload time, meaning that any refresh
> also refreshes the components tied to the snap. This also means that
> components MUST be uploaded alongside the parent snap, or the store will
> reject the upload.
> 
> We use components here with the aim of providing a way for nvidia
> drivers to be selected for the pc-kernel without having to rebuild,
> targetting the nvidia-550 driver as a starting point with the aim of
> supporting more driver versions in the future. Since nouveau, currently
> included in the pc-kernel, conflicts with nvidia, we replace the nouveau
> .ko with a component compatible with the nvidia component scheme.
> 
> The implemented components rely on install, refresh, and remove hooks
> for the respective functionality. These are intended to be placed in
> canonical-kernel-snaps.
> 
> Nvidia components are mostly self-contained, but a few changes to the pc-kernel
> snap were required. files/meta/kernel.yaml is required to enable kernel
> module support in snapd. The kernel-gpu-2404 content interface is
> declared for exposing nvidia userspace libraries, and is not intended to
> be accessed directly by users.
> 
> [Test case]
> Nvidia components can be installed as follows:
> 
>  $ snap install pc-kernel+nvidia-550-ko pc-kernel+nvidia-550-user
> 
> The components install their files in $SNAP_DATA/modules/$(uname -r)/graphics
> 
> [Regression potential]
> There is potential for regressions to be introduced by the pc-kernel install
> hook, as it is executed on every install and and refresh event. If this
> script fails, the installation or update of the snap will abort.
> 
> Aaron Jauregui (1):
>   snapcraft.yaml: Add nvidia-550 and nouveau component support
> 
>  files/meta/kernel.yaml |   1 +
>  snapcraft.yaml         | 109 ++++++++++++++++++++++++++++++++++++++++-
>  2 files changed, 109 insertions(+), 1 deletion(-)
>  create mode 100644 files/meta/kernel.yaml
> 
> Aaron Jauregui (1):
>   nvidia-hooks: add hooks for nvidia kernel components
> 
>  hooks/install.module                   | 21 +++++++++++++++++++++
>  hooks/install.nvidia-ko                | 25 +++++++++++++++++++++++++
>  hooks/install.nvidia-user              | 18 ++++++++++++++++++
>  hooks/install.pc-kernel                |  6 ++++++
>  hooks/kernel-gpu-2404-provider-mangler | 12 ++++++++++++
>  hooks/remove.module                    | 13 +++++++++++++
>  hooks/remove.nvidia-ko                 |  6 ++++++
>  hooks/remove.nvidia-user               | 10 ++++++++++
>  8 files changed, 111 insertions(+)
>  create mode 100644 hooks/install.module
>  create mode 100644 hooks/install.nvidia-ko
>  create mode 100644 hooks/install.nvidia-user
>  create mode 100644 hooks/install.pc-kernel
>  create mode 100644 hooks/kernel-gpu-2404-provider-mangler
>  create mode 100644 hooks/remove.module
>  create mode 100644 hooks/remove.nvidia-ko
>  create mode 100644 hooks/remove.nvidia-user
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20241206/e6c1d3a7/attachment-0001.sig>


More information about the kernel-team mailing list