summaryrefslogtreecommitdiffstats
path: root/meta/lib/oe/utils.py
diff options
context:
space:
mode:
authorAndré Draszik <git@andred.net>2020-03-03 16:05:10 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-03-06 08:17:26 +0000
commitc6dda204e15c5b27559f7617b18a7b3ce604e2f8 (patch)
tree7d7e673c89f3275baae7eb56c89decc7ea670e17 /meta/lib/oe/utils.py
parent0616a5dbc61561fefcd1822ce263837437466df2 (diff)
downloadopenembedded-core-contrib-c6dda204e15c5b27559f7617b18a7b3ce604e2f8.tar.gz
lib/oe/utils: allow to set a lower bound on returned cpu_count()
This will be needed for making xz compression more deterministic, as xz archives are created differently in single- vs multi-threaded modes. This means that due to bitbake's default of using as many threads as there are cores in the system, files compressed with xz will be different if built on a multi-core system compared to single-core systems. Allowing cpu_count() here to return a lower bound, will allow forcing xz to always use multi-threaded operation. Signed-off-by: André Draszik <git@andred.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oe/utils.py')
-rw-r--r--meta/lib/oe/utils.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
index e350b05ddf..aee4336482 100644
--- a/meta/lib/oe/utils.py
+++ b/meta/lib/oe/utils.py
@@ -248,9 +248,10 @@ def trim_version(version, num_parts=2):
trimmed = ".".join(parts[:num_parts])
return trimmed
-def cpu_count():
+def cpu_count(at_least=1):
import multiprocessing
- return multiprocessing.cpu_count()
+ cpus = multiprocessing.cpu_count()
+ return max(cpus, at_least)
def execute_pre_post_process(d, cmds):
if cmds is None: