[Bug 1892365] [NEW] Kernel parameter handling issue in EFI boot mode + work-around

Thomas Dreibholz 1892365 at bugs.launchpad.net
Thu Aug 20 13:17:41 UTC 2020


Public bug reported:

I am trying to create Packer autoinstall images with EFI boot using the
new autoinstaller. With EFI boot mode, I noticed a kernel parameter
handling issue.

Starting with a Ubuntu Server 20.04.1 ISO, I can boot the kernel of the ISO by providing the following command line parameter in *BIOS* boot mode:
      "boot_wait": "5s",
      "boot_command": [
        "<enter><enter><f6><esc><wait> ",
        "autoinstall ds=nocloud-net;seedfrom=http://{{ .HTTPIP }}:{{ .HTTPPort }}/",
        "<wait>"
       ]

However, the same approach fails in *EFI* boot mode:
      "boot_wait": "3s",
      "boot_command": [
          "<esc><wait>",
          "<esc><wait>",
          "linux /casper/vmlinuz --- autoinstall ds=nocloud-net;seedfrom=http://{{ .HTTPIP }}:{{ .HTTPPort }}/<enter><wait>",
          "initrd /casper/initrd<enter><wait>"
       ]

Checking /proc/cmdline, I noticed that in this case it is "...
autoinstall ds=nocloud-net". The part after the semicolon is cut off.

Fix is to use quotes (") for ds="...". Then, the cmdline of the booted kernel will be correct:
      "boot_command": [
          "<esc><wait>",
          "<esc><wait>",
          "linux /casper/vmlinuz --- autoinstall ds=\"nocloud-net;seedfrom=http://{{ .HTTPIP }}:{{ .HTTPPort }}/\"<enter><wait>",
          "initrd /casper/initrd<enter><wait>"
       ]

ProblemType: Bug
DistroRelease: Ubuntu 20.04
Package: grub-efi-amd64-bin 2.04-1ubuntu26.2
ProcVersionSignature: Ubuntu 5.4.0-42.46-generic 5.4.44
Uname: Linux 5.4.0-42-generic x86_64
ApportVersion: 2.20.11-0ubuntu27.6
Architecture: amd64
CasperMD5CheckResult: skip
CurrentDesktop: KDE
Date: Thu Aug 20 15:10:56 2020
InstallationDate: Installed on 2020-01-21 (212 days ago)
InstallationMedia: Kubuntu 20.04 LTS "Focal Fossa" - Alpha amd64 (20200117.1)
SourcePackage: grub2
UpgradeStatus: No upgrade log present (probably fresh install)

** Affects: grub
     Importance: Undecided
         Status: New

** Affects: grub2 (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug focal

** Also affects: grub
   Importance: Undecided
       Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to grub2 in Ubuntu.
https://bugs.launchpad.net/bugs/1892365

Title:
  Kernel parameter handling issue in EFI boot mode + work-around

Status in grub:
  New
Status in grub2 package in Ubuntu:
  New

Bug description:
  I am trying to create Packer autoinstall images with EFI boot using
  the new autoinstaller. With EFI boot mode, I noticed a kernel
  parameter handling issue.

  Starting with a Ubuntu Server 20.04.1 ISO, I can boot the kernel of the ISO by providing the following command line parameter in *BIOS* boot mode:
        "boot_wait": "5s",
        "boot_command": [
          "<enter><enter><f6><esc><wait> ",
          "autoinstall ds=nocloud-net;seedfrom=http://{{ .HTTPIP }}:{{ .HTTPPort }}/",
          "<wait>"
         ]

  However, the same approach fails in *EFI* boot mode:
        "boot_wait": "3s",
        "boot_command": [
            "<esc><wait>",
            "<esc><wait>",
            "linux /casper/vmlinuz --- autoinstall ds=nocloud-net;seedfrom=http://{{ .HTTPIP }}:{{ .HTTPPort }}/<enter><wait>",
            "initrd /casper/initrd<enter><wait>"
         ]

  Checking /proc/cmdline, I noticed that in this case it is "...
  autoinstall ds=nocloud-net". The part after the semicolon is cut off.

  Fix is to use quotes (") for ds="...". Then, the cmdline of the booted kernel will be correct:
        "boot_command": [
            "<esc><wait>",
            "<esc><wait>",
            "linux /casper/vmlinuz --- autoinstall ds=\"nocloud-net;seedfrom=http://{{ .HTTPIP }}:{{ .HTTPPort }}/\"<enter><wait>",
            "initrd /casper/initrd<enter><wait>"
         ]

  ProblemType: Bug
  DistroRelease: Ubuntu 20.04
  Package: grub-efi-amd64-bin 2.04-1ubuntu26.2
  ProcVersionSignature: Ubuntu 5.4.0-42.46-generic 5.4.44
  Uname: Linux 5.4.0-42-generic x86_64
  ApportVersion: 2.20.11-0ubuntu27.6
  Architecture: amd64
  CasperMD5CheckResult: skip
  CurrentDesktop: KDE
  Date: Thu Aug 20 15:10:56 2020
  InstallationDate: Installed on 2020-01-21 (212 days ago)
  InstallationMedia: Kubuntu 20.04 LTS "Focal Fossa" - Alpha amd64 (20200117.1)
  SourcePackage: grub2
  UpgradeStatus: No upgrade log present (probably fresh install)

To manage notifications about this bug go to:
https://bugs.launchpad.net/grub/+bug/1892365/+subscriptions



More information about the foundations-bugs mailing list