summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2023-01-24poky: Set INIT_MANAGER by a seperare variableabelloni/master-next-successRichard Purdie
Currently INIT_MANAGER cannot be overridden from local.conf. This is complicated by the use of overrides in the various poky distro configs. That is necessary, so use a separate variable to indirectly set the value meaning local.conf can still override the result. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24vulkan-samples: Include missing header cstdint for uint32_tKhem Raj
(From OE-Core rev: 7961adedae7892b1ceb7e0d0dbab6b48c57c5515) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24apt: add missing <cstdint> for uint16_tKhem Raj
(From OE-Core rev: 032488691fa522b5c7319b4f899c4a85eea0731e) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24harfbuzz: Add missing <cstdio> and <cstdlib> includesKhem Raj
(From OE-Core rev: 92c3c8f7a2c9a244d12c8a2ff7895e428933903d) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24gtk+3: add PACKAGECONFIG for libcloudservice and tracker; fix cups backendMarkus Volk
Add options to enable support for libcloudprovider and tracker If the cups backend is enabled, the mandatory file backend gets disabled and thus configure fails. Fix it by not defining the print-backend and just include cups as a dependency. Additionally add it as a runtime dependency. Now, if cups gets enabled, it should include the following print-backends by default: cups,lpr,file (From OE-Core rev: cbde415c11fe7df720af9b87ae2d8c2df43aaa4c) Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24stress-ng: Robustify test-float testKhem Raj
Latest compilers are able to figure out that whole code can be optmized away when CFLAGS has -O2 or more agressive optimizations. In order to ensure the test is doing the right thing, make the variables global so compiler is not able to optimize it away. This fixes build on x86 especially when using clang compiler (From OE-Core rev: bb51f8ca23832b58d990250d6b62a5c0b322a6d6) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24ppp: backport fix for CVE-2022-4603Ross Burton
(From OE-Core rev: 93a1c35603a7d6badcf22cd2574b6c2c954900c0) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24pseudo: Update to include logic fixRichard Purdie
The logic in the previous commit was reversed, update to fix it. (From OE-Core rev: 47ff77c8e5278b008be95242a13d79e871b51d94) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24bitbake.conf: Add BB_HASH_CODEPARSER_VALSRichard Purdie
Add an initial value for the new bitbake BB_HASH_CODEPARSER_VALS support, which optimises the codeparser cache's size and stops it growing at every parse. (From OE-Core rev: 7463d44861fe0fc951778f7e8b0dad3f2f445554) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24elfutils: Fix build with libcurl >= 7.87Khem Raj
(From OE-Core rev: 9aaae58d3d389fe6fe021dd3bc4278cbc5580fb8) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24gtk4: add PACKAGECONFIG for cloudprovidersMarkus Volk
- Add missing cups runtime dependency - Create packages for the printbackends only for target This fixes: NOTE: Multiple providers are available for runtime gtk4-printbackend-cups (gtk4, gtk4-native) Consider defining a PREFERRED_RPROVIDER entry to match gtk4-printbackend-cups NOTE: Multiple providers are available for runtime gtk4-printbackend-file (gtk4, gtk4-native) Consider defining a PREFERRED_RPROVIDER entry to match gtk4-printbackend-file (From OE-Core rev: a39d3901d95f3c9a297d539a17ba21f7a633f703) Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24python3-cryptography{-vectors}: 38.0.4 -> 39.0.0Tim Orling
* python3-cryptography-crates.inc: update for 39.0.0 * python3-cryptography-vectors: upgrade 38.0.4 -> 39.0.0 Highlights from Changelog: https://cryptography.io/en/latest/changelog/#v39-0-0 39.0.0 - 2023-01-01 * BACKWARDS INCOMPATIBLE: Support for OpenSSL 1.1.0 has been removed. Users on older version of OpenSSL will need to upgrade. * BACKWARDS INCOMPATIBLE: Dropped support for LibreSSL < 3.5. The new minimum LibreSSL version is 3.5.0. Going forward our policy is to support versions of LibreSSL that are available in versions of OpenBSD that are still receiving security support. * BACKWARDS INCOMPATIBLE: Removed the encode_point and from_encoded_point methods on EllipticCurvePublicNumbers, which had been deprecated for several years. public_bytes() and from_encoded_point() should be used instead. * BACKWARDS INCOMPATIBLE: Support for using MD5 or SHA1 in CertificateBuilder, other X.509 builders, and PKCS7 has been removed. * ANNOUNCEMENT: The next version of cryptography (40.0) will change the way we link OpenSSL. This will only impact users who build cryptography from source (i.e., not from a wheel), and specify their own version of OpenSSL. For those users, the CFLAGS, LDFLAGS, INCLUDE, LIB, and CRYPTOGRAPHY_SUPPRESS_LINK_FLAGS environment variables will no longer be respected. (From OE-Core rev: 8d0c2570152f6d270e011afbdabc929aaf62af75) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24libusb1: Strip trailing whitespacesKhem Raj
(From OE-Core rev: c301f06c1382ab1b78eb86d5c12ea409d895af37) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24libusb1: Link with latomic only if compiler has no atomic builtinsKhem Raj
This makes build use compiler to decide from where to get atomics instead of assuming that it should always come from libatomic, helps sharing build artifacts with OSes which may not have libatomic installed because it is not required on those hosts. (From OE-Core rev: c371509cf3d06528190c50d59eaeec6a9cdff4f8) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24oeqa qemurunner.py: improve logging in run_serial()Mikko Rapeli
When serial communication times outs, write note also to bitbake task output. Then add a small sleep to collect more output to avoid reading data one character at a time. This makes logs much more readable. (From OE-Core rev: cd492ddacf04598942c44c5986edd1c8e770fc46) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24oeqa qemurunner.py: add debug output to run_serial()Mikko Rapeli
Add debug output which is useful if qemu system hangs and doesn't respond in time. (From OE-Core rev: 009f77bdd394f398f04b98afa64d41f3d18aeb48) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24oeqa qemurunner.py: kill qemu if it hangsMikko Rapeli
qemu doesn't always behave well and can hang too. Log calls to stop qemu and finally kill it with force if was still alive. (From OE-Core rev: 421664b365f9a2741cbc87980f26373bf5c84a7d) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24oeqa qemurunner.py: add timeout to QMP callsMikko Rapeli
When a qemu machine hangs, the QMP calls can hang for ever too, and when this happens any failing test commands from ssh runner may be followed by dump_monitor() calls which then also hang. Hangs followed by hangs. Use runqemutime at setup and run_monitor() specific timeout for later calls. (From OE-Core rev: 794cf591aa21d8483aba1b499936266fa3376278) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24oeqa qemurunner.py: add debug prints to stop()Mikko Rapeli
These help to investigate if any of the functions hang when test target hangs. (From OE-Core rev: effefbe048671a7302e4d2106f6c818e15409386) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24oeqa qemurunner.py: increase boot failure warning log from 25 to 100 linesMikko Rapeli
More details are needed to debug issues. Warning is printed to bitbake output console. Task execution logs will contain all debug output. (From OE-Core rev: 8137b6a3d15167b882b87594f6752e0a5ea5401e) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24oeqa qemurunner: read more data at a time from serial and log all of itMikko Rapeli
Use a short sleep to bundle serial console reads so that we are not reading one character at a time which makes logs more readable. Then write full serial log to debug output so that boot issues can be investigated from do_testimage task logs. (From OE-Core rev: 610130b60e2d24ded73881e901eac50b6311af94) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24oeqa qemurunner.py: use os.set_blocking() instead of fcntl()Mikko Rapeli
It's now available since python 3.5. Then add debug prints to leave traces if something still hangs or fails. (From OE-Core rev: 813b5983501d7e5b9fd725ed4f92268ba2960dd1) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24oeqa dump.py: add error counter and stop after 5 failuresMikko Rapeli
If test target qemu machine hangs completely, dump_target() calls over serial console are taking a long time to time out, possibly for every failing ssh command execution and a lot of test cases, and same with dump_monitor(). Instead of trying for ever, count errors and after 5 stop trying to dump_target() and dump_monitor() completely. These help to end testing earlier when a test target is completely deadlocked and all ssh, serial and QMP communication with it are failing. (From OE-Core rev: 4412860e68525a065393f52495c1464cad5c9c43) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24testimage.bbclass: add debug prints for major state changesMikko Rapeli
When a test target hangs completely, it is important to know what happened before that in do_testimage() task logs. (From OE-Core rev: 007c1587ba8521a175836549b57c468bd94c8198) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24oeqa ssh.py: add connection keep alive options to ssh clientMikko Rapeli
Configure ssh client to test that connection with server is up. If the server does not respond within a minute then the connection, target machine or sshd daemon are stuck and it's better to exit the command execution with errors. Some tests can execute a long time without returning stdout/stderror data and it's difficult to adjust timers for those cases if connection to target machine or the target machine itself hangs and output is not expected in minutes or even hours. (From OE-Core rev: 368463db452b3719daadd84d2c3c524ec987e65b) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24oeqa ssh.py: clarify timeout API and add more debug prints to run()Mikko Rapeli
Clarify timeout handling. Timeout calculation is from start of command OR last output from ssh command. When the ssh command output is captured, that resets the timeout timer. Timeout is effetively an "inactive timeout". Print process output to a new line to keep the output more readable. Then log the calls to dumper functions which also seem to be deadlocking for ever when a qemu machine hangs. (From OE-Core rev: cb2faed8ce42f1c8aab912c6f20431032eee8d32) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24oeqa ssh.py: fix hangs in run() and add debug printsMikko Rapeli
When qemu machine hangs, the ssh commands done by tests are not timing out. do_testimage() task has last logs like this: DEBUG: time: 1673531086.3155053, endtime: 1673531686.315502 The test process is stuck for hours, or for ever if the executing command or test case did not set a timeout correctly. The default 300 second timeout is not working when target hangs. Note that timeout is really a "inactive timeout" since data returned by the process will reset the timeout. Added debug prints help to identify which calls are hanging and not timing out. Make the process stdout non-blocking so read() will always return right away using os.set_blocking() available in python 3.5 and later. Then change from python codec reader to plain read() and make the ssh subprocess stdout non-blocking. Even with select() making sure the file had input to be read, the codec reader was trying to find more stuff and blocking for ever when process hangs. While at it, add a small timeout to read data in larger chunks if possible. This avoids reading data one or few characters at a time and makes the debug logs more readable. close() the stdout file in all cases after read loop is complete. Then make sure to wait or kill the ssh subprocess in all cases. Just reading the output stream and receiving EOF there does not mean that the process exited, and wait() needs a timeout if the process is hanging. In the end kill the process and return the return value and captured output utf-8 encoded, just like before these changes. This fixes ssh run() related deadlocks when a qemu target hangs completely. (From OE-Core rev: fd654e87574185266ed87fe3d7457d84778398a9) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24oeqa ssh.py: move output prints to new lineMikko Rapeli
The output from is garbled otherwise and it's not easy to remove debug output form real command output on target. (From OE-Core rev: 9883d4337a28e578ad658b55169ee9df087fd6fc) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24librsvg: Only enable the Vala bindings if GObject Introspection is enabledPeter Kjellerstedt
This avoids the following error: configure: error: Vala bindings require GObject Introspection (From OE-Core rev: ef6995d0d5b7807a32f90e71d8a1ce8f76884cb3) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24native: Drop special variable handlingRichard Purdie
Back when it was merged in https://git.yoctoproject.org/poky/commit/?id=c4257ed8b1040a5a0e9a95846d81961741239116 it appeared special handling in setVar was necessary. Likely due to other fixes and improvements it no longer appears to be. The results of "bitbake world -g" before and after this change are identical for oe-core and meta-openembedded. Therefore drop the "parsing=True" special parameter to setVar() meaning overrides can now be cleared. This means that something like: DEPENDS:append = " bash" now functions as expected, adding bash to the target recipe and bash-native to the native BBCLASSEXTENDED version. Without this change, it would add bash to the native version as well as bash-native which is clearly incorrect. [YOCTO #15010] (From OE-Core rev: e474aed7cec12ad2ad1cc954688c34443213e701) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24quilt: use upstreamed faildiff.test fixRoss Burton
(From OE-Core rev: 6fbb2572f5e75e741cedad18b31542ce1924094f) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24ruby: Use C11 _Alignof to define ALIGN_OF when possibleKhem Raj
(From OE-Core rev: 707edf1bd2ede69dd6b7d654875220de5b9b98fe) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24libtirpc: Check if file exists before operating on itKhem Raj
In some cases (e.g. mingw) this file may not be installed (From OE-Core rev: 988ec16c0dae703d940c1e6289dc55ede0c999a7) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24lttng-tools: Switch to alternative upstream submitted patchKhem Raj
(From OE-Core rev: aac877c55130f81cd37788b3b3eaa93921e0d787) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24u-boot: Upgrade to 2023.01Fabio Estevam
Upgrade to U-Boot 2023.01. Remove the two patches that are now upstream: e67f34f778ba ("riscv: support building double-float modules") 1dde977518f1 ("riscv: Fix build against binutils 2.38") And add a patch that fixes u-boot-tools build. (From OE-Core rev: a754bd4868ee2b24468b6e6aa13b337318011992) Signed-off-by: Fabio Estevam <festevam@denx.de> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24gptfdisk: add follow-up patch to fix with current poptMarkus Volk
sgdisk still segfaults for some tasks (e.g 'sgdisk -v', 'sgdisk -V') Add a follow-up patch that fixes the issue. It was taken from Archlinux (From OE-Core rev: ace1acd9d14c47c8cfb8eb60e0e0e86f8661b7e5) Signed-off-by: Markus Volk <f_l_k@t-online.de> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24spirv-headers/spirv-tools: set correct branch nameRoss Burton
As of last week, the SPIRV repositories have renamed their master branches to main: https://github.com/KhronosGroup/SPIRV-Headers/issues/313 We could set branch=main, but the commits we're using are also on release branches so use those instead. (From OE-Core rev: 5ddfde896e41e14df1bd1e6f0d7d5112abe7df66) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24systemd: add PACKAGECONFIG to select default compression formatLuca Boccassi
If multiple compression libraries are enabled, the format to use for compression is chosen implicitly, so if you want to compress with e.g. lz4 you cannot enable zstd, so you cannot read zstd-compressed journal files. This PACKAGECONFIGs allow to enable all compression formats for reading, but to choose a specific one for writing. (From OE-Core rev: 32b5ec05bd0bd623d8c40d42f81b86e9145708f6) Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24qemuppc64: set the qemuppc64 nfs r/wsize mount options to 524288Xiangyu Chen
On master oe, build a qemuppc64 with systemd as default init, when we use nfs bootup, the kernel might panic due to missing symbol in dynamic libraries as below: hid-generic 0003:0627:0001.0003: input: USB HID v0.01 Mouse [QEMU QEMU USB Tablet] on usb-0000:00:01.0-3/input0 /sbin/init: /lib64/libm.so.6: version `XZ_5.0' not found (required by /usr/lib64/libkmod.so.2) Kernel panic - not syncing: Attempted to kill init! exitcode=0x00007f00 CPU: 0 PID: 1 Comm: init Not tainted 5.15.78-yocto-standard #1 Call Trace: [c000000007443ba0] [c0000000009538d0] dump_stack_lvl+0x74/0xa8 (unreliable) [c000000007443be0] [c000000000103524] panic+0x170/0x3cc [c000000007443c80] [c00000000010cf64] do_exit+0xb44/0xb50 [c000000007443d50] [c00000000010d040] do_group_exit+0x60/0xd0 [c000000007443d90] [c00000000010d0d4] sys_exit_group+0x24/0x30 [c000000007443db0] [c00000000002cfd4] system_call_exception+0x194/0x2f0 [c000000007443e10] [c00000000000c2cc] system_call_common+0xec/0x250 --- interrupt: c00 at 0x7fff9ed9e840 NIP: 00007fff9ed9e840 LR: 00007fff9ed7da20 CTR: 0000000000000000 REGS: c000000007443e80 TRAP: 0c00 Not tainted (5.15.78-yocto-standard) MSR: 800000000280f033 <SF,VEC,VSX,EE,PR,FP,ME,IR,DR,RI,LE> CR: 24022442 XER: 00000000 One or more of the libraries systemd depends on failed to load due to unresolved symbols/functions. This was intermittent - with a failure rate estimated between 5% and 30%. After checking the code, this issue happens on gcc 12, kirkstone is using gcc 11 works well, with both using the exact same v5.15.84 kernel commit. There is a kernel fix from upstream [1], they changed the rsize / wsize to a multiple of PAGE_SIZE, when we applied this patch, the qemuppc64's default r/wsize went from 4096 to 524288.But the qemuppc64 doesn't have its own linux-yocto kernel branch, so apply this change might cause regression with other platforms which share branch with qemuppc64. So, we added an extra option for nfs rootfs, and set the qemuppc64 default r/w size to 524288 to line up with the kernel fix[1]. Yocto did a similar thing in the distant past[2] - prior to boot-arg adjustments existing - by allowing a Kconfig to set the defaults on nfsboot, in order to work around hardware limitations. Reference: [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=940261a195080cf [2] https://git.yoctoproject.org/linux-yocto-4.1/commit/?h=standard/base&id=a96cfd98add95 (From OE-Core rev: 59e74e3b53bd12607aa1cdeb0f234fab5da98742) Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24runqemu: add process of option QB_NFSROOTFS_EXTRA_OPTXiangyu Chen
This extra options to be appended to the nfs rootfs options in kernel boot arg. Example config with qemuppc64 in machine config: add r/w size in the nfs rootfs extra option: QB_NFSROOTFS_EXTRA_OPT = "wsize=524288,rsize=524288" re-build and runqemu with nfs again, we can observe the kernel command line added our defined value in QB_NFSROOTFS_EXTRA_OPT: Kernel command line: root=/dev/nfs nfsroot=10.0.2.2:/home/xchen5/testing/build/tmp-glibc/deploy/images/qemuppc64/testnfs,nfsvers=3,port=3049,tcp,mountport=3048,wsize=524288,rsize=524288 rw mem=256M ip=dhcp console=hvc0 console=hvc0 nohugevmalloc (From OE-Core rev: 14aecbb43c72b21fc3ff7883ae6be8b84d2e78a3) Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24qemuboot.bbclass: add QB_NFSROOTFS_EXTRA_OPT for nfs rootfs extra optionXiangyu Chen
This extra options to be appended to the nfs rootfs options in kernel boot arg. (From OE-Core rev: 1f931b34a7c4e6d7e6a81b4b440bd0d18163f751) Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24meta/classes-global: remove package_tar.bbclassMichael Opdenacker
Remove package_tar.bbclass, which is no longer in use in oe-core and meta-oe, and which the document reports as broken and unsupported. (From OE-Core rev: 5cd2e838f5d0faa6b44bdaf82c036320f5ac9de0) Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24cmake-native: use internal cmcurl libraryChangqing Li
This commit is for breaking circular dependency in following condition: After enabling PACKAGECONFIG nghttp2 for curl, the dependency chain is: curl-native -> nghttp2-native -> cmake-native -> curl-native. So change to use internal cmcurl library to fix this. And as using system curl library before, disable nghttp2 and use system openssl library for cmcurl. (From OE-Core rev: 5e5e96ae1830be0d7e0c6c3d88da5c1bf4ad0f60) Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24kmod: enable openssl support by defaultMikko Rapeli
linux-yocto kernel adds openssl-native dependency by default even when module signing is still optional. kmod should enable openssl support too. This helps see details of signed kernel modules and debug issues with module signing. For small systems this can still be disabled. modinfo output shows bad signing info when kernel signing is enabled but openssl support is missing from kmod: root@qemux86-64:~# dmesg|grep 509 [ 0.750905] ACPI: PCI: Interrupt link LNKG configured for IRQ 11 [ 0.950039] Asymmetric key parser 'x509' registered [ 1.241727] Loading compiled-in X.509 certificates [ 1.267863] Loaded X.509 cert 'Build time autogenerated kernel key: 48bcd79439f61aaf8fc19ec0882439d64db73820' root@qemux86-64:~# lsmod Module Size Used by sch_fq_codel 20480 1 root@qemux86-64:~# modinfo sch_fq_codel filename: /lib/modules/5.19.9-yocto-standard/kernel/net/sched/sch_fq_codel.ko description: Fair Queue CoDel discipline license: GPL author: Eric Dumazet depends: retpoline: Y intree: Y name: sch_fq_codel vermagic: 5.19.9-yocto-standard SMP preempt mod_unload sig_id: PKCS#7 signer: sig_key: sig_hashalgo: unknown signature: modinfo with openssl enabled in kmod: root@qemux86-64:~# modinfo sch_fq_codel filename: /lib/modules/5.19.9-yocto-standard/kernel/net/sched/sch_fq_codel.ko description: Fair Queue CoDel discipline license: GPL author: Eric Dumazet depends: retpoline: Y intree: Y name: sch_fq_codel vermagic: 5.19.9-yocto-standard SMP preempt mod_unload sig_id: PKCS#7 signer: Build time autogenerated kernel key sig_key: 07:9A:C4:36:96:98:6E:5B:73:CF:C8:40:A6:57:D9:03:5E:27:8D:25 sig_hashalgo: sha512 signature: 21:4D:F0:E2:E0:7C:8E:31:A0:96:12:68:06:0D:FA:0D:E2:17:45:64: 51:94:7E:B0:97:DD:EB:59:89:CA:1A:C3:10:E7:7C:4D:5D:F0:5D:B6: 2A:61:D3:BF:89:7A:0D:CD:A2:39:57:1B:C6:B5:7D:C1:DB:6F:D9:36: 29:7A:07:18:F5:22:9F:9A:33:4D:38:BC:79:C8:51:8B:82:0F:B4:09: 08:37:52:11:98:50:7E:19:28:0F:13:2E:03:A5:E8:F8:D9:E7:DF:61: 18:AC:22:FE:96:BD:D0:55:96:9E:C9:1C:15:C9:0B:9A:5A:FD:D0:C0: 8F:41:12:5B:EA:4B:E5:5D:4D:EA:D5:2E:E5:80:D4:51:CC:63:97:F3: 4B:39:CC:B6:A1:83:F5:EF:2F:A1:22:CD:CA:BC:DB:82:C0:E4:AB:13: 5D:C5:F3:BC:B7:3E:B4:16:BF:87:1D:AC:69:43:1F:78:2A:5F:E2:63: 52:A2:DA:FC:F9:C0:BA:D8:1A:FE:58:4E:6A:D8:DE:BE:F8:F6:C2:59: CE:F5:0A:A0:15:A3:01:BC:B6:70:36:4E:5F:D6:9B:B0:DE:93:15:3E: 35:37:38:D9:01:2B:72:2F:D3:74:A4:AD:F4:5F:52:74:44:E1:C9:D3: A9:87:BC:93:58:8A:82:DB:14:6F:E0:4D:AF:8E:B5:3D:92:20:8B:4A: 04:54:6C:21:F1:76:DF:08:A9:0A:A5:D5:D0:17:CA:98:B5:F4:9F:F6: 9C:8F:DA:09:C2:37:FB:36:23:D1:25:27:4C:DB:9B:43:19:EB:55:1C: DA:32:04:A5:B1:97:F7:A3:3B:82:55:FD:BD:6D:90:BB:61:E6:D3:93: 42:CB:FD:4A:1B:3E:03:43:7D:E3:85:32:91:45:C9:B4:CD:DC:B7:07: 37:58:8A:4A:49:5F:F7:26:41:E1:BB:A1:64:B5:86:00:17:9D:D7:81: 31:BA:DC:BF:04:CC:11:55:B1:C6:24:83:43:33:34:2D:BF:00:74:26: 6A:EC:56:90:C7:1B:C2:78:5C:7F:25:2D:78:BD:C5:D9:7D:69:6A:32: 5D:EF:48:6C:21:64:47:2A:FE:34:3C:58:8D:9E:D7:42:76:BE:89:84: 8D:62:9D:62:DE:7C:88:C4:5F:AA:13:20:6B:90:53:16:4E:06:EE:8A: DE:F7:EA:F8:92:03:7D:84:B7:0C:9F:A0:52:B7:5E:21:BF:37:6A:C9: 34:6D:69:1E:4A:CC:48:F2:0A:6C:B8:AD:83:C0:8F:76:CC:43:0E:29: 17:A9:22:F3:0B:59:A9:87:24:AD:84:CD:EE:E2:C3:93:F7:A8:11:ED: 9A:CC:DA:7F:9D:73:06:5C:A7:1A:6A:54 (From OE-Core rev: 8ffc59217f754eb221490db3e47b939d8f3f72cd) Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24bitbake: toaster: update fixturesTim Orling
* Update to latest langdale 4.1.2 and kirkstone 4.0.6 * Re-instate dunfell and update to 3.1.22 - drop comments about bitbake crash (Bitbake rev: 03a91c4c7c994456ba9f01dc56e1974ba1e3f4a9) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24bitbake: bitbake: fix deprecated threading.Thread.setDaemonTim Orling
Deprecated in Python 3.10: https://docs.python.org/3/whatsnew/3.10.html#deprecated https://github.com/python/cpython/pull/25174 Fixes warnings like: ...bitbake/lib/bb/ui/uievent.py:68: DeprecationWarning: setDaemon() is deprecated, set the daemon attribute instead self.t.setDaemon(True) (Bitbake rev: 17e1b37974ab23a9210a264b0f48dc4812aa75af) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24bitbake: data_smart: Small optimisation to _findVar()Richard Purdie
Some users of _findVar don't need the override data and even getVarFlag doesn't need it in some common cases (parsing=True). Rearrange the code as the current overridedata approach doesn't need to be in the _findVar code anyway. This removes some search overhead from a critical path. (Bitbake rev: 851c16adf155ca62ff402e82f7f39b022e91eb95) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24bitbake: data: Add sup0port for new BB_HASH_CODEPARSER_VALS for cache ↵Richard Purdie
optimisation Currently the codeparser cache ends up being extended for every parse run since there are values in the functions such as the result of os.getpid() from LOGFIFO in OE-Core. Digging into that issue, there are also lots of similar but different functions being parsed where the change might just be a path to WORKDIR, a change in PN or PV or something like DATE/TIME. There is no reason we have to use these changing values when computing the dependenies of the functions. Even with a small tweak like: BB_HASH_CODEPARSER_VALS = "LOGFIFO=/ T=/ WORKDIR=/ DATE=1234 TIME=1234 PV=0.0-1 PN=nopn" the cache is reduced from ~4.6MB, increasing by ~300kb for every parse run to around 1.3MB and remaining static for oe-core and meta-oe. In my local build, admittedly heavily experimented with, the cache had grown to 120MB. The benefits of doing this are: * faster load time for bitbake since the cache is smaller to read from disk and load into memory * being able to skip saving the cache upon shutdown * lower memory footprint for bitbake * faster codeparser data lookups (since there is less data to search) We only use these special values when passing code fragments to the codeparser to parse so the real variable values should otherwise be used in the hash data. The overall effect of this change, combined with others to avoid saving unchanged cache files can be ~2s on a ~16s parse on my local system and results in a more responsive feeling bitbake. It also allows parsing performance to be investigated more consistently. (Bitbake rev: e584799386da3fee3083d8d724c8b6f611852aa9) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24bitbake: cooker: Fix parsing race around cache handlingRichard Purdie
When draining the result queue from the parsing processes, cache objects can be created even if they are then immediately destroyed. The reset in the sync code needs to happen after any objects have been created. Change the ordering to fix this. This ordering has caused various cache errors, particularly when interrupting parsing with Ctrl+C. (Bitbake rev: 196d42621a13a6952d85a4c29df3b40ebeacb74c) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2023-01-24bitbake: cache: Only write files if we have dataRichard Purdie
By writing the cache files only if there is data to write, we can save a bit of time. (Bitbake rev: 6765435773a567eea3084b87b8267c505bed66ce) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>