[Bug 1943816] Re: "ubuntu-drivers install" needs to be used when installing nvidia-driver if enabling "third-party packages"

Dirk Su 1943816 at bugs.launchpad.net
Tue Nov 23 01:48:02 UTC 2021


Previous discussion was at
https://chat.canonical.com/canonical/pl/1mgrhibwpj8ojxk89tbpztjdar. Due
to the design of ubiquity, it only use ubuntu-driver to get package list
and install package in 31ubuntu_driver_packages. But ubuntu-driver not
only install packages but also create configurations of Nvidia GPU. This
patch will copy configurations and calling prime-select to make sure it
get same result as calling "ubuntu-driver install" directly.

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1943816

Title:
  "ubuntu-drivers install" needs to be used when installing nvidia-
  driver if enabling "third-party packages"

Status in OEM Priority Project:
  Confirmed
Status in subiquity:
  New
Status in ubiquity package in Ubuntu:
  New
Status in ubuntu-drivers-common package in Ubuntu:
  Fix Released
Status in ubiquity source package in Focal:
  New
Status in ubuntu-drivers-common source package in Focal:
  New

Bug description:
  ubiquity calls
  ```
  ubuntu-drivers install $FREEONLY $NOOEM --package-list /run/ubuntu-drivers.autoinstall
  ```
  to generate package list during live system but "ubuntu-drivers install" not only install packages but also create some config files for switching nvidia mode (e.g. on-demand) and change the runtime config as well (e.g. modify the iniramfs).

  Thus, not only package list needs to be referred but also the
  configuration.

  ---

  In ubuntu-drivers-common, which read the "/run/ubuntu-drivers.autoinstall" to install package. It also skipping the nvidia-mode changing (made by ubuntu-drivers install).
  ```
  $ cat ubiquity/target-config/31ubuntu_driver_packages
  #!/bin/sh
  set -e

  # install all packages that "ubuntu-drivers autoinstall" installed into the
  # live system. Ubiquity calls this with --package-list /run/ubuntu-drivers.autoinstall

  PKGLIST=/run/ubuntu-drivers.autoinstall
  [ -e $PKGLIST ] || exit 0

  for p in `cat $PKGLIST`; do
      apt-install $p
  done
  ```

  ---

  We need to use a same approach to make sure the nvidia mode is same on
  a same system (either all handing by ubuntu-drivers install or change
  the logic to maintainer script in each package).

  ---

  [Impact]

   * According to Nvidia README, the RTD3 (Runtime D3) doesn't support on non-laptop machine
   * Install Ubuntu with "third-party packages" enabled, will not get same
     GPU configuration by running "ubuntu-drivers install"
   * Patch make system not enable RTD3 unless it's a laptop and set default GPU mode to "on-demand"

  [Test Plan]

   * Create Focal iso with live-build and import ubuntu-drivers-common from -proposed
   * Install Ubuntu on machine, in "Updates and other software" page select "Install third-party software for graphics and Wi-Fi hardware and additional media formats"
   * On laptop with Nvidia RTD3 supported GPU. The configuration file '/run/nvidia_runtimepm_supported' will be created.
   * Call "prime-select query" to make sure the default mode is "on-demand"

  [Where problems could occur]

   * With non-laptop machine use RTD3 supported GPU may use more power

  [Other Info]

   * For RTD3 (Runtime D3) doesn't support on non-laptop machine, refer
  to https://bugs.launchpad.net/oem-priority/+bug/1942788

To manage notifications about this bug go to:
https://bugs.launchpad.net/oem-priority/+bug/1943816/+subscriptions




More information about the Ubuntu-sponsors mailing list