Round up ROOTFS_SIZE after base_size check
v3 cover Round up ROOTFS_SIZE after base_size check
V3:
Do the whole thing in the same awk
The following changes since commit 0f55a5868457300a3defc7fa7451ef191d19e018:
adt-installer: Allow changing YOCTOADT_REPO (2012-09-05 23:28:10 +0100)
are available in the git repository at:
git://git.yoctoproject.org/poky-contrib ag/rootfs_size
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=ag/rootfs_size
Andrei Gherzan (1):
image_types.bbclass: Round up ROOTFS_SIZE after base_size check
meta/classes/image_types.bbclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
Signature · 1 line
1.7.9.5
PATCH v3 1/1 image_types.bbclass: Round up ROOTFS_SIZE after base_size check
If we round up ROOTFS_SIZE to IMAGE_ROOTFS_ALIGNMENT before checking if base_size is greater then IMAGE_ROOTFS_SIZE, we can end up adding an unaligned value to IMAGE_ROOTFS_SIZE. Obviously, if IMAGE_ROOTFS_EXTRA_SPACE was overwritten with an unaligned value. So let's add the round up code after the base_size calculus and it's comparison.
--- meta/classes/image_types.bbclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
meta/classes/image_types.bbclass +3 -3
@@ -82,9 +82,9 @@ runimagecmd () { # The base_size gets calculated: # - initial size determined by `du -ks` of the IMAGE_ROOTFS # - then multiplied by the IMAGE_OVERHEAD_FACTOR - # - then rounded up to IMAGE_ROOTFS_ALIGNMENT - # - finally tested against IMAGE_ROOTFS_SIZE - ROOTFS_SIZE=`du -ks ${IMAGE_ROOTFS}|awk '{base_size = $1 * ${IMAGE_OVERHEAD_FACTOR} + ${IMAGE_ROOTFS_ALIGNMENT} - 1; base_size -= base_size % ${IMAGE_ROOTFS_ALIGNMENT}; print ((base_size > ${IMAGE_ROOTFS_SIZE} ? base_size : ${IMAGE_ROOTFS_SIZE}) + ${IMAGE_ROOTFS_EXTRA_SPACE}) }'` + # - tested against IMAGE_ROOTFS_SIZE + # - round up ROOTFS_SIZE to IMAGE_ROOTFS_ALIGNMENT + ROOTFS_SIZE=`du -ks ${IMAGE_ROOTFS} | awk '{base_size = $1 * ${IMAGE_OVERHEAD_FACTOR}; base_size = ((base_size > ${IMAGE_ROOTFS_SIZE} ? base_size : ${IMAGE_ROOTFS_SIZE}) + ${IMAGE_ROOTFS_EXTRA_SPACE}); if (base_size != int(base_size)) base_size = int(base_size + 1); base_size = base_size + ${IMAGE_ROOTFS_ALIGNMENT} - 1; base_size -= base_size % ${IMAGE_ROOTFS_ALIGNMENT}; print base_size }'` ${cmd} # Now create the needed compressed versions cd ${DEPLOY_DIR_IMAGE}/
Signature · 1 line
1.7.9.5
Saul Wold
AppliedQuoted 9 lines · Andrei Gherzan
V3:
Do the whole thing in the same awkThe following changes since commit
0f55a5868457300a3defc7fa7451ef191d19e018:adt-installer: Allow changing YOCTOADT_REPO (2012-09-05 23:28:10 +0100)are available in the git repository at:
Quoted 9 lines
git://git.yoctoproject.org/poky-contribag/rootfs_size
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=ag/rootfs_sizeAndrei Gherzan (1):
image_types.bbclass: Round upROOTFS_SIZEafterbase_sizecheckmeta/classes/image_types.bbclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
Merged into OE-Core
Thanks
Sau!