From: Marek Vasut Date: Tue, 27 Jul 2021 16:25:04 +0000 (+0200) Subject: image_types: Restore pre-btrfs-tools 4.14.1 mkfs.btrfs shrink behavior X-Git-Tag: 2021-04.3~16 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=6a72c7c688c7985d19f0387121b3a77639ba6f60;p=openembedded-core.git image_types: Restore pre-btrfs-tools 4.14.1 mkfs.btrfs shrink behavior Currently the mkfs.btrfs generates large images with a lot of wasted space. This happens since OE-core updated btrfs-tools from 4.13.3 to 4.15.1 in commit 94b645aa77 ("btrfs-tools: update to 4.15.1") . Note in mkfs.btrfs(8) manpage section -r says the following: " -r|--rootdir ... Note This option may enlarge the image or file to ensure it’s big enough to contain the files from rootdir. Since version 4.14.1 the filesystem size is not minimized. Please see option --shrink if you need that functionality. --shrink Shrink the filesystem to its minimal size, only works with --rootdir option. ... Note prior to version 4.14.1, the shrinking was done automatically. " Add the --shrink option to EXTRA_IMAGECMD_btrfs to reinstate the original behavior and un-waste the space. Signed-off-by: Marek Vasut Cc: Alexander Kanavin Cc: Richard Purdie Cc: Ross Burton Signed-off-by: Alexandre Belloni Signed-off-by: Richard Purdie (cherry picked from commit c4a99d36967302c176b62fad840b5e79486ea356) Signed-off-by: Anuj Mittal --- diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass index 8028691405..cee577d5da 100644 --- a/meta/classes/image_types.bbclass +++ b/meta/classes/image_types.bbclass @@ -225,7 +225,7 @@ EXTRA_IMAGECMD_jffs2 ?= "--pad ${JFFS2_ENDIANNESS} --eraseblock=${JFFS2_ERASEBLO EXTRA_IMAGECMD_ext2 ?= "-i 4096" EXTRA_IMAGECMD_ext3 ?= "-i 4096" EXTRA_IMAGECMD_ext4 ?= "-i 4096" -EXTRA_IMAGECMD_btrfs ?= "-n 4096" +EXTRA_IMAGECMD_btrfs ?= "-n 4096 --shrink" EXTRA_IMAGECMD_f2fs ?= "" do_image_cpio[depends] += "cpio-native:do_populate_sysroot"