]> code.ossystems Code Review - openembedded-core.git/commitdiff
image-live: fix check for rootfs size with hddimg images
authorAnuj Mittal <anuj.mittal@intel.com>
Tue, 10 Jul 2018 08:41:41 +0000 (16:41 +0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 13 Jul 2018 15:32:38 +0000 (16:32 +0100)
Currently we check if the rootfs.img size is greater than 4 GB and use
mcopy to copy it over to a hddimg, a FAT32 volume.

This results in problems when IMAGE_ROOTFS_SIZE is set to be exact 4 GB
(4294967296 bytes). mcopy uses the max offset/file size to be 4294967295
and as a result, it errors out without any warning to the user.

Change the 4 GB check to '-ge' to catch these cases. Since we allow
IMAGE_ROOTFS_SIZE to be in KBs, the maximum allowed is 4194303 KB. Also,
tweaked the error message to refer to wic too.

Fixes [YOCTO #12776]

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
meta/classes/image-live.bbclass

index 942298a7ce3d2f190e2bc2028dc65104c937a517..af71be5093dc0e1363aa9850ba9b86d6546ce2e5 100644 (file)
@@ -230,11 +230,11 @@ build_hddimg() {
                if [ -f ${HDDDIR}/rootfs.img ]; then
                        rootfs_img_size=`stat -c '%s' ${HDDDIR}/rootfs.img`
                        max_size=`expr 4 \* 1024 \* 1024 \* 1024`
-                       if [ $rootfs_img_size -gt $max_size ]; then
-                               bberror "${HDDDIR}/rootfs.img execeeds 4GB,"
-                               bberror "this doesn't work on FAT filesystem, you can try either of:"
-                               bberror "1) Reduce the size of rootfs.img"
-                               bbfatal "2) Use iso, vmdk or vdi to instead of hddimg\n"
+                       if [ $rootfs_img_size -ge $max_size ]; then
+                               bberror "${HDDDIR}/rootfs.img rootfs size is greather than or equal to 4GB,"
+                               bberror "and this doesn't work on a FAT filesystem. You can either:"
+                               bberror "1) Reduce the size of rootfs.img, or,"
+                               bbfatal "2) Use wic, vmdk or vdi instead of hddimg\n"
                        fi
                fi