[OE-core] [PATCH] image_types: add IMAGE_ROOTFS_ALIGNMENT

Saul Wold sgw at linux.intel.com
Fri Mar 2 00:44:21 UTC 2012


On 03/01/2012 12:55 PM, Ken Werner wrote:
> Introduce a new variable called IMAGE_ROOTFS_ALIGNMENT that allows to control
> the aligment of the size of the rootfs. Its default value is set to 1KiB so
> that the existing behaviour is not changed. In case the SD card emulation of
> a QEMU system emulator gets used you may set the alignment to 2MiB.
> ---
>   meta/classes/image_types.bbclass |   12 +++++++++++-
>   1 files changed, 11 insertions(+), 1 deletions(-)
>
> diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass
> index f756c39..314d6d1 100644
> --- a/meta/classes/image_types.bbclass
> +++ b/meta/classes/image_types.bbclass
> @@ -55,9 +55,19 @@ def get_imagecmds(d):
>           cmds += "\n" + localdata.getVar("runimagecmd", True)
>       return cmds
>
> +# The default aligment of the size of the rootfs is set to 1KiB. In case
> +# you're using the SD card emulation of a QEMU system simulator you may
> +# set this value to 2048 (2MiB alignment).
> +IMAGE_ROOTFS_ALIGNMENT ?= "1"
> +
>   runimagecmd () {
>   	# Image generation code for image type ${type}
> -	ROOTFS_SIZE=`du -ks ${IMAGE_ROOTFS}|awk '{base_size = ($1 * ${IMAGE_OVERHEAD_FACTOR});  OFMT = "%.0f" ; print ((base_size>  ${IMAGE_ROOTFS_SIZE} ? base_size : ${IMAGE_ROOTFS_SIZE}) + ${IMAGE_ROOTFS_EXTRA_SPACE}) }'`
> +	# 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}) }'`
>   	${cmd}
Is there a reason you removed the OFMT from this line?

Sau!

>   	# Now create the needed compressed versions
>   	cd ${DEPLOY_DIR_IMAGE}/




More information about the Openembedded-core mailing list