From bdaba95af2b2c9174311374436f184d2a927f6f1 Mon Sep 17 00:00:00 2001 From: Ed Bartosh Date: Sun, 26 Mar 2017 18:28:04 +0300 Subject: wic: fix generation of partition UUID Partition UUID for msdos partitioning is based on a 4 bytes long system identifier. Wic uses random number to generate system identifier. For the numbers starting with 0 partition uuid is shorter, which makes wic images non-bootable as kernel expects 8 charactest in PARTUUID parameter. Padded system identifier with '0' when generating partition UUID to make it always 8 characters long. This should fix the boot issue. Signed-off-by: Ed Bartosh Signed-off-by: Richard Purdie --- scripts/lib/wic/plugins/imager/direct.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/lib/wic/plugins/imager/direct.py b/scripts/lib/wic/plugins/imager/direct.py index 7d38ab34fb..67fd183670 100644 --- a/scripts/lib/wic/plugins/imager/direct.py +++ b/scripts/lib/wic/plugins/imager/direct.py @@ -323,7 +323,7 @@ class PartitionedImage(): if self.ptable_format == 'gpt': part.uuid = str(uuid.uuid4()) else: # msdos partition table - part.uuid = '%0x-%02d' % (self.identifier, part.realnum) + part.uuid = '%08x-%02d' % (self.identifier, part.realnum) def prepare(self, imager): """Prepare an image. Call prepare method of all image partitions.""" -- cgit 1.2.3-korg