blkid-print: handle /dev/vdX devices 19/317919/2
authorJacek Kryszyn <j.kryszyn@samsung.com>
Tue, 10 Sep 2024 05:00:04 +0000 (07:00 +0200)
committerJacek Kryszyn <j.kryszyn@samsung.com>
Fri, 20 Sep 2024 11:58:07 +0000 (13:58 +0200)
In QEMU virtual disks are named /dev/vdX. blkid-print
would put "p" letter between "vdX" and the number of
a device. This change fixes the issue.

Change-Id: I523ce5837f3c2ca727ad41875a51cde3fe872fa4

src/blkid-print/blkid-print.c

index 05d5f5d947149398eaf932744469df66afe5e930..6c6d6ef3ca780d1282de87c5a06e8174ee6da660 100644 (file)
@@ -119,9 +119,10 @@ int main(int argc, char *argv[]) {
        }
        const char *part_label = blkid_partition_get_name(part);
        char part_path[PATH_MAX];
-       // /dev/sda1 vs /dev/mmcblk0p1 /dev/nvme0n1p1
+       // /dev/sda1 /dev/vda1 vs /dev/mmcblk0p1 /dev/nvme0n1p1
        // no_separator vs "p" separator
-       if (strncmp("/dev/sd", device_name, strlen("/dev/sd")) == 0)
+       if (strncmp("/dev/sd", device_name, strlen("/dev/sd")) == 0 ||
+               strncmp("/dev/vd", device_name, strlen("/dev/vd")) == 0)
                snprintf(part_path, PATH_MAX, "%s%d", device_name, part_nr);
        else
                snprintf(part_path, PATH_MAX, "%sp%d", device_name, part_nr);