[OE-core] [PATCH] image.py: make sure ROOTFS_SIZE is an integer
Mike Looijmans
mike.looijmans at topic.nl
Thu Sep 17 07:01:07 UTC 2015
Suggestion: Why bother so much about that last bit? If floats are being used
(I suspect because "overhead_factor" is float), any bit-perfect accuracy has
been thrown out the window anyway.
I suggest just saying "base_size = int(size_kb * overhead_factor)", and be
done with it. If someone specifies "overhead_factor=1.2" or something, he
really is not going to care about that last bit being rounded upwards. If
everything is integer anyway, it will still be bit-perfect.
On 17-09-15 05:55, Jonathan Liu wrote:
> _get_rootfs_size was returning a float in some cases (e.g. 12288.0).
>
> Signed-off-by: Jonathan Liu <net147 at gmail.com>
> ---
> meta/lib/oe/image.py | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/meta/lib/oe/image.py b/meta/lib/oe/image.py
> index 2361955..f8aa88b 100644
> --- a/meta/lib/oe/image.py
> +++ b/meta/lib/oe/image.py
> @@ -1,6 +1,7 @@
> from oe.utils import execute_pre_post_process
> import os
> import subprocess
> +import math
> import multiprocessing
>
>
> @@ -169,10 +170,7 @@ class Image(ImageDepGraph):
> base_size = size_kb * overhead_factor
> base_size = (base_size, rootfs_req_size)[base_size < rootfs_req_size] + \
> rootfs_extra_space
> -
> - if base_size != int(base_size):
> - base_size = int(base_size + 1)
> -
> + base_size = int(math.ceil(base_size))
> base_size += rootfs_alignment - 1
> base_size -= base_size % rootfs_alignment
>
>
More information about the Openembedded-core
mailing list