wic: Fix updating fstab for nvme devices

In case wks file references nvme, update_fstab() function will not add
prefix 'p' before the partition number, as the if condition only takes
mmcblk into consideration.

In case of nvme0n1 this leads that following entries are added to fstab:

    /dev/nvme0n11
    /dev/nvme0n13

instead of:

    /dev/nvme0n1p1
    /dev/nvme0n1p3

The patch fixes this as it extends the if condition and adds prefix 'p' for
both mmcblk and nvme.

Upstream-Status: Backport [https://git.yoctoproject.org/wic/commit/?id=f20cda73b495b75ef399c331f59b0e2401a3e76a]
(From OE-Core rev: 5dde0ae4c9592091935eca63beacd3af28ac508a)

Signed-off-by: Aleksandar Nikolic <aleksandar.nikolic@zeiss.com>
Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Paul Barker <paul@pbarker.dev>
This commit is contained in:
Aleksandar Nikolic
2026-06-21 15:25:19 -05:00
committed by Paul Barker
parent a184998193
commit 3b4d998c7a

View File

@@ -133,8 +133,8 @@ class DirectPlugin(ImagerPlugin):
elif part.use_label:
device_name = "LABEL=%s" % part.label
else:
# mmc device partitions are named mmcblk0p1, mmcblk0p2..
prefix = 'p' if part.disk.startswith('mmcblk') else ''
# mmc and nvme device partitions start with prefix 'p'
prefix = 'p' if part.disk.startswith(('mmcblk', 'nvme')) else ''
device_name = "/dev/%s%s%d" % (part.disk, prefix, part.realnum)
opts = part.fsopts if part.fsopts else "defaults"
@@ -266,7 +266,7 @@ class DirectPlugin(ImagerPlugin):
elif part.label and self.ptable_format != 'msdos':
return "PARTLABEL=%s" % part.label
else:
suffix = 'p' if part.disk.startswith('mmcblk') else ''
suffix = 'p' if part.disk.startswith(('mmcblk', 'nvme')) else ''
return "/dev/%s%s%-d" % (part.disk, suffix, part.realnum)
def cleanup(self):