Commit Graph

59291 Commits

Author SHA1 Message Date
Jon Mason
75e803a4d0 tune-cortexa*: Cleanups
Make the existing ARMv8 Cortex-A tunings similar in the way the cascade
the settings.

(From OE-Core rev: cde415c640164ffd3593aff1ba32b252e68adbd8)

Signed-off-by: Jon Mason <jon.mason@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-10 13:48:26 +01:00
Jon Mason
e66a7495d1 tune-cortexa57-cortexa53.inc: add CRC and set march
Add CRC to the default tuning of big.LITTLE Cortex-A57-A53.  This puts
it inline with all other ARMv8a tunings.  Also, reference
PACKAGE_EXTRA_ARCHS_tune-armv8a-crc instead of
PACKAGE_EXTRA_ARCHS_tune-aarch64, which sets the -march to armv8 and
enables the CRC.

(From OE-Core rev: 96b556ec509e224573fe34ba8001416dcc0e1ad4)

Signed-off-by: Jon Mason <jon.mason@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-10 13:48:26 +01:00
Jon Mason
07b13dfc0d tune-cortexa55.inc: clean-up ARMv8.2a uses
Remove 'crc', as that is implied by 8.2 (per GCC
https://gcc.gnu.org/onlinedocs/gcc/AArch64-Options.html#AArch64-Options).

Also, the PACKAGE_EXTRA_ARCHS should refer to the ARMv8.2a version, not
the more generic ARMv8 version.

(From OE-Core rev: 0e34eeeeb4dd60cfa86beb84f867e1940dbbefaa)

Signed-off-by: Jon Mason <jon.mason@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-10 13:48:26 +01:00
Jon Mason
2d9e3e1ec5 cortex-m0plus.inc: change file permissions
File is executable, and should be read/write.

(From OE-Core rev: fe211b16007848a36a5415e5b9bcf8ab3364dc74)

Signed-off-by: Jon Mason <jon.mason@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-10 13:48:26 +01:00
Chris Laplante
06b20b01a0 cve-check: avoid FileNotFoundError if no do_cve_check task has run
For example, if you just run 'bitbake cve-update-db-native' in a clean
build system, |cve_tmp_file| won't exist yet.

(From OE-Core rev: dd4473f3d8e1c1a587b6de660775e4b46ddc5fad)

Signed-off-by: Chris Laplante <chris.laplante@agilent.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-10 13:48:26 +01:00
Chris Laplante
b59e0bc9fe cve-update-db-native: use context manager for cve_f
(From OE-Core rev: ff422652e1b5db62205fafc75ce56bb5951d478d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-10 13:48:26 +01:00
Chris Laplante
9ba2f3b8c3 cve-check/cve-update-db-native: use lockfile to fix usage under multiconfig
Previously CVE_CHECK_DB_FILE / CVE_CHECK_DB_DIR was the same across
multiconfigs which led to a race condition wherein multiple
cve-update-db-native:do_populate_cve_db tasks could attempt to write to
the same sqlite database. This led to the following task failure:

    Error executing a python function in exec_python_func() autogenerated:

    The stack trace of python calls that resulted in this exception/failure was:
    File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
         0001:
     *** 0002:do_populate_cve_db(d)
         0003:
    File: '/mnt/data/agent/work/74f119cccb44f133/yocto/sources/poky/meta/recipes-core/meta/cve-update-db-native.bb', lineno: 103, function: do_populate_cve_db
         0099:        if year == date.today().year:
         0100:            cve_f.write('CVE database update : %s\n\n' % date.today())
         0101:
         0102:    cve_f.close()
     *** 0103:    conn.commit()
         0104:    conn.close()
         0105:}
         0106:
         0107:def initialize_db(c):
    Exception: sqlite3.OperationalError: disk I/O error

Use a lockfile to ensure multiple tasks don't step over each other.

(From OE-Core rev: 24e9380643a2ae3fcae193519cb64aedaf682153)

Signed-off-by: Chris Laplante <chris.laplante@agilent.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-10 13:48:26 +01:00
Chris Laplante
1b836a17ec cve-update-db-native: add progress handler
(From OE-Core rev: 79ae2e82b8ec11578177f428060b568d6c7d44ca)

Signed-off-by: Chris Laplante <chris.laplante@agilent.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-10 13:48:26 +01:00
Denys Dmytriyenko
7c9df041f4 weston: upgrade 8.0.0 -> 9.0.0
Weston 9.0.0 is released! This release cycle has been pretty quiet,
with just a few new features:

- A new kiosk shell allows to display regular desktop apps in an
  always-fullscreen mode
- Improved testing infrastructure: the test harness has been
  redesigned, DRM tests are now supported, DRM and OpenGL tests are now
  enabled in our CI
- DRM panel orientation property support

As always, a number of bug fixes are included as well.
https://lists.freedesktop.org/archives/wayland-devel/2020-September/041595.html

Add a patch to fix building of tests/weston-test-fixture-compositor.c on musl.

(From OE-Core rev: 3a638fbd81c365d7383ce91d7acb832c46acfb4c)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-10 13:48:26 +01:00
Ovidiu Panait
592a9e75f7 libxml2: Fix CVE-2020-24977
GNOME project libxml2 v2.9.10 and earlier have a global Buffer Overflow
vulnerability in xmlEncodeEntitiesInternal at libxml2/entities.c. The issue has
been fixed in commit 8e7c20a1 (20910-GITv2.9.10-103-g8e7c20a1).

Reference:
https://gitlab.gnome.org/GNOME/libxml2/-/issues/178

Upstream patch:
50f06b3efb

(From OE-Core rev: 92dc02b8f03f3586de0a2ec1463b189a3918e303)

Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-10 13:48:26 +01:00
Aníbal Limón
34eee398f9 recipes-graphics/xorg-xserver: Add patch to fix segfault when probe
Fix segfault on probing a non-PCI platform device on a system with PCI.

...
    at ../../xorg-server-1.20.9/os/log.c:1017
    at ../../xorg-server-1.20.9/os/osinit.c:156
    at ../../xorg-server-1.20.9/os/osinit.c:110
    at ../../../../xorg-server-1.20.9/hw/xfree86/common/xf86platformBus.c:292
    argv=argv@entry=0xffffca43c7c8) at ../../../../xorg-server-1.20.9/hw/xfree86/common/xf86Init.c:388
    at ../../xorg-server-1.20.9/dix/main.c:193
    init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=<optimized out>)
    at ../csu/libc-start.c:314
...

Backported from upstream rev e50c85f4e.

(From OE-Core rev: 3b37cbd53219d9c10640b462aa91991d8cbc2a23)

Signed-off-by: Aníbal Limón <anibal.limon@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-09 10:11:57 +01:00
Ross Burton
b18c140467 cmake: whitelist CVE-2016-10642
This CVE is specific to the npm package that can install cmake, so isn't
relevant to our cmake recipe.

(From OE-Core rev: 8e74ed809ec4c1f61264ecf5be4bc319e5e07766)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-08 23:03:04 +01:00
Ross Burton
1a99396ed5 harfbuzz: fix a build race around hb-version.h
(From OE-Core rev: e7cbfd0573b77d7debab3fbf4b05565ac8b33f3a)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-08 16:43:40 +01:00
Ross Burton
fc1d63c017 harfbuzz: update patch status
(From OE-Core rev: 3527a361c77ec901a4fa05b7c0835950793b759c)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-08 16:43:40 +01:00
Ross Burton
12f23b06fc curl: add vendors to CVE_PRODUCT to exclude false positives
To avoid false positives (such as CVE-2010-0734, rubygems:curl), expand
the CVE_PRODUCT list to include all the vendors that have been used.

(From OE-Core rev: bb265122cccea9466405fdd924ad10ce8cda0dec)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-08 16:43:40 +01:00
Oleksandr Kravchuk
260f490c28 ell: update to 0.33
Changelog
- Fix issue with uintset and number of bytes copied.
- Fix issue with overflow in DHCP lease T2 computation.
- Fix issue with side channel leak in l_ecc_scalar_new.
- Fix issue with missing MSG_MORE in l_cipher_set_iv.
- Add support for DHCP v6 client implementation.

(From OE-Core rev: 3ad8ca257d40f5041b3ec167e4117c687da448a9)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-08 16:43:40 +01:00
Zhixiong Chi
01e0c458ed gnutls: CVE-2020-24659
Backport the CVE patch from the usptream:
https://gitlab.com/gnutls/gnutls.git
commit 29ee67c205855e848a0a26e6d0e4f65b6b943e0a

(From OE-Core rev: 84b1bc500e318657cb7a8a189b59cc63bc91dca3)

Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-08 16:43:40 +01:00
Richard Purdie
e9ec164efa oeqa/concurrencytest: Improve builddir path manipulations
Its possible some patterns may cause problems with the current path
manipulations, make a small tweak to try and avoid potential pathname
overlap issues.

(From OE-Core rev: 889005dc17d3e3b8eadee907ee2c05b8ff613285)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-08 16:43:40 +01:00
Richard Purdie
906644c09e selftest/signing: Ensure build path relocation is safe
Similarly to 04ee0e8b95cd8ed890374e0007f976684206b630, ensure only full
build paths are replaced in the environment to avoid breaking buildtools.

(From OE-Core rev: fcd0a9683af1a9155eabbd9056e3b46d4a931b2e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-08 16:43:40 +01:00
Rahul Kumar
12d0fdd9c9 systemd-serialgetty: Fix sed expression quoting
Fix sed: -e expression #1, char 13: unterminated `s' command

Error Message:
| NOTE: Installed into sysroot: []
| NOTE: Skipping as already exists in sysroot: ['pseudo-native', 'glibc', 'patch-native', 'quilt-native', 'gcc-cross-arm', 'gcc-runtime', 'linux-libc-headers', 'libgcc', 'flex-native', 'xz-native', 'libtool-native', 'automake-native', 'binutils-cross-arm', 'zlib-native', 'mpfr-native', 'texinfo-dummy-native', 'autoconf-native', 'libmpc-native', 'gnu-config-native', 'gmp-native', 'attr-native', 'm4-native', 'gettext-minimal-native']
| DEBUG: Python function extend_recipe_sysroot finished
| DEBUG: Executing shell function do_install
| sed: -e expression #1, char 13: unterminated `s' command
| WARNING: exit code 1 from a shell command.
| ERROR: Execution of '/opt/Projects/poky/build/tmp/work/qemux86_64-poky-linux/systemd-serialgetty/1.0-r5/temp/run.do_install.11228' failed with exit code 1:
| sed: -e expression #1, char 13: unterminated `s' command
| WARNING: exit code 1 from a shell command.
|

To Fix this Issue using the strong (single quote) character in sed command.
It is recommend to use quotes. If we have meta-characters in the command, quotes are necessary.

(From OE-Core rev: e2fea05e150dcfec4b7dfbd8edddb53897026bf9)

Signed-off-by: Rahul Kumar <rahulk@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-08 16:43:40 +01:00
Adrian Freihofer
8d7b5e56ad oe-publish-sdk: add --keep-orig option
Support publishing the sdk-update as well as the sdk installer in one
go.

(From OE-Core rev: 97f1544132ba3bb0c85cdafff6a870c7ba0ef2e4)

Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-08 16:43:40 +01:00
Adrian Freihofer
da44b89f66 oe-publish-sdk: fix layers init via ssh
Escaping does not work in my use case. It must be escaped for
python, ssh and shell as well as for different versions of echo.
Let's try it a little less elegant, but hopefully more reliable.

(From OE-Core rev: 5cc1ae332eb6b05d83802c8d64ab2767c7079412)

Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-08 16:43:40 +01:00
Matt Madison
dbe75a790d image.bbclass: fix REPRODUCIBLE_TIMESTAMP_ROOTFS reference
Commit 97b439469a45a089431ca9c31893288c855045f4 added a fallback
mechanism for getting the rootfs timestamp. However, it uses curly
braces around the variable name, which causes bitbake resolve the
variable reference, rather than the shell, so the git timestamp
never gets used. Fix the reference to restore the intent of
making it a fallback for when there is no git timestamp to
retrieve.

(From OE-Core rev: fbcf2c1c255b0c61a795c032cf7b67f5db41baa8)

Signed-off-by: Matt Madison <matt@madison.systems>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-08 16:43:40 +01:00
Richard Purdie
c25309ecde bitbake: cooker: Ensure parser worker signal handlers are default
Otherwise this can interfer with multiprocessing exit handling.

(Bitbake rev: b88816c4c84fa4f5ad39c263f5e75b96476e9768)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-08 10:18:02 +01:00
Richard Purdie
1ba387a12c bitbake: cooker: Avoid parser deadlocks
If you make parsing fail (e.g. add something like:

X := "${@d.getVar('MCMACHINES').split()[1]}"

to meson.bbclass, then run "while true; do bitbake -g bash; done"
it will eventually hang. It appears the cancel_join_thread() call the
parsing failure triggers, breaks the results_queue badly enough that it
sits in read() indefintely (called from self.result_queue.get(timeout=0.25)).
The timeout only applies to lock aquisition, not the read call.

I've tried various other approaches such as using cancel_join_thread()
in other places but the only way things don't lock up is to avoid
cancel_join_thread() entirely for results_queue.

I do have a concern that this may adversely affect Ctrl+C handling
but equally, its broken now already and this appears to improve
things.

[YOCTO #14034]

(Bitbake rev: 9c61a1cc7be46c23da1f4ef3bee070fb83c4be57)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-08 10:18:02 +01:00
Richard Purdie
f19f252e2b runqemu: Add a hook to allow it to renice
We have an issue where qemu is being starved of resources on our autobuilders.
We can't raise its priority without special capacilties, therefore add a hook
which if present can allow this to happen using an executable
"~/runqemu-renice".

(From OE-Core rev: 141a3c9ce93bc3d526303021ecf0460c6e9fea8a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-06 09:58:50 +01:00
Richard Purdie
0486b342fe bitbake: cooker: Ensure parser is cleaned up
During cooker shutdown, its possible the parser isn't cleaned up. Fix
this (which may partially explain why threads were left hanging around
at exit).

(Bitbake rev: 928609f30f3a20aaa2f88afc18044a4e10199488)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-06 09:58:50 +01:00
Ross Burton
009d359036 local.conf.sample.extended: remove help2man reference
help2man isn't part of the early build anymore, so there's no point in
referring to it here.

(From meta-yocto rev: c601f5bd5ddfe8e8be709a4541b95c772a0d3b6f)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 22:21:07 +01:00
Khem Raj
19e786b6fa go: Upgrade to 1.15 major release
1.15 is latest major release changelog is [1] and detailed blog is [2]

Drop hardcoding ldso patch in favor of setting it using GO_LDSO variable
which can be defined in terms of linuxloader defined by OE

Setting GOBUILDMODE to pie is no longer needed

[1] https://golang.org/doc/go1.15
[2] https://blog.golang.org/go1.15

(From OE-Core rev: aa1bfaff4adc9246a2d65592b3a8061d55829086)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 22:19:20 +01:00
Ross Burton
d567c995c3 help2man: rewrite recipe
This recipe was originally explicitly minimal because it was needed to
bootstrap autotools, but that isn't the case anymore.

Instead of being explicitly native, use BBCLASSEXTEND.

No need to explicitly depend on autoconf-native automake-native, because
the autotools class does that.

As this recipe isn't needed in early build anymore there's no need to
avoid reconfiguring.

(From OE-Core rev: 1e98edf46d0b96da2aea7dabd1d7cf3ce6c5e7bd)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 22:19:20 +01:00
Ross Burton
b325f0bf30 kea: bump to 1.7.10
This is the latest release in the 1.7.x series so should be a safe
upgrade, and means we can drop a patch as the AC_TRY_RUN has an
optimistic fallback for cross-compiling now.

(From OE-Core rev: 49ce9c09d86d645f3fa30e41430075b1ffa8c768)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 22:19:20 +01:00
Ross Burton
b4a4b421bd kea: don't use PACKAGECONFIG inappropriately
The Kea recipe has PACKAGECONFIG options for boost, openssl, and
log4cplus. However, these are not optional but mandatory dependencies.

Remove the PACKAGECONFIGs and replace with explicit DEPENDS and
EXTRA_OECONF. Also the RDEPENDS in the PACKAGECONFIGs are redundant as
the library dependencies are generated correctly.

(From OE-Core rev: d58dc77ab71ea85f8f12ea4ca2e28e0afee60440)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 22:19:20 +01:00
Ross Burton
e2fabd7e5f kea: no need to depend on kea-native
kea-msg-compiler is only needed if you alter the messages and the
generated sources need to be rebuilt.  When this is the case, there are
better ways to build kea-msg-compiler that don't involve building all of
Kea.

Don't depend on kea-native, remove BBCLASSEXTEND=native, and the target
overrides.

(From OE-Core rev: 5e6174c58d5e3a95eccee773b6670242cb9ab8f4)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 22:19:19 +01:00
Ross Burton
7244c2d05c autoconf: consolidate DEPENDS
Depending on nativesdk- varients in a nativesdk build isn't correct, so
just collapse the DEPENDS down and let bitbake do the right thing (which
is leaving them as -native).

(From OE-Core rev: 4864167ad4ed4c57e49f2aa5e7c58383bddb052b)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 22:19:19 +01:00
Ross Burton
270c02f78c autoconf: consolidate SRC_URI
There's no point splitting SRC_URI between the .inc and the .bb when
there's just one recipe and the splitting appeared to be arbitrary.

(From OE-Core rev: f627fa2992420c09e57376fbba62d545512c19f2)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 22:19:19 +01:00
Ross Burton
2762e2e84b insane: only load real files as ELF
The file path checks are passed an ELF object if the file is an ELF. It
doesn't make a lot of sense to load symlinks to ELFs as if they're in
the same package then the real file will be checked too.

This should speed up do_package_qa slightly as libraries won't be
scanned repeatedly.

(From OE-Core rev: c63af30d3b6350361daff94a59d4f14d7c5395e1)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 22:19:19 +01:00
Ross Burton
f2e590d3a3 debianutils: change SRC_URI to use snapshot.debian.org
The primary Debian archive only contains tarballs which are currently
shipped in a release, so it's easy for a tarball we need to disappear.
Instead, point at snapshot.debian.org to ensure the link remains valid.

(From OE-Core rev: ce48e7d72fc9b747f9c35191d1954a58544ccfe1)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 22:19:19 +01:00
Ross Burton
4dcd34d532 gdk-pixbuf: add tests PACKAGECONFIG
Convert the installed-tests toggle from simply respecting PTEST_ENABLED
to a PACKAGECONFIG, so that it can be turned on/off in the usual manner.

(From OE-Core rev: 08e61ffae6056055b56f93678bcbb9fd71f3303e)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 22:19:19 +01:00
Khem Raj
b343e0e9f6 rpcbind: Use update-alternatives for rpcinfo
rpcinfo is also provided vy netkit in meta-networking

(From OE-Core rev: 28183dfd7446de9113773ab89edd0afb4ab82f7e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 22:19:19 +01:00
Richard Purdie
ef21d08424 bitbake: server/process: Note when commands complete in logs
Its hard to tell from the server logs whether commands complete or not
(or how long they take). Add extra info to allow more debugging of
server timeouts.

(Bitbake rev: 56285ada585ec1481449522282b335bcb5a2671e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 11:45:18 +01:00
Richard Purdie
707f99642a bitbake: server/process: Prefix the log data with pid/time information
Knowing which process printed which messages and the timestamp of the
message is useful for debugging, so add this. Ensure the log parsing
isn't affected by using search() instead of match().

(Bitbake rev: 1d043666710df1fa9d9586fd974c0371dd1514b0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 11:45:18 +01:00
Richard Purdie
f71587695c bitbake: server/process: Ensure we don't keep looping if some other server is started
Showing "leftover process" messages when a new server has started and is being
used by some UI is horrible. Compare the PID data from the lockfile to
avoid this (and the ton of confusing log data it generates).

Also, move the time.sleep() call to be after the first lock attempt, which
reduces noise in the logs significantly.

(Bitbake rev: ce1897a31afb5a14997bc3d2f459b90d43eecb7d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 11:45:18 +01:00
Richard Purdie
38c05fb822 bitbake: cooker: Assign a name to the sync thread to aid debugging
(Bitbake rev: ffdb3d3fa690c35e9a96fc451a5811f5131276f3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 11:45:18 +01:00
Richard Purdie
aaa286e48a bitbake: cooker: Ensure parser replacement calls parser final_cleanup
This could potentialy account for some of the missing thread cleanup
we're seeing.

(Bitbake rev: 8f2d690428de8934868b406b79c4699a8ebe902c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 11:45:18 +01:00
Richard Purdie
175e5f2702 bitbake: server/process: Don't show tracebacks if the lockfile is removed
lsof/fuser error if the file doesn't exist. It can be deleted by something
else so ignore this if it happens and loop.

(Bitbake rev: b100d22ce37b7548b50e59a71802bcc903acd6ea)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 11:45:16 +01:00
Richard Purdie
f6a40d457c bitbake: server/process: Ensure logging is flushed
The cookerlog output goes to a file and its misleading to look at it and
not have it up to date with what the cooker is actually doing. Ensure
written data is flushed.

Ultimately this should be using python's logging but that is for another
day, we need simple fixes right now.

(Bitbake rev: d95c3dd2b8ac50423976a7baf0a51e9580871761)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 11:45:16 +01:00
Richard Purdie
341c5ca419 bitbake: process: Avoid printing binary strings for leftover processes
The binary string printed into the output is ugly, parse this so the
linebreaks come out in the logs and make them much more readable (I
was misssing the information initially despite looking for it).

(Bitbake rev: c2dd8bb434d5738fedf9019651074b90affff3b2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 11:45:16 +01:00
Richard Purdie
e2afb73ccb bitbake: cookerdata: Fix exception raise statements
Lets use valid python even if it the original happens to work.

(Bitbake rev: 343187c57e1459b0e57f90463843782f3a3a8443)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 11:45:16 +01:00
Richard Purdie
16f820a2a8 bitbake: cooker/cookerdata: Use BBHandledException, not sys.exit()
Calling sys.exit() in the middle of the code is rather antisocial. We catch
this in various places but we shouldn't have to. In all these cases we have
already sent events explaining to the user what happened. This means the
correct exception is BBHandledException.

The recent startup changes have moved the point a lot of this code gets
called to inside the UI, with memres it would have always been possible
from there anyway. This change makes things much more consistent.

(Bitbake rev: 91699f366d24480ff3b19faec78fb9f3181b3e14)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 11:45:16 +01:00
Mark Hatle
4cb33dae15 bitbake: process.py: Handle SystemExit exception to eliminate backtrace
With an invalid layer, the desired error output should be:

  ERROR: The following layer directories do not exist:
  ERROR:    /this_path_does_not_exist
  ERROR: Please check BBLAYERS in .../build-invalid-layer/conf/bblayers.conf

Instead we were met with a backtrace:

Traceback (most recent call last):
  File "/scratch1/fray/xilinx/poky/bitbake/bin/bitbake", line 36, in <module>
    cookerdata.CookerConfiguration()))
...
  File "/scratch1/fray/xilinx/poky/bitbake/lib/bb/cookerdata.py", line 267, in parseBaseConfiguration
    self.data = self.parseConfigurationFiles(self.prefiles, self.postfiles)
  File "/scratch1/fray/xilinx/poky/bitbake/lib/bb/cookerdata.py", line 358, in parseConfigurationFiles
    sys.exit(1)
SystemExit: 1

(Bitbake rev: 3a2503c785a5cd9dca0dc68c3aec31b4bec7684b)

Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-09-05 11:45:16 +01:00