[Bug 1993541] Re: initramfs need to mount efivarfs because kernel 6.0 deprecated 'efivars' sysfs interface

Cyrus Lien 1993541 at bugs.launchpad.net
Thu May 18 03:33:26 UTC 2023


** Description changed:

  [ Impact ]
  
  kernel 6.0 deprecated efivars sysfs interface [1]. For Intel VROC RAID,
  mdadm needs initramfs to mount efivarfs instead.
  
  [1] The commit:
  commit 0f5b2c69a4cbe4166ca24b76d5ada98ed2867741
  Author: Ard Biesheuvel <ardb at kernel.org>
  Date: Mon Jun 20 13:34:03 2022 +0200
  
      efi: vars: Remove deprecated 'efivars' sysfs interface
  
  [ Test Plan ]
  
- 1. Install initramfs-tools
- 2. update-initramfs -u
- 3. unmkinitramfs initrd.img-`uname -r` /tmp/extract-initramfs
- 4. Check if boot script 00_mount_efivarfs exists in directory /tmp/extract-initramfs/main/scripts/init-top/
- 5. Check /tmp/extract-initramfs/main/scripts/init-top/ORDER if the boot script 00_mount_efivarfs will be execute before udev.
+ 1. Install mdadm (4.2-0ubuntu2) from -proposed.
+ 2. Adding test script init-top/01_check_mount to list all mounted filesystems to initramfs.debug.
+ 3. Adding test script init-bottom/zz_check_mount to list all mounted filesystems to initramfs.debug.
+ 3. update-initramfs -u
+ 4. Append "debug" to GRUB_CMDLINE_LINUX_DEFAULT then sudo update-grub.
+ 5. Reboot and check /var/run/initramfs/initramfs.debug if the boot script 00_mount_efivarfs will be executed before udev.
+ 
+ [Test script] 01_check_mount and zz_check_mount are identical.
+ 
+ #!/bin/sh
+ 
+ PREREQ=""
+ prereqs()
+ {
+  echo "$PREREQ"
+ }
+ case $1 in
+ # get pre-requisites
+ prereqs)
+  prereqs
+  exit 0
+  ;;
+ esac
+ 
+ echo "$(mount)"
  
  [ Where problems could occur ]
  
  Not sure if there any other tools/utilities also need to mount efivarfs as early as mdadm but the probability of file conflict should be very low.
  Also, there are no impact mounting efivarfs multiple times.
  mount: /sys/firmware/efi/efivars: efivarfs already mounted on /sys/firmware/efi/efivars.
  
  [ Scope ]
  
- Jammy
+ Jammy, Kinetic, Lunar, Mantic
  
  [ Other Info ]
  
  The private bug link https://bugs.launchpad.net/somerville/+bug/1990231

-- 
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/1993541

Title:
  initramfs need to mount efivarfs because kernel 6.0 deprecated
  'efivars' sysfs interface

Status in OEM Priority Project:
  In Progress
Status in mdadm package in Ubuntu:
  Fix Committed
Status in mdadm source package in Jammy:
  Fix Committed
Status in mdadm source package in Kinetic:
  Fix Committed
Status in mdadm source package in Lunar:
  Fix Committed
Status in mdadm package in Debian:
  Fix Released

Bug description:
  [ Impact ]

  kernel 6.0 deprecated efivars sysfs interface [1]. For Intel VROC
  RAID, mdadm needs initramfs to mount efivarfs instead.

  [1] The commit:
  commit 0f5b2c69a4cbe4166ca24b76d5ada98ed2867741
  Author: Ard Biesheuvel <ardb at kernel.org>
  Date: Mon Jun 20 13:34:03 2022 +0200

      efi: vars: Remove deprecated 'efivars' sysfs interface

  [ Test Plan ]

  1. Install mdadm (4.2-0ubuntu2) from -proposed.
  2. Adding test script init-top/01_check_mount to list all mounted filesystems to initramfs.debug.
  3. Adding test script init-bottom/zz_check_mount to list all mounted filesystems to initramfs.debug.
  3. update-initramfs -u
  4. Append "debug" to GRUB_CMDLINE_LINUX_DEFAULT then sudo update-grub.
  5. Reboot and check /var/run/initramfs/initramfs.debug if the boot script 00_mount_efivarfs will be executed before udev.

  [Test script] 01_check_mount and zz_check_mount are identical.

  #!/bin/sh

  PREREQ=""
  prereqs()
  {
   echo "$PREREQ"
  }
  case $1 in
  # get pre-requisites
  prereqs)
   prereqs
   exit 0
   ;;
  esac

  echo "$(mount)"

  [ Where problems could occur ]

  Not sure if there any other tools/utilities also need to mount efivarfs as early as mdadm but the probability of file conflict should be very low.
  Also, there are no impact mounting efivarfs multiple times.
  mount: /sys/firmware/efi/efivars: efivarfs already mounted on /sys/firmware/efi/efivars.

  [ Scope ]

  Jammy, Kinetic, Lunar, Mantic

  [ Other Info ]

  The private bug link
  https://bugs.launchpad.net/somerville/+bug/1990231

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




More information about the Ubuntu-sponsors mailing list