curtin misidentify /dev/md126p3 as a multipath device, generates unbootable grub config
Bug #2094979 reported by
Yao Wei
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OEM Priority Project |
New
|
Undecided
|
Unassigned | ||
curtin |
Fix Committed
|
Undecided
|
Olivier Gayot | ||
subiquity |
Fix Released
|
Undecided
|
Unassigned | ||
subiquity (Ubuntu) |
Fix Released
|
Undecided
|
Olivier Gayot | ||
Noble |
Fix Released
|
Undecided
|
Olivier Gayot | ||
Plucky |
Fix Released
|
Undecided
|
Olivier Gayot |
Bug Description
(Note that it shares the same log as LP: #2094966)
We found that, on system with Intel firmware RAID (IMSM), when doing OEM factory reset and workaround the bug LP: #2094966 by forcing "layout.name: direct" installation to /dev/md126, subiquity can finish the installation, but curtin will install a GRUB config that forces device to boot into multipath device /dev/mapper/
Log suggests that it detects /dev/md126p3 as a multipath device, but it should not be.
Related branches
~ogayot/curtin:noble-raid-fixes
- Server Team CI bot: Approve (continuous-integration)
- Dan Bungert: Approve
- Chris Peterson: Approve
-
Diff: 1830 lines (+1649/-64)4 files modifiedcurtin/block/__init__.py (+3/-56)
curtin/storage_config.py (+29/-7)
tests/data/probert_storage_imsm_with_parts.json (+1560/-0)
tests/unittests/test_storage_config.py (+57/-1)
~ogayot/curtin:raid+multipath-drop-legacy
- Dan Bungert: Approve
- Michael Hudson-Doyle: Approve
- Chris Peterson: Approve
- Server Team CI bot: Approve (continuous-integration)
-
Diff: 91 lines (+3/-56)1 file modifiedcurtin/block/__init__.py (+3/-56)
~ogayot/curtin:raid+multipath
- Chris Peterson: Approve
- Server Team CI bot: Approve (continuous-integration)
-
Diff: 191 lines (+132/-5)2 files modifiedcurtin/block/__init__.py (+53/-5)
tests/unittests/test_block.py (+79/-0)
description: | updated |
Changed in curtin: | |
assignee: | nobody → Olivier Gayot (ogayot) |
Changed in subiquity (Ubuntu): | |
assignee: | nobody → Olivier Gayot (ogayot) |
Changed in curtin: | |
status: | New → In Progress |
Changed in subiquity (Ubuntu Noble): | |
assignee: | nobody → Olivier Gayot (ogayot) |
Changed in subiquity (Ubuntu Noble): | |
milestone: | none → ubuntu-24.04.3 |
Changed in curtin: | |
status: | In Progress → Fix Committed |
Changed in subiquity (Ubuntu Plucky): | |
status: | New → In Progress |
Changed in subiquity (Ubuntu Plucky): | |
status: | In Progress → Fix Committed |
Changed in subiquity (Ubuntu Noble): | |
status: | New → In Progress |
Changed in subiquity (Ubuntu Noble): | |
status: | In Progress → Fix Committed |
To post a comment you must log in.
For multipath issue I discovered that the legacy detection of multipath for RAID1 device might be the culprit, as they both share the same content:
legacy_ detect_ multipath found blkid info: {'/dev/loop1': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/nvme0n1p3': {'UUID': '7fbb4ad1- c9ed-4575- bdfd-54ac9622ac c2', 'BLOCK_SIZE': '4096', 'TYPE': 'ext4', 'PARTUUID': '0625db5b- 7af0-4e7d- b8a1-40fb6ab698 59'}, '/dev/nvme0n1p1': {'UUID': '50BA-7B2F', 'BLOCK_SIZE': '512', 'TYPE': 'vfat', 'PARTUUID': '7913070e- 7623-4697- a6c8-2d32cc96c6 40'}, '/dev/nvme0n1p2': {'UUID': 'F1EA-BF0A', 'BLOCK_SIZE': '512', 'TYPE': 'vfat', 'PARTUUID': '0b376157- 97ff-4ac7- b911-493f4b9397 7e'}, '/dev/loop8': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/loop15': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/loop6': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/loop13': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/loop4': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/loop11': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/loop2': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/loop0': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/loop9': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/md126p2': {'UUID': 'F1EA-BF0A', 'BLOCK_SIZE': '512', 'TYPE': 'vfat', 'PARTUUID': '0b376157- 97ff-4ac7- b911-493f4b9397 7e'}, '/dev/md126p3': {'UUID': '7fbb4ad1- c9ed-4575- bdfd-54ac9622ac c2', 'BLOCK_SIZE': '4096', 'TYPE': 'ext4', 'PARTUUID': '0625db5b- 7af0-4e7d- b8a1-40fb6ab698 59'}, '/dev/md126p1': {'UUID': '50BA-7B2F', 'BLOCK_SIZE': '512', 'TYPE': 'vfat', 'PARTUUID': '7913070e- 7623-4697- a6c8-2d32cc96c6 40'}, '/dev/loop16': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/loop7': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/nvme1n1p2': {'UUID': 'F1EA-BF0A', 'BLOCK_SIZE': '512', 'TYPE': 'vfat', 'PARTUUID': '0b376157- 97ff-4ac7- b911-493f4b9397 7e'}, '/dev/nvme1n1p3': {'UUID': '7fbb4ad1- c9ed-4575- bdfd-54ac9622ac c2', 'BLOCK_SIZE': '4096', 'TYPE': 'ext4', 'PARTUUID': '0625db5b- 7af0-4e7d- b8a1-40fb6ab698 59'}, '/dev/nvme1n1p1': {'UUID': '50BA-7B2F', 'BLOCK_SIZE': '512', 'TYPE': 'vfat', 'PARTUUID': '7913070e- 7623-4697- a6c8-2d32cc96c6 40'}, '/dev/loop14': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/loop5': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/loop12': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/loop3': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}, '/dev/loop10': {'BLOCK_SIZE': '131072', 'TYPE': 'squashfs'}} ALIGNMENT, DISC-ALN, DISC-GRAN, DISC-MAX, DISC-ZERO, FSTYPE, GROUP,KNAME, LABEL,LOG- SEC,MAJ: MIN,MIN- IO,MODE, MODEL,MOUNTPOIN T,NAME, OPT-IO, OWNER,PHY- SEC,RM, RO,ROTA, RQ-SIZE, SIZE,STATE, TYPE,UUID' ] with allowed return codes [0] (capture=True) c9ed-4575- bdfd-54ac9622ac c2
Running command ['lsblk', '--noheadings', '--bytes', '--pairs', '--output=
target_devs: ['/dev/md126p3']
/dev/md126p3: 7fbb4ad1-
Multipath detection found: True
Running command ['lsblk', '--noheadings', '--bytes', '--pairs', '--output= ALIGNMENT, DISC-ALN, DISC-GRAN, DISC-MAX, DISC-ZERO, FSTYPE, GROUP,KNAME, LABEL,LOG- SEC,MAJ: MIN,MIN- IO,MODE, MODEL,MOUNTPOIN T,NAME, OPT-IO, OWNER,PHY- SEC,RM, RO,ROTA, RQ-SIZE, SIZE,STATE, TYPE,UUID' ] with allowed return codes [0] (capture=True)
target_de...