grub-installer might not install to the PReP partition of NVMe disks
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
grub-installer (Ubuntu) |
Fix Released
|
High
|
Mathieu Trudel-Lapierre | ||
Xenial |
Fix Released
|
High
|
Mathieu Trudel-Lapierre |
Bug Description
[Impact]
NVMe installs on ppc64el for PReP.
[Test case]
Attempt to install Ubuntu on a ppc64el where a PReP partition is required; make sure to put the new PReP partition on the NVMe disk. See Problem Description below.
[Regression Potential]
Any failure to install PReP on ppc64el on a system with NVMe should be considered a regression of this bug.
----
== Comment: #0 - Mauricio Faria De Oliveira - 2017-01-12 05:22:08 ==
---Problem Description---
On ppc64el, the grub-installer script attempts to detect which PReP partition is in the same disk as of the installed system, in order to install grub into it.
This check is not working properly for NVMe devices, and needs an update.
It might result in overwriting the PReP partition of another disk, possibly another Linux distro/version, which is unrelated to the current installation.
Patches for Xenial and Zesty are attached.
Problem example:
---
- PReP partition actually is '/dev/nvme1n1p1'
- PReP partition detected is '/dev/sda1'
~ # /usr/lib/
/dev/sda1
/dev/nvme1n1p1
/dev/nvme0n1p1
~ # grep grub-install /var/log/syslog
...
Jan 11 22:17:25 main-menu[518]: INFO: Menu item 'grub-installer' selected
Jan 11 22:17:25 grub-installer: info: architecture: ppc64el/chrp_ibm
Jan 11 22:17:29 grub-installer: info: Identified partition label for /dev/nvme1n1p2: gpt
Jan 11 22:17:29 grub-installer: info: Wiping PReP partition /dev/sda1
...
Jan 11 22:17:33 grub-installer: info: Running chroot /target grub-install --force "/dev/sda1"
...
Jan 11 22:17:33 grub-installer: info: grub-install ran successfully
~ # in-target ofpathname /dev/sda1
~ # in-target nvram --print-
~ # tail -n2 /var/log/syslog
... in-target: /pci@8000000200
... in-target: /pci@8000000200
Patch applied:
---
~ # grep grub-installer /var/log/syslog
...
Jan 11 23:59:25 main-menu[518]: INFO: Menu item 'grub-installer' selected
Jan 11 23:59:25 grub-installer: info: architecture: ppc64el/chrp_ibm
Jan 11 23:59:27 grub-installer: info: Identified partition label for /dev/nvme1n1p2: gpt
Jan 11 23:59:27 grub-installer: info: Wiping PReP partition /dev/nvme1n1p1
...
Jan 11 23:59:30 grub-installer: info: Running chroot /target grub-install --force "/dev/nvme1n1p1"
...
Jan 11 23:59:31 grub-installer: info: grub-install ran successfully
~ # in-target nvram --print-
~ # tail -n1 /var/log/syslog
... in-target: /pci@8000000200
After reboot of installation done:
0 > printenv boot-device
-------------- Partition: common -------- Signature: 0x70 ---------------
boot-device /pci@8000000200
== Comment: #1 - Mauricio Faria De Oliveira <email address hidden> - 2017-01-12 05:24:08 ==
Patch for Xenial
== Comment: #2 - Mauricio Faria De Oliveira <email address hidden> - 2017-01-12 05:24:26 ==
Patch for Zesty.
description: | updated |
Changed in grub-installer (Ubuntu Xenial): | |
importance: | Undecided → High |
status: | New → In Progress |
assignee: | nobody → Mathieu Trudel-Lapierre (cyphermox) |
Changed in grub-installer (Ubuntu): | |
milestone: | none → ubuntu-17.01 |
Default Comment by Bridge