Age | Commit message (Collapse) | Author |
|
Add test for autotools.
Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
|
|
Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
|
|
The functions are more complicated than helpful. Replace them with
simple if clauses.
|
|
Minimal support for autotools.
Qemu user is not supported by autotools.
Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
|
|
By default, the cpptools VSCode extension will use the host's headers
and flags for linting. This results in a lot of include errors and
misleading definitions. Even though this generic configuration doesn't
include all the depenendencies, it is a proper fallback for recipe
classes we do not accurately cover, with at least the right sysroot.
Additionally, ide-sdk automatically detects and provides a launch.json
configuration for autotools recipes so we should recommend the C++
extensions for them.
Recipes which use C/C++ without a build system are not covered by this
patch.
Signed-off-by: Enguerrand de Ribaucourt <enguerrand.de-ribaucourt@savoirfairelinux.com>
|
|
|
|
This commit must be replaced with an implementation calling a quick one
task only mode of bitbake. Bitbake -b is very quick but ignores
bbappends. This is a bug which needs to be fexied. Further an option to
call only one task without the dependencies to other tasks is needed.
Avoid calling the full featured mode of bitbake from the IDE. When
working with the IDE, the IDE should control all the build steps for
the recipe which is in the workspace. A cross development workflow
usually requires the following steps:
- Setup the SDK (bitbake, devtool)
- configure (IDE)
- compile (IDE)
- run unit tests (on the host with Qemu) (IDE)
- remote debuggging on the target device which includes (IDE)
- do_install (IDE,pseudo)
- deploying the artifacts to the target device (IDE,pseudo)
- start gdbserver on the target device (IDE)
- start GDB on the host device (IDE)
- Update the SDK (bitbake, devtool)
For the configure, compile and unit test tasks there is already full
IDE integration, without any call on bitbake. But for the remote
debugging part bitbake gets called which has several disadvantags:
- Bitbake runs a work queue for all the tasks of the recipe. There
is for example no way to run only the do_install task. Bitbake
always tries to find out if a previous task needs to be executed and
automatically does so. Since bitbake has no information about which
step has already be executed by the IDE there is a great chance that
bitbake does much more than necessary. It could also happen, that
bitbake ignores chagnes done by the developer in the IDE and overules
some manual steps. This can lead to a bad user experience. Therefore
it is really important to delegate all the steps for the application
development workflow to the IDE and use bitbake only for providing
and updating the SDK.
An example of this is that bitbake recompiles everything when a file
listed in the CONFIGURE_FILES variable is changed. This makes no
sense in the IDE context and can be extremely tedious.
The complexity of resolving many dependencies is simply not part of an
application development workflow. So there is no argument for invoking
a powerful but heavy tool. Bitbake adds a lot of complexity that
application developers usually don't want to understand or debug. As
soon as Bitbake is needed for daily work, most application developers
therefore have a kind of defensive attitude towards the overall
solution.
- Parsing all the recipes, creating tasks queues and running taks
which do not have to be executed makes it very slow which is
another major disadvantage. Also e.g. calling bitbake in the faster
mode with the -b paramter does not help. With -b e.g. bbappends are
ignored but bbappends are essential for the SDK workflow.
- bitbake -T could avoid re-parsing. But it does not work as expected
by an IDE user. If one IDE starts a bitbake server in mem-res mode
changes on recipes are ignored by all bitbake instances started in
this build folder because all bitbake clients connect to the already
running server which does not parse the modified recipes anymore.
Therefore a much better user experience can be achieved if all the
tasks listed above are calls to a build tool such as cmake or self
contained scripts which are under control of the IDE. This commit
refactores to code to no longer invoke bitabke.
Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
|
|
Improve the GDB related tests. Verify GDB finds the correct source
files.
Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
|
|
Improve the previous commit:
- log an error if some assumptions are not true
- Use TARGET_DBGSRC_DIR variable
- Do the same for ide none
Why the additional source mapping is required:
For example the cmake-example recipe refers to sources like this:
./recipe-sysroot-native/usr/bin/x86_64-poky-linux/x86_64-poky-linux-readelf \
-wi image/usr/bin/cmake-example | grep -B1 DW_AT_comp_dir
...
<560> DW_AT_name : (indirect line string, offset: 0x1da):
/usr/src/debug/cmake-example/1.0/oe-local-files/cpp-example.cpp
...
Another example is powertop:
./recipe-sysroot-native/usr/bin/x86_64-poky-linux/x86_64-poky-linux-readelf \
-wi image/usr/sbin/powertop | grep -B1 DW_AT_comp_dir
...
<561> DW_AT_name : (indirect line string, offset: 0x1da):
/usr/src/debug/powertop/2.15/src/devlist.cpp
...
For recipes with local files this works. The oe-local-files folder is
not available in the rootfs-dbg and therefore the sources are first
found in the workspace folder. GDB searches for source files in various
places:
https://sourceware.org/gdb/current/onlinedocs/gdb.html/Source-Path.html
However, for the powertop example the sources opened in the editor are
from the rootfs-dbg instead of from the workspace.
Bitbake calls the compiler with
-fmacro-prefix-map=${S}=${TARGET_DBGSRC_DIR}
where TARGET_DBGSRC_DIR defaults to "/usr/src/debug/${PN}/${PV}".
A source map which maps the recipe specific path from TARGET_DBGSRC_DIR
to the workspace fixes this.
The already existing source map for /usr/src/debug applies for all other
recipes. It finds the sources (read only) in the rootfs-dbg folder.
Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
|
|
When launching the debug configuration, the source files from the debug
rootfs were openened in the editor instead of the local workspace files.
We add an exception to properly map them to the file being developed and
compiled by the IDE integration. This also more closely matches what the
user would expect compared to native development.
This is also true for the devtool fallback mode.
Signed-off-by: Enguerrand de Ribaucourt <enguerrand.de-ribaucourt@savoirfairelinux.com>
|
|
If multiple recipes are processed at once, the launch.json and the
tasks.json of the second recipe contains also the configurations for the
binaries of the first recipe.
Example:
devtool ide-sdk powertop cmake-example oe-selftest-image
generated a launch and a tasks configuration for the cmake-example
recipe which also offers debugging the powertop binary.
Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
|
|
Enough free storage space is needed to apply package upgrades.
(From yocto-docs rev: 6571eb02cbd5c2b96df0f279f25b63255ab7eac4)
Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Explicit the problems previous described as "obvious".
(From yocto-docs rev: ca939f9ceebbf9b5e82bb76abf1c4d20f039d68e)
Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Suggested-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Cover the new devtool ide plugin in the extensible sdk section.
Many thanks to Enguerrand de Ribaucourt for his re-view and
contributions.
(From yocto-docs rev: d318cc41e0600ca8e18bc6789cac414ae0226a07)
Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
PYTHON_PN is on its way out, therefore it's good to remove it from
documentation so its use is not promoted anymore.
(From yocto-docs rev: 74180c0f6bcdeadbd6f9a69d26f733c716f420fd)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
(From yocto-docs rev: 89403af3fa49ecb00dfec04ac9c490b6dc031008)
Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
To simplify the style, replace "Following is" and "Following are"
by "here is" and "here are", sounding more natural.
In some cases, also go further by simplifying "Here are/is xxx"
by "xxx are/is" when the "are" or "is" are not two far at
the end of the sentence.
In some cases too, completely remove the sentence, when
it's redundant with the preceding title.
(From yocto-docs rev: 52ba6bb16c73cbc2c0e77496d5226c49bce786f5)
Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
CC: Daniel Ammann <daniel.ammann@bytesatwork.ch>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
(From yocto-docs rev: e8a59c67a8719096f8b67942cec4f8a0656c410c)
Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
- "git" is now required to run "set_versions.py"
- Fix Ubuntu / Debian packages.
The previous instructions didn't run on Debian 12
Tested on Ubuntu 22.04 and Debian 12.
Reported on https://lists.yoctoproject.org/g/docs/message/4789
(From yocto-docs rev: cd0525f1a081567d5d8722d368511179655ca541)
Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Reported-by: <mhagans@skyviewsat.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Make the options more clear by providing them in a list instead of plain prosa.
Also add a ref for a presentation wrt spdx 3.0 in the Yocto project.
Fixes [YOCTO 7476]
(From yocto-docs rev: a15e354f98607592a67d2df91dfa2bf0707d8f38)
Signed-off-by: Simone Weiß <simone.p.weiss@posteo.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Log if the CVE_STATUS is set for a CVE, but the cve is not reported for a
component. This should hopefully help to clean up not needed CVE_STATUS
settings.
(From OE-Core rev: 013d531a84fa08b6ae8a47bdf3ba1fa8f18ba270)
Signed-off-by: Simone Weiß <simone.p.weiss@posteo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Set CVE_STATUS as none of the issues apply against the versions
used in the recipes.
(From OE-Core rev: cea8c8bf73e84133f566d1c2ca0637494f2d7afe)
Signed-off-by: Simone Weiß <simone.p.weiss@posteo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
CVE_STATUS was set for those components, but meanwhile databases are updated
with corrected information, so setting the CVE_STATUS is not needed anymore.
(From OE-Core rev: 5ec6057cfa66ceeb33bec013e320f8e3fa7d7ecf)
Signed-off-by: Simone Weiß <simone.p.weiss@posteo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Skip the test for checking if CVE_CHECK_IGNORE is not used.
It is deprecated now, but was not deprecated for kirkstone and dunfell.
Skip it therefore if a patch is intended for those branches.
(From OE-Core rev: e9b04664b1b2ba6aa1fa7318e3d4174b9cdb19da)
Signed-off-by: Simone Weiß <simone.p.weiss@posteo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Cross-reference the wiki page on patchtest now that it is updated and contains
more information how to address failed testcases. Adding it in patchtest only
is enough as patchtest-send-result already points to the wikipage for failures.
(From OE-Core rev: 51267f3c5d647fc6483ce6b597ed9e25c14bd425)
Signed-off-by: Simone Weiß <simone.p.weiss@posteo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The pkg-config workaround has been applied for kernel image building, but
not for module building. So pkg-config variables are different between
do_compile and do_compile_kernelmodules tasks. It may unnecessary trigger
rebuilding of a few host tools at the later task.
Especially when CONFIG_DEBUG_INFO_BTF is enabled in the kernel, it may even
trigger rebuilding vmlinux at do_compile_kernelmodules due to the rebuilt
host tools such as certs/extract-cert or objtool (on x86). This eventually
creates an inconsistent set of kernel binaries.
Here is the repro steps:
- Check out nanbield on x86
- The unexpected rebuild happens on kirkstone or possibly earlier
- Ensure that pahole is available (e.g. via meta-oe)
- Set KERNEL_DEBUG to "True" to properly set up PAHOLE
e.g.
$ export KERNEL_DEBUG="True"
$ export BB_ENV_PASSTHROUGH_ADDITIONS="${BB_ENV_PASSTHROUGH_ADDITIONS} KERNEL_DEBUG"
- Enable CONFIG_DEBUG_INFO_BTF=y
e.g.
$ bitbake -c menuconfig virtual/kernel
-> Kernel hacking
-> Compile-time checks and compiler options
-> Generate BTF typeinfo
- Build the kernel
e.g.
$ bitbake virtual/kernel
The BTF information in the resulting bzImage and kernel modules are
inconsistent, because the module's BTF information is generated using the
"second" vmlinux that doesn't have the identical BTF to the "first" vmlinux.
These modules can't be loaded at runtime due to the BTF mismatch.
This also leads to a build-id mismatch between the installed bzImage and
vmlinux since the bzImage is created from the first vmlinux, but the
installed vmlinux is the second one.
$ eu-readelf -n tmp/work/qemux86_64-poky-linux/linux-yocto/6.5.13+git/image/boot/{bzImage*,vmlinux*} | grep "Build ID"
Build ID: 4a0d62ee7fef0244950f0f604253729875bea493
Build ID: fb99b3d91399dbe42bf67ddee59e0f5a0c7f74d9
To avoid the unexpected rebuilding that results in such inconsistency, set
the same pkg-config variables when building kernel and modules. For kernel
5.19 and above, simply set the HOSTPKG_CONFIG in the make command line.
(From OE-Core rev: cd2072e5d953af981339427028e19083257e6a92)
Signed-off-by: Munehisa Kamata <kamatam@amazon.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Upgrade to latest 1.20.x release [1]:
$ git log --oneline go1.20.13..go1.20.14
90a870f1dc (tag: go1.20.14, origin/release-branch.go1.20) [release-branch.go1.20] go1.20.14
a2f4a5a6e7 [release-branch.go1.20] Revert "crypto/internal/boring: upgrade module to fips-20220613" +1
746a072791 [release-branch.go1.20] crypto/x509: properly gate test on macos version
d7df7f4fa0 [release-branch.go1.20] runtime: properly model rwmutex in lock ranking
$ git log --oneline go1.20.13..go1.20.14
[1] https://github.com/golang/go/compare/go1.20.13...go1.20.14
(From OE-Core rev: 44f81b6239f0f08877ccd6507c2a81f3650f193b)
Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
scripts/lib/devtool/ide_sdk.py:709: SyntaxWarning: invalid escape sequence '\.'
re_so = re.compile('.*\.so[.0-9]*$')
scripts/lib/devtool/ide_plugins/__init__.py:87: SyntaxWarning: invalid escape sequence '\$'
gdbserver_cmd_start += "test -f \$TEMP_DIR/pid && exit 0; "
scripts/lib/devtool/ide_plugins/__init__.py:88: SyntaxWarning: invalid escape sequence '\$'
gdbserver_cmd_start += "mkdir -p \$TEMP_DIR; "
scripts/lib/devtool/ide_plugins/__init__.py:89: SyntaxWarning: invalid escape sequence '\$'
gdbserver_cmd_start += "%s --multi :%s > \$TEMP_DIR/log 2>&1 & " % (
scripts/lib/devtool/ide_plugins/__init__.py:91: SyntaxWarning: invalid escape sequence '\$'
gdbserver_cmd_start += "echo \$! > \$TEMP_DIR/pid;"
scripts/lib/devtool/ide_plugins/__init__.py:94: SyntaxWarning: invalid escape sequence '\$'
gdbserver_cmd_stop += "test -f \$TEMP_DIR/pid && kill \$(cat \$TEMP_DIR/pid); "
scripts/lib/devtool/ide_plugins/__init__.py:95: SyntaxWarning: invalid escape sequence '\$'
gdbserver_cmd_stop += "rm -rf \$TEMP_DIR; "
(From OE-Core rev: e8c64921de7206bf617fc42433286867ae3c931d)
Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Since be0e796299b0 ("build: ship all config files with
--enable-datafiles") in bluez, installing input.conf and network.conf
has been redundant, as the bluez5 recipe already includes
--enable-datafiles.
(From OE-Core rev: 49391fdcf71b32c5fd3c7b134c1d1c45cc1db388)
Signed-off-by: Emil Kronborg <emil.kronborg@protonmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Changelog:
=========
9.18.24:
- Fix case insensitive setting for isc_ht hashtable.
[GL #4568]
9.18.23:
- Specific DNS answers could cause a denial-of-service
condition due to DNS validation taking a long time.
(CVE-2023-50387) [GL #4424]
- Change 6315 inadvertently introduced regressions that
could cause named to crash. [GL #4234]
- Under some circumstances, the DoT code in client
mode could process more than one message at a time when
that was not expected. That has been fixed. [GL #4487]
9.18.22:
- Limit isc_task_send() overhead for RBTDB tree pruning.
[GL #4383]
- Restore DNS64 state when handling a serve-stale timeout.
(CVE-2023-5679) [GL #4334]
- Specific queries could trigger an assertion check with
nxdomain-redirect enabled. (CVE-2023-5517) [GL #4281]
- Speed up parsing of DNS messages with many different
names. (CVE-2023-4408) [GL #4234]
- Address race conditions in dns_tsigkey_find().
[GL #4182]
- Conversion from NSEC3 signed to NSEC signed could
temporarily put the zone into a state where it was
treated as unsigned until the NSEC chain was built.
Additionally conversion from one set of NSEC3 parameters
to another could also temporarily put the zone into a
state where it was treated as unsigned until the new
NSEC3 chain was built. [GL #1794] [GL #4495]
- Memory leak in zone.c:sign_zone. When named signed a
zone it could leak dst_keys due to a misplaced
'continue'. [GL #4488]
- Log more details about the cause of "not exact" errors.
[GL #4500]
- The wrong time was being used to determine what RRSIGs
where to be generated when dnssec-policy was in use.
[GL #4494]
- The "trust-anchor-telemetry" statement is no longer
marked as experimental. This silences a relevant log
message that was emitted even when the feature was
explicitly disabled. [GL #4497]
- Fix statistics export to use full 64 bit signed numbers
instead of truncating values to unsigned 32 bits.
[GL #4467]
- NetBSD has added 'hmac' to libc which collides with our
use of 'hmac'. [GL #4478]
(From OE-Core rev: d7f31aba343948dbaadafc8c0c66f78e6ffb46e3)
Signed-off-by: Soumya Sambu <soumya.sambu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Currently there is only one defined imager as part of oe-core's wic
implementation: 'direct'. However, having a highly plugin-based design,
wic allows users to define their own imagers (and sources).
Therefore don't hard-code the filename extension of the imager output to
be 'direct' (i.e. the default imager). Allow the extension to follow the
name of the imager being used.
A user can specify a custom imager via the WIC_CREATE_EXTRA_ARGS variable.
If the user does not specify an imager, then 'direct' is assumed.
(From OE-Core rev: dc5a7c76761ed47e0456228956de900d806063bb)
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Until now, ${datadir}/locale/locale.alias file were automatically added
to a weird glibc-locale-locale.alias package by split_locales() during
do_package task.
Create an explicit package name in recipe for this file.
(From OE-Core rev: 405c5b6f04b531c968d0f8348c2dafe363011898)
Signed-off-by: Jonathan GUILLOT <jonathan@joggee.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
split_locales() must only check subdirectories in paths added to
LOCALE_PATHS to avoid creating weird packages based on filenames also
present in paths.
Without such a filter, cups recipe adding ${datadir}/cups/templates to
LOCALE_PATHS creates the following incorrect packages:
- cups-locale-add-class.tmpl
- cups-locale-add-printer.tmpl
- cups-locale-admin.tmpl
(From OE-Core rev: ba3aee0d516bd066829d6edaa8d7bacdd75dd6ef)
Signed-off-by: Jonathan GUILLOT <jonathan@joggee.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This adds a test for 13904's fix by creating a convoluted set of recipes
with USERADD_DEPENDS in non-alpha order.
(From OE-Core rev: bfff81195cb9ba2493e366022470b2e0051d8071)
Signed-off-by: Eilís 'pidge' Ní Fhlannagáin <pidge@baylibre.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
postinst-useradd-* haven't been running in order of dependency.
This patch is reworked from Piotr Łobacz's patch and fixes:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=15084
https://bugzilla.yoctoproject.org/show_bug.cgi?id=13904
basepasswd_sysroot_postinst in base-passwd can install postinst-useradd-*
scripts with any order. Sometimes this means, for example a useradd postinst
will attempt to run without the corresponding group postinst causing errors.
This patch ensures that we first run groupadd, then useradd and then
group membership.
[RP: Tweaked to avoid removing previous fixes and for whitespace/style issues
Also ensure the scripts are changed to execute with -e to highlight errors]
(From OE-Core rev: 322ef726132a47d977d2c6ee41de5358f1e85994)
Signed-off-by: Eilís 'pidge' Ní Fhlannagáin <pidge@baylibre.com>
Signed-off-by: Piotr Łobacz <p.lobacz@welotec.com>
Signed-off-by: Jan Górski <j.gorski@welotec.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The current implementation only performs a git lfs fetch alongside of a
regular git fetch. This causes issues when the downloaded revision is
already part of the fetched repository (e.g. because of moving back in
history or the updated revision already being part of the repository at
the time of the initial clone).
Fix this by explicitly checking whether the required LFS objects are
available in the downloade directory before confirming that a downloaded
repository is up-to-date.
This issue previously went unnoticed as git lfs would silently fetch the
missing objects during the `unpack` task. With network isolation turned
on, this no longer works, and unpacking fails.
(Bitbake rev: cfae1556bf671acec119a6c8bbc4b667a856b9ae)
Signed-off-by: Philip Lorenz <philip.lorenz@bmw.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
There is a very rare case where the maxval is improperly computed
initially for cache loading progress, and the value will go over.
Explanation from bitbake/lib/bb/cache.py:736 in MulticonfigCache:__init__:progress()
# we might have calculated incorrect total size because a file
# might've been written out just after we checked its size
In that case, progressbar will receive a value over the initial maxval.
This results in a ValueError stack trace as well as bitbake returning 1.
Traceback (most recent call last):
File ".../poky/bitbake/lib/bb/ui/knotty.py", line 736, in main
cacheprogress.update(event.current)
File ".../poky/bitbake/lib/progressbar/progressbar.py", line 256, in update
raise ValueError('Value out of range')
ValueError: Value out of range
This fix mirrors the behavior of MulticonfigCache and accepts the new
value as the new maxval. This is also what the percentage printout
is doing in bitbake/lib/progressbar/progressbar.py:191 in ProgressBar:percentage()
I encountered this issue randomly while working on a project with
VSCode saving files while commands where fired.
Note: This file is a fork from python-progressbar. It hasn't been
refreshed in 8 years. We did only two commits, 5 years ago with minor
modifications. This new change is also not how the upstream project is
behaving.
(Bitbake rev: 7cea7f7a87da041fc1ad370c5c3d15aabad3a0d4)
Signed-off-by: Enguerrand de Ribaucourt <enguerrand.de-ribaucourt@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Some ditros don't enable /proc/pressure and it tends to be those which we
see bitbake timeout issues on, seemingly as load gets too high and the bitbake
processes don't get scheduled in for minutes at a time.
Add support for stopping running extra tasks if the system load average goes
above a certain threshold by setting BB_LOADFACTOR_MAX.
The value used is scaled by CPU number, so a value of 1 would be when
the load average equals the number of cpu cores of the system, under one
only starts tasks when the load average is below the number of cores.
This means you can centrally set a value such as 1.5 which will then
scale correctly to different sized machines with differing numbers
of CPUs.
The pressure regulation is probably more accurate and responsive, however
our graphs do show singificant load spikes on some workers and this
patch is aimed at trying to avoid those.
Pressure regulation is used where available in preference to this load
factor regulation when both are set.
(Bitbake rev: 14a27306f6dceb4999c2804ccae5a09cc3d8dd49)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Re-enable connection pooling in case `postgresql+psygopg` driver
is used. Async connection pooling is supported in psycopg 3 [psycopg]
driver in SQLAlchemy. Allow the connection pool to grow to
arbitrary size.
(Bitbake rev: 4fe05513b5314c201725e3f8ad54f58d70c56258)
Signed-off-by: Tobias Hagelborn <tobiasha@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The Poky distro is explicitly a _reference_ distribution for _testing_
and _development_ purposes. It enables most hardware and software
features so that they can be tested, but this also means that
from a security point of view the attack surface is very large.
We encourage anyone using OpenEmbedded for production use to create their
own distribution and not use Poky. To encourage this behaviour further,
add a warning to /etc/motd when Poky is used so the developer will see it
when they log in.
(From meta-yocto rev: 2e0cec1e9d97f78ba015da8812fd1888c47debcb)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
When a new base-files bbappend was added to meta-poky, it causes selftest
failures. Whilst this isn't ideal, workaround that issue for now since
the append is being added for security visibility and changing the tests
to support this more generically looks invasive.
(From OE-Core rev: 7cf85204f0943bf741ffce5c4105340197c714df)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
There isn't any reason for coreutils-native as a DEPENDS, so
remove it to speed up tests.
(From OE-Core rev: 1aa91868094e8d4e3991cd3faebc17fdf6931907)
Signed-off-by: Eilís 'pidge' Ní Fhlannagáin <pidge@baylibre.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This reverts commit fc8e5d7c13f62e987b76971116cf290fd01a0c8f.
We need to use the absolute path to the compiler so that the VSCode
configuration generated by devtool ide-sdk could lint meson projects.
A feature was just added to vscode-cpptools to support conveying the
compilerPath in addition to the compile_commands.json. The next
commits adds the necessary configuration. We can revert this one and
keep the meson paths as they were.
(From OE-Core rev: 9c2faa835bd7af3e6f6bd7cc08495bd4b3ca9d0b)
Signed-off-by: Enguerrand de Ribaucourt <enguerrand.de-ribaucourt@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The compile_commands.json file output by meson uses the compiler as if
present in the $PATH. However, when using an IDE, the $PATH used by
bitbake is not there.
The vscode-cpptools now allows to define the compilerPath in addition
to replace the one from compile_commands.json.
(From OE-Core rev: d9f5c27c8beee07c7cbbed11f5d45058e7315846)
Signed-off-by: Enguerrand de Ribaucourt <enguerrand.de-ribaucourt@savoirfairelinux.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This patch remained after bumping from 6.1 to 6.6
(From OE-Core rev: 3083c9cc3c117b6284fee6926da2200cef509e6f)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The rust testsuite was redirecting command output to a file, which made it
hard to debug failure cases since the logs were not available to print to
the console.
Rework the code so it uses the existing popen logging and hence allows us
to improve the error logging situation and make debugging failures easier.
(From OE-Core rev: ac82dc43b8151ed34c4ad51e9ab7f4a612990486)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
libvirt has added a feature that all sockets for a service being enabled when a single
one of them is enabled since 9.9.x[1], it likes serviceA enable serviceB, serviceB enable
serviceA, that cause our systemctl script trap into a dead loop in postinstall stage,
the error message as below:
Traceback (most recent call last):
File "/usr/lib/python3.8/pathlib.py", line 722, in __str__
return self._str
AttributeError: _str
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "recipe-sysroot-native/usr/bin/systemctl", line 255, in enable
SystemdUnit(self.root, also).enable(unit)
File "recipe-sysroot-native/usr/bin/systemctl", line 255, in enable
SystemdUnit(self.root, also).enable(unit)
File "recipe-sysroot-native/usr/bin/systemctl", line 255, in enable
SystemdUnit(self.root, also).enable(unit)
[Previous line repeated 988 more times]
......
RecursionError: maximum recursion depth exceeded while calling a Python object
Here using an array to record the services which has been enabled to filter the duplicates.
Ref:
[1] https://github.com/libvirt/libvirt/commit/826931e95a38af8322f8ad069dc89117c6404a00
(From OE-Core rev: 4c45f975310184a773b25b8e7d7ef50fba2f7bd6)
Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
So far it was assumed that it was detected ok for target recipe but
actually it ends up with warnings and build moves on, however with
gcc-14 these warnings are treated as errors and we see the problem even
with target recipes.
(From OE-Core rev: da381fb3d9dcd0e66bc3b48bdfde95cd29f0c654)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Allow interface renaming if 'pni-names' is a distro
feature.
We do not add QB_NO_PNI to QB_CMDLINE_IP_SLIRP because
renaming was never suppressed for slirp.
(From OE-Core rev: d8d92ad46273a4e305f690f2820a475e4d7f6701)
Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
There was a report that enabling assertions and all tests results in
notices in log.do_configure:
NOTE: building with unit tests increases the size of the installed library and renders it insecure.
NOTE: building with assertions increases library size and decreases performance.
This was overlooked when dbus and dbus-tests recipes were merged;
enabling all tests and assertions still requires a special, separate
build of dbus. If those tests are useful this could be revisited.
Until then, we should use productions settings for the main recipe.
Buildhistory-diff:
packages/core2-64-poky-linux/dbus/dbus-dbg: PKGSIZE changed from 9958176 to 8627824 (-13%)
packages/core2-64-poky-linux/dbus/dbus-lib: PKGSIZE changed from 544347 to 346339 (-36%)
packages/core2-64-poky-linux/dbus/dbus-ptest: PKGSIZE changed from 3524983 to 3116951 (-12%)
packages/core2-64-poky-linux/dbus/dbus-ptest: FILELIST: removed "/usr/share/installed-tests/dbus/test-dbus-launch-eval.sh_with_config.test /usr/share/installed-tests/dbus/test-counter_with_config.test /usr/libexec/installed-tests/dbus/test-dbus-launch-eval.sh /usr/libexec/installed-tests/dbus/test-dbus-launch-x11.sh /usr/share/installed-tests/dbus/test-counter.test /usr/libexec/installed-tests/dbus/test-counter /usr/share/installed-tests/dbus/test-dbus-launch-x11.sh.test /usr/share/installed-tests/dbus/test-dbus-launch-x11.sh_with_config.test /usr/share/installed-tests/dbus/test-dbus-launch-eval.sh.test"
packages/core2-64-poky-linux/dbus/dbus: PKGSIZE changed from 510939 to 350331 (-31%)
(From OE-Core rev: 054ce01ae84eb10e055a41ec8dd85ebce9ea23c8)
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|