Commit Graph

3236 Commits

Author SHA1 Message Date
Ross Burton
a1fc8f9944 oeqa/selftest: test that newlib can build
Add a test to set TCLIBC=newlib and build newlib/libgloss.

This is the absolute minimum test, but at least it exercises the build
of this package.

(From OE-Core rev: cd670fd657a54601b10e9e09a40c5b51ed4d1cf8)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-12 17:05:35 +00:00
Alexander Kanavin
18f165c9e8 insane.bbclass: use multiprocessing for collecting 'objdump -p' output
This was prompted by ltp's unreasonably long package_qa times; it has
a massive amount of executables and insane runs objdump for all of
them, serially.

This reduces the time from 4 minutes to 1m20s on my machine.

(From OE-Core rev: fac984b99fdb46949879516cb87153860f402c75)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-08 14:20:18 +00:00
Joshua Watt
d366a1a223 spdx: Add set helper for list properties
This adds the set helper for list properties to allow list members to be
replaced with a new list. This is necessary as it is (currently) the
only way to replace the default value for a list member.

(From OE-Core rev: 8280b857c510646cd10167dd2ea9a0c2d5f1e800)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-07 10:08:59 +00:00
Alexander Kanavin
b3bb369ba4 weston: upgrade 9.0.0 -> 10.0.0
Release announcement with changes:
https://lists.freedesktop.org/archives/wayland-devel/2022-February/042103.html

Upstream has deprecated both weston-launch and fbdev backend, so let's
not delay the inevitable and find replacements.

Fbdev can be replaced by passing --use-pixman to drm backend;
this will bypass the opengl paths and use CPU for rendering.
Apply where GL is too slow or unavailable.

weston-launch can be replaced by starting weston directly, with
a seat management daemon for support. This is provided either
by systemd, or on systemd-less systems, by seatd. The sysvinit
startup scripts and tests have been rewritten accordingly. Bonus
fix: under sysvinit weston now starts under weston user as it should,
and not under root.

Upstream discussion:
https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/725

License-Update: copyright years

(From OE-Core rev: 4efc81fc575aea1e12e00de8644a4b853719f8df)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-05 17:46:05 +00:00
Richard Purdie
734ae5f647 oqea/runtime/oe_syslog: Improve test
We're seeing failures on the autobuilder where the log message isn't present in the
log. This could just be a race in the compound command but it is hard to say due
to the poor log output from the test.

Splitting the command into two sections should add more of a delay whilst ssh
reconnects and may well fix the issues but this change should also improve
the log output in the failure case too so if the failure isn't solved, we should
be better able to debug it.

(From OE-Core rev: 749264d5f6f86affbee3cfc096084e073c21c394)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-05 12:26:36 +00:00
Richard Purdie
a242274d98 prelink: Drop support for it
Prelink is being dropped by glibc in 2.36. It already causes issues with
binary corruption, has a number of open bugs and is of questionable benefit
without disabling load address randomization and PIE executables.

We disabled it by default a while back but left people able to use it.
We would be unable to maintain it alone without glibc support so remove
the remaining pieces.

(From OE-Core rev: 23c0be78106f1d1e2bb9c724174a1bb8c56c2469)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-05 12:26:36 +00:00
Andrej Valek
d6a126435f oeqa: qemu: create missing directory for _write_dump
| Failed to dump QMP CMD: query-status with
| Exception: [Errno 2] No such file or directory: '.../tmp/log/runtime-hostdump/qmp_00_query-status'
| Failed to dump QMP CMD: query-block with
| Exception: [Errno 2] No such file or directory: '.../tmp/log/runtime-hostdump/qmp_00_query-block'
| Failed to dump QMP CMD: dump-guest-memory with
| Exception: [Errno 2] No such file or directory: '.../tmp/log/runtime-hostdump/qmp_00_dump-guest-memory'

The qmp dump commands could fail, because of missing root directory.
So create it before any log writing.

(From OE-Core rev: c4dc5d674afe65fedb5195f187b68f23720646ba)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-03 09:05:13 +00:00
Peter Kjellerstedt
7faaaf1425 sstatetests: Correct a typo in a comment
(From OE-Core rev: f6420121920a242655ba5ded0f96763d6638cbc4)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-03 09:05:13 +00:00
Ross Burton
440a5f6ee6 oeqa/runtime/stap: improve systemtap test
Split the test up into compile and execute phases, as the stap binary
is known to be quite memory-hungry and this can result in the probe
being unable to allocate enough memory for the buffers it needs.

If the test fails, dump the dmesg as any useful messages will be there.

(From OE-Core rev: 6cf4d23a2d26c2767edd93f2eb317ff759b5a992)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-01 07:31:18 +00:00
Alexander Kanavin
98deacdb55 ltp: update 20210927 -> 20220121
The ltp compliancy parser is rewritten to actually
match the logs: they seem to be unstructured, test case names
are not printed and the only indication of failure is appearance of
FAIL[ED] somewhere.

(From OE-Core rev: 52766561dbfee625c89393905a85e10d85f69c6c)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-01 07:31:18 +00:00
Alexander Kanavin
c87a3b92ac logrotate: update 3.18.1 -> 3.19.0, drop rotate-across-filesystems patches
Upstream review and request to address it got no reaction
from the author, and the patches are an ongoing rebase burden,
so if someone needs this feature, please complete
the upstreaming work first.

(From OE-Core rev: c748945e9c91eb2b83b8a44828f35579bcd09146)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-20 11:57:29 +00:00
Richard Purdie
2a5dcb0662 crate-fetch: Switch to version contained in bitbake
This avoids various sstate fetch errors from weird silent failures in the sstate
archive testing code caused by lack of srcrev support in the crate fetcher.

(From OE-Core rev: 8205668a339946974b4460cf1ca7e6e7a645479b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-19 23:03:44 +00:00
Ross Burton
674fd536bc oeqa/runtime/stap: increase buffer size
We're seeing random failures in the SystemTap tests in qemuarm on kernel
5.10. This might be related to the buffer between user and kernel space
being too small, so explicitly set the size.

If this cures the problem it should be considered a workaround and not
the solution.

[ YOCTO #14673 ]

(From OE-Core rev: 04c622387ea78920fdb9754fa977883cd6d621a4)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-19 10:41:01 +00:00
Joshua Watt
85b520587c classes/native: Propagate dependencies to outhash
Native task outputs are directly run on the build system during the build
after being built. Even if the output of a native recipe doesn't change, a
change in one of its dependencies may cause a change in the output it
generates (e.g. rpm output depends on the output of its dependent zstd
library).

This can cause poor interactions with hash equivalence, since this
recipe's output-changing dependency is "hidden" and downstream tasks only
see that this recipe has the same outhash and therefore is equivalent.
This can result in different output in different cases and issues with
reproducible builds in parcular (e.g. rpm compression changes for the same
content).

To resolve this, unhide the output-changing dependency by adding it's
unihash to this tasks outhash calculation. Unfortunately, we don't know
specifically know which dependencies are output-changing, so we have to
add all of them.

[YOCTO #14685]

(From OE-Core rev: d6c7b9f4f0e61fa6546d3644e27abe3e96f597e2)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-17 11:49:11 +00:00
Ross Burton
af01b73f3c oeqa/runtime/stap: rewrite test
There's no need to copy files to the target when stap can take the short
probe directly.

Add more has-package decorators for the kernel source and GCC symlinks.
Remove the test dependencies as it's not a hard dependency.

Change the probe to print a message with some minimal logic, and verify
that the message was correctly constructed in the output.

(From OE-Core rev: 3954dc857df1d2a7e559b4fd357b54f39cf7374a)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-15 16:23:24 +00:00
Saul Wold
d756b346f2 package: Add support for kernel stripping
Extend runstrip() to accept additional argument to enable
sharing it with the kernel do_strip() so that
KERNEL_IMAGE_STRIP_EXTRA_SECTIONS can be passed.

Since is_elf() understands kernel modules there is no need to keep a
seperate list for kernmodules or hardcode the values to runstrip.

(From OE-Core rev: e09a8fa931fe617afc05bd5e00dca5dd3fe386e8)

Signed-off-by: Saul Wold <saul.wold@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-13 13:57:26 +00:00
Richard Purdie
16110cdca7 oeqa/sstate: Fix allarch samesigs test
The allarch sstate sigs test is supposed to compare the allarch sigs but
does not. Fix this.

Also rename the common function to make it clear it isn't just used by
the allarch test.

(From OE-Core rev: 549597d422c7bcb467f34139ff25d2bee96bf851)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-11 15:48:11 +00:00
Richard Purdie
9d4dd141bf sstatetests: Add OLDEST_KERNEL to allarch tests
Some architectures vary OLDEST_KERNEL and this shouldn't change the allarch
signatures but in current OE-Core can/does. Add differing values to the
test configs to ensure we catch this in future (we want to keep a 32 and
64 bit machine here to test that as well).

(From OE-Core rev: 151ce55ec8ebc91b83bf0d09b9196f11646df1f1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-11 15:48:11 +00:00
Alexander Kanavin
3e02d8d277 parselogs: add a couple systemd false positives
New systemd has changed the phrasing when skipping things,
with unfortunate use of 'failed':

[    1.623667] systemd[1]: Journal Audit Socket was skipped because of a failed condition check (ConditionSecurity=audit).
[    1.688258] systemd[1]: Load Kernel Modules was skipped because all trigger condition checks failed.

(From OE-Core rev: 743d09665a4ef743b1fa9ac382a713556dfce1a1)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-11 10:53:44 +00:00
Alexander Kanavin
2a3e849326 qemuboot/runqemu: fully form the ip= kernel parameter
New systemd is actually parsing this in systemd-network-generator
and fails if it is not fully formed. 'off' means 'static ip, do nothing':
https://www.kernel.org/doc/Documentation/filesystems/nfs/nfsroot.txt

(From OE-Core rev: 2cf12c8dde0f05917797f8b4a80883dc0647b95d)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-11 10:53:44 +00:00
Alexander Kanavin
43b7766105 rust-llvm: apply the same reproducibility patch as for llvm proper
(From OE-Core rev: a845029df7ea8c1bd987ffac3902d4521742debb)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-11 10:53:44 +00:00
Alexander Kanavin
5002a548ad ruby: disable rdoc due to non-reproducibility
The issue is reported upstream:
https://bugs.ruby-lang.org/issues/18456

Otherwise I do not feel that further investigation of rdoc's parser to find
out the source of non-determinism is worth the time.

(From OE-Core rev: 208021f7212a8a790c350ccca720695c5bcbb1ca)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-11 10:53:44 +00:00
Joshua Watt
bc22fe89fd selftest: reproducible: Set maximum report size
Diffoscope can end up running for a very long time if there are a lot of
changes. To put a limit on how long it can run, cap the maximum report
size at 250 MB by default.

(From OE-Core rev: 52d5f76f54eac384f9480dffe96df089d9ee8f33)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-07 14:39:17 +00:00
Alexander Kanavin
d5279dac96 virgl: skip headless test on alma 8
As a centos 8 spinoff, it lacks the same vgem kernel module.

(From OE-Core rev: a48bfc9c0938c51c91dd925bd7f5360bc01252ae)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-07 14:39:17 +00:00
Alexander Kanavin
2a4f07c720 selftest/reproducible: drop go items from exception list
With this changeset, go becomes reproducible \0/

(From OE-Core rev: 03ada343ecbbbe3822a8fd74e678b01be6b9511a)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-05 17:18:15 +00:00
Alexander Kanavin
51a8e28fe0 lib/oe/reproducible: correctly set .git location when recursively looking for git repos
(From OE-Core rev: ffdaa1a0527691d66dd28e86bd015bfad7a020f6)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-05 17:18:15 +00:00
Oleksiy Obitotskyy
2a9bcdb2ea package_manager: ipk: Fix host manifest generation
Since honister host manifest stopped to generate, i.e.
manifest file is empty but all ipks/files into sdk is
ok.

(From OE-Core rev: 79a2392f5d2a4cb6509a83afb40bca01bac59914)

Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-01-04 23:14:05 +00:00
Richard Purdie
8d556a72ec oeqa/selftest/bbtests: Use YP sources mirror instead of GNU
The gnu sources server has been known to disappear. Use the YP sources
mirror instead. If that breaks, the autobuilder is broken anyway. This
should reduce test failures from upstream network issues.

(From OE-Core rev: a5459e42f1a6be9c08f303653cc1f73514eca9ef)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-20 15:29:01 +00:00
Stefan Herbrechtsmeier
c39e671293 selftest: recipetool: Add test for handle_license_vars function
(From OE-Core rev: cfe72844713c79484fb432915672d9f5f1ff0c25)

Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-20 15:29:01 +00:00
Stefan Herbrechtsmeier
24a800ff70 selftest: recipetool: Add test for split_pkg_licenses function
(From OE-Core rev: 866b82e71a4d1b0bef5d2c8852654cd94884e373)

Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-20 15:29:01 +00:00
Stefan Herbrechtsmeier
32f56de278 recipetool: Separate licenses with & operator
Separate licenses with & operator since it should be satisfied most use
cases and it is a reasonable assumption that all the licenses apply.
Furthermore flat, split and sort the licenses to minimize license string
changes.

Separate package licenses with & operator:
-LICENSE:${PN} = "MIT ISC"
+LICENSE:${PN} = "ISC & MIT"

Respect | and brackets in LICENSE:
-LICENSE = "BSD-3-Clause & (ISC & | & MIT)"
+LICENSE = "BSD-3-Clause & (ISC | MIT)"

Sort licenses:
-LICENSE = "MIT & BSD-3-Clause & ISC"
+LICENSE = "BSD-3-Clause & ISC & MIT"

Remove duplicates:
-LICENSE = "MIT & ISC & MIT"
+LICENSE = "ISC & MIT"

(From OE-Core rev: 60a84ecc53d20118c5e7f86dd3e3cafbfed1cf0a)

Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-20 15:29:01 +00:00
Alexander Kanavin
2e0f03802b rust-hello-world: test at runtime
This adds a smoke check for whether the rust toolchain actually
produces working executables across a range of architectures.

(From OE-Core rev: 14bb638b0df7acfa6aa89abf4625357f8cde886b)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-17 09:56:14 +00:00
Alexander Kanavin
a5fe414531 sstatetests: add a test for moving oe-core around in the filesystem
Doing that should not change the task signatures.

(From OE-Core rev: a06ceaeaf11aa344e152f3bb6629aa6e000482d3)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-12 11:27:24 +00:00
Vyacheslav Yurkov
5221ca9296 oeqa/selftest: unit tests for overlayfs-etc
(From OE-Core rev: 3ca1ce7a3779d0b875385eb4045bd5a51dc839da)

Signed-off-by: Vyacheslav Yurkov <uvv.mail@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-12 11:27:24 +00:00
Vyacheslav Yurkov
ae56b39021 oeqa/selftest: overlayfs helper function
Move helper functions out of class scope so they can be used in other tests

(From OE-Core rev: 439a5a575b8ca27910431c71f01bf310122ff7ab)

Signed-off-by: Vyacheslav Yurkov <uvv.mail@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-12 11:27:24 +00:00
Stefan Herbrechtsmeier
796ca60fa9 selftest/recipetool: Add tests for branch parameter and srcbranch option
The recipetool support two ways to pass a branch and fallback to master
if no branch is defined. Add tests for default branch, branch parameter
and srcbranch option.

(From OE-Core rev: f232cffc09e917458d6e850b4aca4f87b53b43e4)

Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-09 10:33:25 +00:00
Stefan Herbrechtsmeier
5b54a2602d selftest: devtool: Separate common functions and devtool sstate setup into two classes
The selftest recipetool base class reuse the selftest devtool base
class. Thereby the selftest devtool base class setup its own devtool
sstate and the selftest recipetool classes trigger the build of recipes.
This leads to the problem that the build artifacts doesn't reach the
persistent sstate cache and rebuild on every selftest run.

Move the common selftest devtool functions into its own class and use
the sstate cache in the recipetool tests.

(From OE-Core rev: c0bd0686092181b6a5316c373b5b125d78a24e9f)

Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-09 10:33:25 +00:00
Stefan Herbrechtsmeier
d5a8ab8b56 selftest/recipetool: Split tests into separate test classes
Split tests into separate test classes to speed up individual test runs
by reducing the test setup to a minimum.

The pkgdata generation is only needed for the append tests and slow down
the other tests.

(From OE-Core rev: 2aef869bcca3e0de4afb9ef00492de3ee72b035c)

Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-09 10:33:25 +00:00
Stefan Herbrechtsmeier
db210eef9a selftest/devtool: Check branch in git fetch
The commit 'meta/scripts: Manual git url branch additions (dc53fe75cc)'
forget the url branch= parameter in the devtool git fetch test.

(From OE-Core rev: 1419168a58a5caf99e24ada08c9ab639344a78b4)

Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-09 10:33:25 +00:00
Pavel Zhukov
ae57c83f03 patch.py: Initialize git repo before patching
If PATCHTOOL="git" has been specified but workdir is not git repo
bitbake fails to apply the patches with error message:
Command Error: 'git rev-parse --show-toplevel' exited with 0  Output:
fatal: not a git repository (or any of the parent directories): .git

Fix this by initializing the repo before patching.
This allows binary git patches to be applied.

(From OE-Core rev: 6184b56a7a0fc6f5d19fdfb81e7453667f7da940)

Signed-off-by: Pavel Zhukov <pavel.zhukov@huawei.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-12-03 23:37:16 +00:00
Alexander Kanavin
375c82ad00 go-helloworld: test at runtime
This adds a smoke check for whether the Go toolchain actually
produces working executables across a range of architectures.

(From OE-Core rev: 2819bb2cf22c6cfcaeaee79f0280097ec9cb9327)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-29 23:07:13 +00:00
Richard Purdie
f062749071 sanity/lib: Replace usage of LooseVersion() with bb.utils.vercmp_string_op()
distutils is going away and we have functionality in bitbake which can
handle these comparisions so switch to the bb.utils function.

(From OE-Core rev: fe624b520e6c75e16a8f394785ab0216341402f9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-29 23:07:13 +00:00
Richard Purdie
1dbcdfcdf8 oeqa/parselogs: Fix quoting
Fix deprecation warnings about invalid escape sequences.

(From OE-Core rev: 43542614395150e8fa34133ba0fc7ee90f215bcb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-29 23:07:13 +00:00
Richard Purdie
1c032b4d1d oeqa/utils/dump: Fix typo
(From OE-Core rev: 3770d539d83b589b3f8bde21fcf896bb046611d4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-26 17:01:08 +00:00
Ross Burton
c6f23f1f0f oe/utils: by default cap cpu_count() to 64 cores
Larger systems may have large numbers of cores, but beyond a certain
point they can't all be used for compiling: whilst purely
compute-intensive jobs can be parallelised to hundreds of cores,
operations such as compressing (needs lots of RAM) or compiling (lots of
I/O) don't scale linearly.

For example, the Marvel ThunderX2 has 32 cores, each capable of
executing four threads, and can be configured with two sockets, making
256 CPUs according to Linux. Zstd using 256 threads has been seen to
fail to allocate memory during even small recipes such as iso-codes.

Add a default cap of 64 CPUs to the cpu_count() method so that extreme
parallisation is limited.  64 is high enough that meaningful gains
beyond it are unlikely, but high enough that most systems won't be
effected.

(From OE-Core rev: 765d0f25ce48636b1838a5968e2dc15de2127428)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-25 21:55:10 +00:00
Ross Burton
1fb99950a2 oe/utils: allow naming threads in ThreadedPool
When looking at logs involving thread pools it is useful if the threads
can be named.

(From OE-Core rev: 18342945b021608794d83ecf567afd43f4379b24)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-25 21:55:10 +00:00
Yi Zhao
a20e6a8a85 oeqa: fix warnings for append operators combined with +=
(From OE-Core rev: f2504115f08b173d919d9abe507a0ba440b0d4df)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-23 10:53:15 +00:00
Peter Kjellerstedt
3fcaef51ef testsdk.py: Clean up the additions to PREMIRRORS and SSTATE_MIRRORS
Since commit 044fb04d in bitbake (fetch2: Allow whitespace only mirror
entries) there is no need to separate the entries in PREMIRRORS and
SSTATE_MIRRORS with "\n".

(From OE-Core rev: 3db607deea3b2982edb333f99056119490fcf5ea)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-11-11 17:09:17 +00:00
Vyacheslav Yurkov
39f3274dd5 oeqa/selftest: extend overlayfs test
Test that overlayfs.bbclass generates one systemd unit, that
applications can set dependencies on, and that this unit mounts all
required overlays

(From OE-Core rev: b0e335268de78cfe163f3cfdc0209ae26309fc78)

Signed-off-by: Vyacheslav Yurkov <uvv.mail@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-30 22:31:52 +01:00
Vyacheslav Yurkov
8eb35a9558 oeqa/selftest: refactor common functions
(From OE-Core rev: 66de5de793f3c86502d193f7e3abc8fa17642369)

Signed-off-by: Vyacheslav Yurkov <uvv.mail@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-10-30 22:31:52 +01:00