9) dpkg -S can return multiple packages in one line, and also over
multiple lines, depending on what matches.

Example for one line with multiple packages:
$ dpkg -S /etc/grub.d
tuned, fwupd, grub-common, memtest86+: /etc/grub.d

And multiple lines:
$ dpkg -S grub.d
grub-common: /etc/grub.d/20_linux_xen
grub-common: /etc/grub.d/10_linux_zfs
memtest86+: /etc/grub.d/20_memtest86+
fwupd: /etc/grub.d/35_fwupd
grub-common: /etc/grub.d/25_bli
grub-common: /etc/grub.d/05_debian_theme
grub-common: /etc/grub.d/README
grub-common: /etc/grub.d/40_custom
grub-common: /etc/grub.d/30_os-prober
grub-common: /etc/grub.d/00_header
grub-common: /etc/grub.d/10_linux
grub-common: /etc/grub.d/41_custom
tuned, fwupd, grub-common, memtest86+: /etc/grub.d
tuned: /etc/grub.d/00_tuned
grub-common: /etc/grub.d/30_uefi-firmware
grub-common: /etc/default/grub.d

Is the symlink target of /etc/default/grub.d/oem-flavour.cfg guaranteed
to be owned by a single package in any ubuntu system?


10) How sure are we that the HWE kernel has the exact same functionality of the 
oem kernel? Why not update the OEM kernel to match the nvidia drivers?

11) Shouldn't there be a reboot notification in this update?

12) What is it that makes it a sure bet that removing that oem-flavor
symlink will leave the system with a bootable kernel? Or in other words,
what is guaranteeing that the HWE, or any other kernel, is installed?

13) Why is this being done in ubuntu-drivers-common, and not an oem-specific 
package? Perhaps even the one that puts that symlink in place?
ubuntu-drivers-common is seeded all over the place, and many (all?) users will 
get this update. Or is it that just nvidia users should have this package 
installed? I have it installed on my laptop, which has no nvidia card, btw.

14) Out of curiosity, I installed oem-somerville-lapras-meta
22.04ubuntu9 in a jammy vm. In its oem-somerville-lapras-meta.postinst
we see:

case "$1" in
    configure)
        mkdir -p /etc/default/grub.d/
        ln -sf /usr/share/oem-somerville-lapras-meta/oem-flavour.cfg 
/etc/default/grub.d/oem-flavour.cfg
        if [ -e /boot/grub/grub.cfg ] && command -v update-grub; then
            update-grub
        fi
    ;;
esac

So if oem-somerville-lapras-meta is reinstalled, or upgraded, won't it
just create the symlink again? Wouldn't this be the best place to a)
remove the symlink; b) not create it after some specific version?

15) Where is GRUB_FLAVOUR_ORDER used/defined? (This is more of a
curiosity question, as I haven't encountered this variable before). Is
it used by update-grub?

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to ubuntu-drivers-common in Ubuntu.
https://bugs.launchpad.net/bugs/2083657

Title:
  Remove oem-flavour.cfg for the OEM kernel retirement

Status in OEM Priority Project:
  In Progress
Status in ubuntu-drivers-common package in Ubuntu:
  Won't Fix
Status in ubuntu-drivers-common source package in Jammy:
  In Progress

Bug description:
  [ Impact ]

   * This issue affects all Ubuntu OEM preloaded systems that are still 
utilizing the OEM kernel, particularly those equipped with NVIDIA graphics 
drivers.
   * Systems may fail to boot properly due to an outdated OEM kernel 
conflicting with newer NVIDIA drivers, leading to a black screen on reboot.

  [ Test Plan ]

  * To verify the fix, ensure that the file 
`/etc/default/grub.d/oem-flavour.cfg` is successfully removed from the affected 
system after applying the update.
  * After the system reboots, check that it boots into the general HWE kernel 
rather than the OEM kernel.

  * Idempotency Testing:
    - Perform the upgrade multiple times on the same system to verify that the 
upgrade process is idempotent, ensuring that repeated upgrades do not result in 
unexpected behavior or changes.

  * Non-OEM System Testing:
    - Test the upgrade on a system without OEM kernels to ensure that the 
upgrade does not affect systems that are not preloaded with the OEM kernel.
    - Confirm that the system continues to function normally and boots into the 
correct kernel after the update.

  [ Where problems could occur ]

   * Removing `/etc/default/grub.d/oem-flavour.cfg` may cause systems relying 
on the OEM kernel for specific hardware compatibility to lose access to certain 
OEM-specific optimizations.
   * There is a low risk that after removing the OEM kernel, some hardware 
features may not function as expected if the general HWE kernel does not fully 
support them.

  [ Other Info ]

   * This patch is targeted only for Ubuntu 22.04 and its associated OEM 
kernels.
   * The issue is specific to systems using NVIDIA drivers in conjunction with 
an outdated OEM kernel, which conflicts with updates to the HWE kernel and 
NVIDIA packages.

  1) The release of Ubuntu you are using, via 'lsb_release -rd' or System -> 
About $ lsb_release -rd
  Description:  Ubuntu 22.04.4 LTS
  Release:      22.04
  $ ubuntu-report show | grep DCD
      "DCD": "canonical-oem-sutton-jammy-amd64-20240606-874"

  2) The version of the package you are using, via 'apt-cache policy pkgname' 
or by checking in Software Center
  $ apt-cache policy ubuntu-drivers-common
  ubuntu-drivers-common:
    Installed: 1:0.9.6.2~0.22.04.6
    Candidate: 1:0.9.6.2~0.22.04.7
    Version table:
       1:0.9.6.2~0.22.04.7 500
          500 http://tw.archive.ubuntu.com/ubuntu jammy-updates/main amd64 
Packages
   *** 1:0.9.6.2~0.22.04.6 100
          100 /var/lib/dpkg/status
       1:0.9.6.1 500
          500 http://tw.archive.ubuntu.com/ubuntu jammy/main amd64 Packages

  3) What you expected to happen

   * The system should seamlessly upgrade NVIDIA drivers and the HWE
  kernel without breaking the boot process. The system should boot into
  the latest supported HWE kernel without encountering compatibility
  issues with the NVIDIA drivers.

  4) What happened instead

   * After unattended-upgrades, the system rebooted into the OEM kernel,
  which is outdated and incompatible with the new NVIDIA drivers. As a
  result, the screen remained black upon reboot.

  We need to remove /etc/default/grub.d/oem-flavour.cfg to avoid the
  system booting from deprecated OEM kernels.

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


-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to