Compare commits

..

792 Commits

Author SHA1 Message Date
Richard Purdie
03d4d9d68f bitbake: bitbake: Bump verison 1.43.1 -> 1.43.2
This allows metadata to depend on SignatureGeneratorUniHashMixIn which was recently added.

(Bitbake rev: f0f814407fdd2fffa7071c36c011b489bfcd53da)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 20:22:25 +01:00
Alessio Igor Bogani
a558e507ae rootfs-postcommands: Avoid use of an hard-coded value
(From OE-Core rev: 520c6f30cd571166a0d890d86b461f24f7a6998f)

Signed-off-by: Alessio Igor Bogani <alessio.bogani@elettra.eu>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 20:22:25 +01:00
Richard Purdie
34c34b9a57 sanity.conf: Bump minimum bitbake version
We need SignatureGeneratorUniHashMixIn from newer bitbake so bump the minimum
version.

(From OE-Core rev: 178e2d0ba8e645c5cd962b07bd7b31839cb269d3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 20:22:25 +01:00
Richard Purdie
ed05d969ea base: Improve module import error message
Turn:

ERROR: Unable to parse Var <OE_IMPORTED[:=]>
Traceback (most recent call last):
  File "Var <OE_IMPORTED[:=]>", line 1, in <module>
  File "/media/build1/poky/meta/classes/base.bbclass", line 35, in oe_import(d=<bb.data_smart.DataSmart object at 0x7f1d941ad208>):
         for toimport in oe.data.typed_value("OE_IMPORTS", d):
    >        imported = __import__(toimport)
             inject(toimport.split(".", 1)[0], imported)
  File "/media/build1/poky/meta/lib/oe/sstatesig.py", line 267, in <module>:

    >class SignatureGeneratorOEEquivHash(SignatureGeneratorOEBasicHashMixIn, bb.siggen.SignatureGeneratorUniHashMixIn, bb.siggen.SignatureGeneratorBasicHash):
         name = "OEEquivHash"
bb.data_smart.ExpansionError: Failure expanding variable OE_IMPORTED[:=], expression was ${@oe_import(d)} which triggered exception AttributeError: module 'bb.siggen' has no attribute 'SignatureGeneratorUniHashMixIn'

into:
ERROR: Error importing OE modules: module 'bb.siggen' has no attribute 'SignatureGeneratorUniHashMixIn'

which can then trigger a version mismatch error message.

(From OE-Core rev: 5b01726d1cf478aba8d1acc73e29f6cab0c9371e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 20:22:25 +01:00
André Draszik
a98bc7dcdf packagegroup: fix a comment regarding PACKAGE_ARCH
packagegroups whose dependencies are affected by MACHINE_FEATURES
need to be marked as MACHINE_ARCH *before* inheriting the
packagegroup class, not after.

This has changed in commit 9c826962ec8f
("packagegroup: Make allarch inherit conditional"),
commit 4f3f34deaf in poky but the comment here
wasn't updated at the time.

(From OE-Core rev: 7eae2502936aa36401491cd1e0e5975db96529ae)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 20:22:25 +01:00
Joe Slater
4457c74ee5 bash-completion: add image feature
Create bash-completion-pkgs image feature to load *-bash-completion packages
into an image.  The packages are created by the bash-completion
bbclass but are currently never loaded.

(From OE-Core rev: d47c5981877555a5a6b9aeb93ea6f3c1aa97fc44)

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 20:22:25 +01:00
Douglas Royds
8946c65c8f icecc: Don't use icecc when INHIBIT_DEFAULT_DEPS is set
We don't have a compiler, so no icecc.
Silences a spew of warnings of the form:

    do_configure: Cannot use icecc: could not get ICECC_CC or ICECC_CXX

(From OE-Core rev: 0315aabeff8e6483b737d0e23d6841f1394ad3c8)

Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 20:22:25 +01:00
Alexandre Bard
fb427f4f5c systemd: Expose resolv-conf alternative only when resolved is built
When systemd is built without internal resolver, it does not make
sense to expose it as a resolv-conf alternative and can even break
images where this alternative would be chosen, because of an
invalid symlink.

(From OE-Core rev: 91efc50723229672b6e8187b69b183cba525f199)

Signed-off-by: Alexandre Bard <alexandre.bard@netmodule.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 20:22:25 +01:00
Alexander Kanavin
e66afddf41 binutils: drop UPSTREAM_VERSION_UNKNOWN
As there is now a new version of binutils,
upstream version check works again.

(From OE-Core rev: c63c7fb890ab356c747d6948ca9e13e0c3b83dfb)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 20:22:25 +01:00
Konrad Scherer
e1c173621a gen-lockedsig-cache: Replace glob lookup with hash to filename lookup
Using the glob function to map signatures to sstate files is very slow
when the sstate is large and accessed over nfs. The lookup now only
loads the necessary prefixes and doesn't use glob as all.

Unfortunately I don't have access to the systems where the performance
isse was noticed and on my test system the glob is fast enough that
the performance numbers aren't useful. I could verify that file list
returned by the new code is the same.

[YOCTO #13539]

(From OE-Core rev: ad36335b8592e0387dd36066920cd5ffefd375f8)

Signed-off-by: Konrad Scherer <Konrad.Scherer@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 20:22:25 +01:00
Joshua Watt
4148650475 classes/reproducible_build: Create SDE destination
Creates the source data epoch file destination directory when restoring
from sstate

(From OE-Core rev: f5259a62d444dfc221a9ba592dbca35564f794ac)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 20:22:25 +01:00
Khem Raj
f2df235b49 core-image-sato-sdk-ptest: Remove valgrind ptests for riscv
valgrind is not yet ported to riscv

(From OE-Core rev: 93ed352467a9e2121b0cd4b50989d91f14a16145)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 20:22:25 +01:00
David Reyna
97a5762be1 bitbake: toaster: improve warnings when adding dependency to packages
Some of the objects that bitbake reports to Toaster as dependencies to packages
are known objects that are not packages, for example library files and kernel
modules. In the Toaster logs, mark these as "Info" instead of "Warning".

[YOCTO #13386]

(Bitbake rev: 0d66f644d647900e8f5afa526a6d9cee687c41cc)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 14:42:13 +01:00
David Reyna
1ca006c7b6 bitbake: toaster: issues in import layer when clicking 'add layer'
There were three issues in this one bug.
  1) The Add Layer button allows empty layers
  2) The internal XHR URL was wrong, which caused a hidden AJAX error
     and did not correctly complete the action nor disable the button
     after an add.
  3) There was a race condition between typing in the dependent layer
     select text box (which would normally disable the add button), and
     the typeahead pull-down selection (which would normally enable the
     add button). This forced the user to select the typedahead layer twice.

[YOCTO #13385]

(Bitbake rev: c4ccf3a792ae7e8549b879ba77ff7f7edb0e665a)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 14:42:13 +01:00
Joshua Watt
eb6a52f51f local.conf.sample: Add Hash Equivalence
Updates the local.conf sample file to reference the variables required
to enable a local hash equivalence server.

(From meta-yocto rev: 29c3a4087c4f358ab88193fdf3787f731a4f4913)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 14:41:17 +01:00
Richard Purdie
562de41ce7 bitbake: tests/runqueue: Fix hashserve shutdown race
The hashserve can delete its socket whilst the cleanup us happening leading to
backtraces and test failures.

Add code to avoid this race condition.

[YOCTO #13542]

(Bitbake rev: efd7b025cee25d0ee668c09476395d08fcf5ae1a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 14:18:59 +01:00
Ross Burton
0b9f2ac2e1 lttng-ust: update patch Signed-off-by
(From OE-Core rev: 402eef252385b391d1b60fc77d758cc4c8de1b3c)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:48 +01:00
André Draszik
a2f9d0c4bf ruby: fix non-IPv6 support
When IPv6 support is disabled, this recipe mis-configures
ruby so that it end up non-working:
--enable-wide-getaddrinfo instructs ruby to re-implement
the standard getaddinfo(), but IPv6 support is still
automatically detected via ext/socket/extconf.rb
independently of that flag.

To re-implement getaddrinfo(), ruby uses the obsolete
getipnodebyaddr() and getipnodebyname() functions - i.e.
according to the man-page, glibc provided those only in
glibc 2.1.91-95; and of course compilation fails. [1]

Switch to ruby's standard --enable-ipv6= configure
options to make the build work without warnings, and
ruby work at runtime as well.

[1] Compilation and linking actually succeed, albeit with
a warning regarding implicit declaration / unresolved
symbols. The error is only obvious at runtime due to the
unresolved symbols...

(From OE-Core rev: 6ff71dd308b1611df7a8ea811a79b7cb884c99e9)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:48 +01:00
André Draszik
efa2caab22 ruby: configure mis-detects isnan/isinf on musl
The configure script does not detect isnan/isinf as macros
as is the case in musl:
    checking for isinf... no
    checking for isnan... no

Backport an upstream patch from 2.7.0-preview1 to address this:
    checking whether isinf is declared... yes
    checking whether isnan is declared... yes

(From OE-Core rev: b1afaccdba31341cace4b8d84d118ca76098587e)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:48 +01:00
André Draszik
4262717595 ruby: drop long-merged CVE patches
The CVE patches here address the original problem in
a different way to how upstream solved it, and are
superfluous.

Ruby updated to Onigmo v6.1.3+669ac999761 before its
v2.5.0 release, and both CVEs were fixed before Onigmo
v6.1.3:
    https://github.com/k-takata/Onigmo/releases/tag/Onigmo-6.1.3
    https://github.com/k-takata/Onigmo/commits/Onigmo-6.1.3
        4094554657
        783b7ef491

Because the issues were fixed differently here and
in Ruby (Onigmo), patch never complained about
duplicatation during recipe updates.

(From OE-Core rev: 90dbe9019c81e25923ed450df80b4401d16287b4)

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:48 +01:00
Ross Burton
6e3d16b565 opkg: remove redundant systemd inherit
The service file was removed in oe-core 23dcf7ea but the inherit was not.

(From OE-Core rev: f5bb06129391b62f7dff400f10a0b4d2934625d2)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:48 +01:00
Trevor Gamblin
b0f54181fa opkg: remove pathfinder PACKAGECONFIG option
pathfinder has no recipe and its last update was in 2013
(see http://freshmeat.sourceforge.net/projects/pathfinder),
so it should be removed from the list of PACKAGECONFIG options
for opkg. --disable-pathfinder is added to EXTRA_OECONF for
good measure.

(From OE-Core rev: 49c4febcbf66587b01559d208873ca1d563ed3e0)

Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:48 +01:00
He Zhe
afc8407398 ltp: Fix hang of cve test cases
Backport a patch to the fix possible hang caused by the case of CVE-2017-17052.

CVE: CVE-2017-17052

(From OE-Core rev: 3bde502f612f17b6ed928b04cf5c4ba9ad54d598)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:47 +01:00
Khem Raj
24bf752459 musl: Fix __riscv_mc* containers to match glibc
Fixes packages like gdb compile

(From OE-Core rev: 6792307a41c71786841f8fa6224af81be201688e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:47 +01:00
Otavio Salvador
4d9157099b mesa: Add freedreno PACKAGECONFIG option
(From OE-Core rev: a37aafc691ea89e326352e360bfd97ad473f4287)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:47 +01:00
Lei Maohui
9df127876d bluez5: update patch to fix do_patch error when PATCHTOOL = "patch".
(From OE-Core rev: 37eabe25d1e6dffee8e96675c42c25c64dd3bc70)

Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:47 +01:00
Ross Burton
67d0a62bdd pango: fix the failing testiter test case
The testiter test case fails if libthai support isn't enabled because it
execises codepaths that need libthai to be correct.  Backport a patch to skip
this test if libthai isn't enabled.

(From OE-Core rev: 7472bdb6ed1039b7f38afc728c034a13d0bbee0e)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:47 +01:00
Ross Burton
059961ff69 python3: move runpy to core
The runpy module is used to implement 'python3 -m foo', so move it to
python3-core as it's an essential part of the CLI.

(From OE-Core rev: eba857d3e52f83d426e95fa8373799da058f9484)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:47 +01:00
Trevor Gamblin
c855f55a7d tiff: fix CVE-2019-14973
CVE reference: https://nvd.nist.gov/vuln/detail/CVE-2019-14973
Upstream merge: https://gitlab.com/libtiff/libtiff/commit/2218055c

(From OE-Core rev: b57304c1afb73a698a1c40a017d433e4d81a8df2)

Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:47 +01:00
Diego Rondini
2657837f72 initramfs-framework: support PARTLABEL option
Since commit (kernel >= 4.20):
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f027c34d844013d9d6c902af8fa01a82d6e5073d
specifying rootfs by PARTLABEL is supported. This commit adds support to
specify root by GPT partition label.

(From OE-Core rev: ebc974be12c3e83e961c99c24fde267d6c8e8bfc)

Signed-off-by: Diego Rondini <diego.rondini@kynetics.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:47 +01:00
Yi Zhao
c21d6a80f9 python: add tk-lib as runtime dependency for python-tkinter
Fixes:
ERROR: python-2.7.16-r0 do_package_qa: QA Issue:
/usr/lib/python2.7/lib-dynload/_tkinter.so contained in package
python-tkinter requires libtk8.6.so, but no providers found in
RDEPENDS_python-tkinter? [file-rdeps]

(From OE-Core rev: f78248a2380bbbbf271b5bb02c762f5bc7a3a92e)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:47 +01:00
Li Zhou
b3e0775fcf shadow: use relaxed usernames for all
The previous commit <shadow: use relaxed usernames> works only for
target. When test with configuration:
INHERIT += 'extrausers'
EXTRA_USERS_PARAMS += "useradd -p '' aBcD; "
and run "bitbake core-image-minimal", error occurs:
NOTE: core-image-minimal: Performing useradd with [
-R .../build/tmp-glibc/work/qemux86_64-wrs-linux/core-image-minimal/1.0-r0/rootfs -p '' aBcD]
useradd: invalid user name 'aBcD'

Here move the patch for using relaxed usernames from class_target to
the source code for all.

(From OE-Core rev: 8adf98e63fefeaf2c841a038a4497f9845bc7b04)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:47 +01:00
Andre McCurdy
0c7a087b35 ffmpeg: enable more verbose build logs
(From OE-Core rev: 14cca8246423c3af8b8478e391daf49a908d696c)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-02 10:09:47 +01:00
Richard Purdie
a73cbe649a bitbake: siggen: Remove full path from unitaskhashes keys
The full paths make the cache useless in the sdk. They also bloat the
cache size. They're for human debugging benefit only so compromise and
reduce this to the filename.

(Bitbake rev: 3b275c4083eae1d3781f0862919af9de83932b0f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 17:23:35 +01:00
Richard Purdie
9254d537aa bitbake: runqueue: Small performance optimisation
A minor performance optmisation to keep lists smaller when running large
builds. We can do this since once a task has been built, we don't need
to worry about it. This improves a major bottleneck that shows up on
performance profile charts in dryruns.

(Bitbake rev: cd6b89230823707c3c9bb9e6883bf5a971916581)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 17:23:35 +01:00
Richard Purdie
2f8cd1d021 bitbake: runqueue: Save unihashes more frequently
There are some runqueue code paths where the unihash cache would not be
saved where for example only parsing or an occurred. Save the cache at the
end of runqueue generation to ensure entries are cached.

(Bitbake rev: 9eee0d36870c11dd303894a6151c33a83bd3a1bc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 17:23:35 +01:00
Richard Purdie
ba0ff38cab bitbake: siggen: Avoid writing misleading sigdata files
Use the unihash in the output filename of sigdata files else the contents
of stamp directories is misleading. Write the unihash into the singature to
make it clear what happened.

(Bitbake rev: feb01ee54d3706fe93768f332054c7532f7209e4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 17:23:35 +01:00
Richard Purdie
7ab4808e0a bitbake: siggen/runqueue: Fix signature mismatch issues
We need to set the setscene tasklist before we call into the
taskhash/unihash code else the behaviour is inconsistent.

Avoid reporting hashes for non setscene tasks since we'd never
query that.

(Bitbake rev: 419a7840b8627278db694029c25df00214d01d96)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 17:23:35 +01:00
Richard Purdie
ff872fdda5 bitbake: runqueue: Change task migration behaviour for rerunning setscene tasks
Currently runqueue will rerun setscene tasks multiple times as hashes
change. This has caused numerous problems since a setscene task may
become "unavailable" for some future signature combination and the code
then can't easily "unskip" tasks its already passed into the execution
queue.

At least for now, only run setscene once and assume they're equivalent
at that point. In practise that has been much more stable in testing.

Tweak the test to match the change in behaviour.

(Bitbake rev: 4205a3ef23834f317642bba155d67cd772176fb6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 17:23:35 +01:00
Richard Purdie
155249b1db bitbake: siggen: Ensure setscenetasks list is available to worker context
The setscenetasks list needs to be available in the worker contexts
else the signature behaviour there mismatches what the server does.

Add the data to get/set_taskdata to ensure this happens.

(Bitbake rev: 632980ef90fe126b7ba3d138f4d574ae05914779)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 17:23:35 +01:00
Richard Purdie
d0b7471ba8 bitbake: runqueue: Fix task migration problems
Tasks were not migrating consistently, particularly:

* if a task was rehashed which had already run
* if a task which was valid became invalid due to a rehash

We need to always run the migration code for rehashed tasks and then
reprocess them for hash validity. This means rearranging the code.

It also means several tests are no longer correct and can't be written
correctly to work on all possible workflows so those are removed.

(Bitbake rev: 8443989ee41e9b162972935513e437b5c66ea74d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 17:23:35 +01:00
Chen Qi
b83d5c15ad systemd: fix NFS regression
Currently systemd cannot boot correctly on NFS. This is because
the code uses readdir which returns DT_UNKNOWN instead of DT_LNK
on NFS. So consider DT_UNKNOWN to fix this problem.

(From OE-Core rev: 9973f89dafdf9d21f4021f59f1f4669f4ac13aff)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 16:55:21 +01:00
Dan Tran
15d6add800 unzip: Fix CVE-2019-13232
(From OE-Core rev: a9db9617349a766ffe0df724fff9266eb1667cdd)

Signed-off-by: Dan Tran <dantran@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 16:55:21 +01:00
Trevor Gamblin
3a82a72b63 lighttpd: remove fam as a PACKAGECONFIG option
lighttpd builds fail if "fam" (and therefore gamin) is enabled.

In conf/local.conf:

    CORE_IMAGE_EXTRA_INSTALL += "lighttpd"
    PACKAGECONFIG_append_pn-lighttpd = " fam"

bitbake error:

    ERROR: Nothing PROVIDES 'gamin' (but /yow-lpggp31/tgamblin/oe-core.git/meta/recipes-extended/lighttpd/lighttpd_1.4.54.bb DEPENDS on or otherwise requires it)
    NOTE: Runtime target 'lighttpd' is unbuildable, removing...
    Missing or unbuildable dependency chain was: ['lighttpd', 'gamin']
    ERROR: Required build target 'core-image-minimal' has no buildable providers.
    Missing or unbuildable dependency chain was: ['core-image-minimal', 'lighttpd', 'gamin']

Since gamin hasn't been maintained for several years, this should
be removed from the list of lighttpd PACKAGECONFIG options.
--without-fam is hard-coded in EXTRA_OECONF for good measure.

(From OE-Core rev: ea714fff3869ef19cf1dc94bdffbca2c69658954)

Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 16:55:21 +01:00
Khem Raj
2d2d39d414 packagegroups: All groups are not allarch
Some of the packagegroups violate the allarch policy therefore the ones
which do so, should be marked as TUNE specific

Fixes QA errors
packagegroup-self-hosted-1.0: Package version for package packagegroup-self-hosted-graphics went backwards which would break package feeds from (0:1.0-r13.12 to 0:1.0-r13.9) [version-going-backwards]

(From OE-Core rev: c26569320817263a487eceb610e3c70badba0b52)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 16:55:21 +01:00
Khem Raj
091e5c1653 strace: Upgrade to 5.3
Detailed features are here [1]

[1] https://github.com/strace/strace/releases/tag/v5.3

(From OE-Core rev: a3b3e8fb120f98cdb18d7a9d517d88a313416986)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 16:55:21 +01:00
Robert Yang
3d7f4b8cbf lttng-ust: Fix for --enable-python-agent
Fixed:
PACKAGECONFIG_append_pn-lttng-ust = ' python3-agent'

require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"

$ bitbake lttng-ust
ERROR: lttng-ust-2_2.10.4-r0 do_package: QA Issue: lttng-ust: Files/directories were installed but not shipped in any package:
  /usr/lib
  /usr/lib/python3.7
  /usr/lib/python3.7/site-packages
  /usr/lib/python3.7/site-packages/lttngust-2.10.4-py3.7.egg-info

(From OE-Core rev: d1b1bfece08ae32c120844d73aadee96de7bbf9b)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 16:55:21 +01:00
Peter Kjellerstedt
9a07399607 lib/oe/lsb: Make sure the distro ID is always lowercased
In commit 8689e561 (lib/oe/lsb: attempt to ensure consistent distro id
regardless of source), the distro ID returned by
oe.lsb.distro_identifier() was lowercased, but only if a release
version is also present.

This changes the code to always lowercase the distro ID, including the
default distro ID "unknown", which is used if no other ID can be
identified.

(From OE-Core rev: 4ba7ef79d23a4cf688d7a794064893fe5f2f473b)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 16:55:21 +01:00
Robert Yang
7d751fc737 apr: Check for libtoolize rather than libtool
Backport a patch from debian to make it check libtoolize rather than libtool.

https://sources.debian.org/data/main/a/apr/1.6.5-1/debian/patches/libtoolize_check.patch

This can also fix:
$ bitbake nativesdk-apr
buildconf: libtool not found.
           You need libtool version 1.4 or newer installed

(From OE-Core rev: 1a1b9e3ff33dea964bdf79bc47b5c7801e4df5a5)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 16:55:21 +01:00
Nathan Rossi
ec1104fd7f oeqa/core/case.py: Encode binary data of log
Do not decode the log content into a string only to re-encode it as
binary data again. Some logs might un-intentionally contain bytes that
do not decode as utf-8, as such preserve the log file content as it was
on disk.

Handle the decoding on the resulttool side, but also handle the failure
to decode the data.

(From OE-Core rev: 20531dc0b8f76a6e37cc856f36cd94077b6aba50)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 16:55:21 +01:00
Nathan Rossi
02a334c98f oeqa/core/utils/concurrencytest.py: Handle exceptions and details
Handle the streaming of exception content with details data. The
testtools package allows both 'err' and 'details' kwargs but can only
pass one of them to the parent.

To handle the passing of exception traceback and details data at the
same time, encode the traceback into the details object and remove the
'err' arg from the add* result call. This encodes the traceback similar
to how 'err' is handled without any details object. Decoding is already
done by testtools when the traceback is encoded in the details object.

(From OE-Core rev: 3613451825b251784b7673d89db465b9782c3a31)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 16:55:21 +01:00
Richard Purdie
e25ee9fe28 populate_sdk_ext: Fix for hash equiv
Write out the hash equiv cache file into any eSDK so that it doesn't rely
on having to call the hash server for the basic data requests.

(From OE-Core rev: 05c6842e747261b3350d6325e238429cf8728ca0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 16:55:21 +01:00
Richard Purdie
d80dd1c3f9 lib/sstatesig: Fix class inheritance problems
The locked sigs class needs to be inherited after the hashequiv mixin so
that get_unihash can correctly wrap the underlying hashequiv function.

To do this turn the locked sigs class into a second mixin, then the order
can be correctly handled. Tweak the get/set_taskdata to match.

(From OE-Core rev: 73d3414ecf594e426e6024b71931038a201eca52)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 16:55:21 +01:00
Richard Purdie
ca6cc9fa52 oeqa/selftest/signing: Fix for hash equivlance server
There were two issues with the test one is that an equivalent hash
could come from the server meaning the signature didn't change when it
should. A uuid string is injected to ensure this does not happen.

If there were multiple warnings the test would also fail as only the
first is prefixed with WARNING. Tweak the string to avoid that failure
mode.

(From OE-Core rev: e58eaf5b8c93521dc311b77593e0dd7debca602d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 16:55:21 +01:00
Richard Purdie
c92aca546e sstatesig: Fix hash equivlanency locked signature issues
Using locked signatures with the hash equivalency server ran into
problems. We need to:

a) Ensure the lockedhashes data object is passed from the core to
   any individual tasks using the get/set_taskdata methods

b) Return a locked singature instead of a unihash

c) Write the unihash being used to locked signature lists rather than
   the calculated taskhash

d) Skip warnings of hash mismatch if the hash is a unihash

These changes fix esdk builds (which use locked sigs) when a hash equivalence
server is in use.

(From OE-Core rev: 25dc3d78de01dffa77a3a2452d6a97d741b446d9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-30 16:55:21 +01:00
Bruce Ashfield
3584fffc72 yocto-bsps: update to v5.2.17
Updating the reference BSP SRCREVs and versions to 5.2.17 to match
the latest for qemu* and to pickup some reference board specific
patches.

(From meta-yocto rev: fcc920580380a2b57b5b8e1649b4ad94bd3d15b7)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:46:10 +01:00
Joshua Watt
2ac500a609 bitbake: hashserv: Don't daemonize server process
The hash server process is terminated and waited on with join(), so it
should not be a daemon. Daemonizing it cause races with the server
cleanup, especially in the selftest because the process may not have
terminated and cleanup up its socket before the test cleanup runs and
tries to do it.

[YOCTO #13542]

(Bitbake rev: 7c829675581818f92d57056b57fbd3880829b6bd)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:19 +01:00
Joshua Watt
1805574559 bitbake: siggen: Fix attribute error when hashserver fails
The HashConnectionError class was moved to the client module and needs
to be updated.

[YOCTO #13537]

(Bitbake rev: 9fb862685e5e5a2aa534bc25cab1e4158d708b40)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:19 +01:00
Joshua Watt
6f6b41e642 bitbake: hashserve: Add missing import
The os module is required to connect to a unix domain socket

(Bitbake rev: 31a5111bcd0080a583d0d95fad3e09ae78bdf0fa)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:19 +01:00
Joshua Watt
f971d6ae2e bitbake: cookerdata: Add mc conffiles hashes to cache hash
The variable values that result from parsing multiconfig should be
included in the cooker data hash, otherwise changes to these files won't
be detected, which will allow the parsing cache to be loaded with the
old values for the multiconfigs. This can either manifest as the
variable values simply not updating, or getting basehash changed errors
when building.

This bug was previously undetected because all of the multiconfig base
files were a direct file dependency in all parsed recipes. This was
fixed in 34137a00f60 ("bitbake: bitbake: cooker: Rename __depends in all
multiconfigs"), exposing this bug.

[YOCTO #13541]

(Bitbake rev: c74481aa15226e1bff9d53e4ee4b702ebfa1ad32)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:19 +01:00
Jacob Kroon
daa6dcfc39 bitbake: tests/data: Test combinations of _append together with override
(Bitbake rev: f31f35e8527c60a95931a4a8311a4cd237770b42)

Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:19 +01:00
Ross Burton
a44d119456 bitbake: tests/fetch: add test case for git-lfs handling
Add a test case to exercise the detection of git-lfs repositories and the
behaviour of the lfs parameter.

(Bitbake rev: a7cf4fc72cce357c425084dc2c5f35b5ed1a4b7b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:19 +01:00
Ross Burton
560358e922 bitbake: fetch2/git: refactor check for git-lfs command
Refactor the git-lfs checking: this means both clearer code in the download()
function and allows unit testing to monkeypatch the functionality.

(Bitbake rev: 33cf9172ded50a869f7201ba463ab9ecc69b8252)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:19 +01:00
Heiko Schocher
2c58079222 kernel.fitimage.bbclass: remove ramdisk_ctype
set in the ramdisk node the compression property
always to "none", as U-Boot nowadays since commit:

b1307f884a91 ("fit: Support compression for non-kernel components (e.g. FDT)")

decompress non kernel components. Setting compression
to the used comression algorithm now, will end in
fail of your kernel boot with the ramdisk.

This issue is fixed since commit:

bddd98573465 ("fit: Do not automatically decompress ramdisk images")

which now prints a warning in U-Boot, instead of decompressing
the ramdisk, but we should setup compression property correct.

(From OE-Core rev: f963a51544a9a7b1abbaa87c95b3c0279847d697)

Signed-off-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:17 +01:00
Trevor Gamblin
13a2e8d9cc python3-pip: ensure pickle is installed
pip3 depends on pickle, so add python3-pickle to RDEPENDS.
Without it, errors such as the following occur:

>>> import pip._internal
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib64/python3.7/site-packages/pip/internal/init_.py", line 40, in <module>
from pip._internal.cli.autocompletion import autocomplete
File "/usr/lib64/python3.7/site-packages/pip/_internal/cli/autocompletion.py", line 8, in <module>
from pip._internal.cli.main_parser import create_main_parser
File "/usr/lib64/python3.7/site-packages/pip/_internal/cli/main_parser.py", line 7, in <module>
from pip._internal.cli import cmdoptions
File "/usr/lib64/python3.7/site-packages/pip/_internal/cli/cmdoptions.py", line 29, in <module>
from pip._internal.utils.ui import BAR_TYPES
File "/usr/lib64/python3.7/site-packages/pip/_internal/utils/ui.py", line 16, in <module>
from pip._internal.utils.logging import get_indentation
File "/usr/lib64/python3.7/site-packages/pip/_internal/utils/logging.py", line 6, in <module>
import logging.handlers
File "/usr/lib64/python3.7/logging/handlers.py", line 26, in <module>
import logging, socket, os, pickle, struct, time, re
ModuleNotFoundError: No module named 'pickle'

(From OE-Core rev: 39f53aae947f08284bf4864934f62c33e4e9be3c)

Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:17 +01:00
Ross Burton
ef637c71ca json-c: use GitHub for upstream release checking
(From OE-Core rev: cce4af642c3c4d94c39a254e969bc6a7f213cab2)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:17 +01:00
Wang Quanyang
eb27d1ab3e kexec-tools: fix arm kexec failure for __NR_kexec_file_load
Once use kexec in arm arch, it will throw out the error info as below:

Could not find a free area of memory of 0xc78e744 bytes...

This is because that kexec use kexec_file_load to load image by default
but arm doesn't support it. So add this patch to avoid use kexec_file_load
in arm platforms.

(From OE-Core rev: 952a3fa77c80f16cd6d97f35afdb474876a39483)

Signed-off-by: Quanyang Wang <quanyang.wang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:17 +01:00
Randy MacLeod
da00de3958 ffmpeg: update from 4.2 to 4.2.1
This update corresponds to 68 commits to the ffmpeg git repo.
52 of these commits are oss-fuzz bug fixes. The remainder include
improved codex handling and some rpi performance tweaks.

(From OE-Core rev: 642b3e79c66779ab2851d978d44cf2e5aab47c68)

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:17 +01:00
Joshua Watt
2b74cece39 oeqa: Test multiconfig parsing
Add a test to verify that when multiconfig conf files changed, recipes
are correctly reparsed.

[YOCTO #13541]

(From OE-Core rev: a424ef0a0c49123f4518e8fef993fd10f6fc5f4e)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:17 +01:00
Trevor Gamblin
bbe46d8ca3 python3-subunit: ensure runtime dependencies are present
Without access to unittest, subunit cannot be imported in python3:

    root@qemux86-64:~# python3
    Python 3.7.4 (default, Sep 20 2019, 13:38:31)
    [GCC 9.2.0] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import subunit
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "/usr/lib/python3.7/site-packages/subunit/__init__.py", line 123, in <module>
        import unittest
    ModuleNotFoundError: No module named 'unittest'
    >>>

Adding python3-testtools to python3-subunit's RDEPENDS fixes the
issue. This also implicitly provides the functionality found in
the python3-extras module.

(From OE-Core rev: 7ed7dc39e379c18f757e3c326ec1466c8ab27b41)

Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:17 +01:00
Peter Kjellerstedt
5af64b55f3 devtool: finish: Add suppport for the --no-clean option
This works just like the already existing --no-clean option to the
`devtool reset` command.

(From OE-Core rev: 4433d3133ce53cdf7db17f5e7914fe8c4d78dba3)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:17 +01:00
Niclas Svensson
a70e1fdba2 devtool: finish: Keep patches ordered when updating bbappend
The _get_patchset_revs() function returns the patches in an
OrderedDict to keep them ordered. However, this information was lost
when the patches were added to the bbappend file.

(From OE-Core rev: 69b7a2ba3af1280cc220ab236032f8466246ee93)

Signed-off-by: Niclas Svensson <niclas.svensson@axis.com>
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Robert Yang
b6e5346f46 expect: Fix buffer overflow error when build in long path
Fixed when built the project in a long path (len(TMPDIR) > 200):
$ bitbake dejagnu-native
[snip]
checking Tcl version 8.5 or greater... *** buffer overflow detected ***:
TOPDIR/tmp-glibc/work/x86_64-linux/dejagnu-native/1.6.2-r0/recipe-sysroot-native/usr/bin/expect terminated
[snip]

(From OE-Core rev: c8d0bf3411846bb3852bffaf59193801d9c7530a)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Joshua Watt
68092163cc classes/reproducible_build: Move SDE deploy to another directory
The deployment of the source date epoch file had a race condition where
any task attempting to read from the file would race with creation of
the sstate archive for the do_deploy_source_date_epoch task. The
creation of the sstate archive requires moving the directory to a
temporary location, then moving it back. This means that the file
disappears for a short period of time, which will cause a failure if any
other task is running and trying to open the file to get the current
source date epoch.

The solution is to copy the source date epoch file to a separate
directory when deploying so the file never disappears. When the file is
restored from sstate, it is moved to the correct location after being
extracted.

[YOCTO #13501]

(From OE-Core rev: ac27d12fe5480e9b8cc93de6a32bf9631c52d7f4)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Böszörményi Zoltán via Openembedded-core
72051e74d6 classes/image-live.bbclass: Don't hardcode cpio.gz
There's INITRAMFS_FSTYPES that can be set differently.

(From OE-Core rev: 141d02400696020e83df3edcf13021fde139d261)

Signed-off-by: Böszörményi Zoltán <zboszor@pr.hu>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Robert Yang
1cbce6d5c5 net-tools: Fix installed-vs-shipped for nativesdk
Fixed:
$ bitbake nativesdk-net-tools
ERROR: nativesdk-net-tools-1.60-26-r0 do_package: QA Issue: nativesdk-net-tools: Files/directories were installed but not shipped in any package:
  /usr
  /usr/share
  /usr/share/man
[snip]

(From OE-Core rev: fd3c46840851651fd737fe50916294cdffb3d718)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Robert Yang
fe8d87e083 expect: Fix configure error for nativesdk
Fixed:
$ bitbake nativesdk-expect
checking for Tcl public headers... configure: error: tcl.h not found.  Please specify its location with --with-tclinclude

(From OE-Core rev: bd8ba628b0ff1ad3603b08981467edf5e36ec024)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Alessio Igor Bogani
b404c0cd3c wic: Using the right rootfs size during prepare_rootfs
The commit 8e48b4d6c4 makes wic ignores IMAGE_ROOTFS_SIZE for rootfs
size and makes it uses the computed one only. Re-add support for
IMAGE_ROOTFS_SIZE variable and compute roots size only if the former
is not defined. Moreover the size of a provided directory with
--rootfs-dir="" in the .wks file should always be computed on the fly,
else every partition will be constrained to be the same size as what
ever value was in ROOTFS_SIZE.

(From OE-Core rev: 0217a0392b8cc534fcc0d760b7663a1845b306f5)

Signed-off-by: Alessio Igor Bogani <alessio.bogani@elettra.eu>
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Khem Raj
990fedd595 sdk: Install nativesdk locales for all TCLIBC variants
install_locales() here is actually operating on nativesdk and only glibc
is the default library for nativesdk, since thats what most of
desktop/server distros use, therefore bailing out based on TCLIBC is not
needed here, since nativesdk-glibc would be required for all non-glibc
targetting SDKs as well.

Fixes SDK install time error

ERROR:  OE-core's config sanity checker detected a potential misconfiguration.
Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).
Following is the list of potential problems / advisories:
Your system needs to support the en_US.UTF-8 locale.
ERROR: SDK preparation failed

(From OE-Core rev: ba2df1fa43b79c4959911c1b0bcad996f255b7a8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Limeng
205069a9e8 u-boot: add CVE patches for u-boot
Add 9 patches to fix below CVE issues.
CVE-2019-13103
CVE-2019-13104
CVE-2019-13105
CVE-2019-13106
CVE-2019-14192
CVE-2019-14193
CVE-2019-14194
CVE-2019-14195
CVE-2019-14196
CVE-2019-14197
CVE-2019-14198
CVE-2019-14199
CVE-2019-14200
CVE-2019-14201
CVE-2019-14202
CVE-2019-14203
CVE-2019-14204

(From OE-Core rev: db22dbe158dcb2298bfd74ff6cbba31f67488035)

Signed-off-by: Meng Li <Meng.Li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Khem Raj
91b787334a qemuriscv: Do not blacklist clang anymore
clang 9.x ( which is now default in meta-clang ) supports riscv

(From OE-Core rev: 198689f74915756ce6ae38d6735780a26e9b3f7e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Khem Raj
794aa251e2 musl: Fix riscv64 CAS functions
(From OE-Core rev: 853c35003abe5a1430a432f32fa325d6021f2d2f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Robert Yang
c782ef5360 cases/bbtests.py: test_bitbake_g(): Check base-files rather than busybox
It checked whether busybox is in task-depends.dot after run "bitbake -g
core-image-minimal", but busybox is not a must for core-image-minimal since it
is configurable:

VIRTUAL-RUNTIME_base-utils = ""
VIRTUAL-RUNTIME_base-utils-syslog = ""
VIRTUAL-RUNTIME_base-utils-hwclock  =  ""
VIRTUAL-RUNTIME_login_manager = "shadow"
VIRTUAL-RUNTIME_syslog = ""

So the case may fail when busybox is not present, check
base-files which is more reliable.

(From OE-Core rev: f73676b07f6d8a4573a5f46c3e082831b34b7d18)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Bruce Ashfield
dcc6498bb1 linux-yocto/5.2: update to v5.2.17
Updating linux-yocto/5.2 to the latest korg -stable release that comprises
the following commits:

    5e408889e4af Linux 5.2.17
    12434939ba58 vfs: Fix refcounting of filenames in fs_parser
    d4911cc1f4b6 media: technisat-usb2: break out of loop at end of buffer
    19ad4c4fe19c floppy: fix usercopy direction
    d7aa8c546ab9 ovl: fix regression caused by overlapping layers detection
    52f2aba47d71 Revert "arm64: Remove unnecessary ISBs from set_{pte,pmd,pud}"
    785ca708a908 iommu/amd: Fix race in increase_address_space()
    ed52f6cf0e84 iommu/amd: Flush old domains in kdump kernel
    24962eb0edd0 keys: Fix missing null pointer check in request_key_auth_describe()
    16ed4b9b7bf7 dmaengine: rcar-dmac: Fix DMACHCLR handling if iommu is mapped
    d604a12cc6d5 dmaengine: sprd: Fix the DMA link-list configuration
    d5898d2f06fc iommu/vt-d: Remove global page flush support
    5df0a5fd4d1c x86/hyper-v: Fix overflow bug in fill_gva_list()
    4bdb9988ad38 x86/uaccess: Don't leak the AC flags into __get_user() argument evaluation
    4dabe50389c4 dmaengine: ti: omap-dma: Add cleanup in omap_dma_probe()
    9de496fe242a dmaengine: ti: dma-crossbar: Fix a memory leak bug
    4b898223a979 arm64: dts: renesas: r8a77995: draak: Fix backlight regulator name
    4ad64281e4d3 net: seeq: Fix the function used to release some memory in an error handling path
    0275857577e5 enetc: Add missing call to 'pci_free_irq_vectors()' in probe and remove functions
    d18638671b96 net: dsa: microchip: add KSZ8563 compatibility string
    05172612ab3a net: aquantia: fix out of memory condition on rx side
    95acd66ba70a net: aquantia: linkstate irq should be oneshot
    e4d1449ca4a5 net: aquantia: reapply vlan filters on up
    6a6e09b7a519 net: aquantia: fix removal of vlan 0
    b5789a160c2d tools/power turbostat: Fix CPU%C1 display value
    54f4f3b38133 tools/power turbostat: Add Ice Lake NNPI support
    8bae84e5203b tools/power turbostat: Fix Haswell Core systems
    0926ee9f5327 tools/power turbostat: fix buffer overrun
    94132aca9472 tools/power turbostat: fix file descriptor leaks
    0a1ba2cd9d62 tools/power turbostat: fix leak of file descriptor on error return path
    caab8b8b3aca tools/power x86_energy_perf_policy: Fix argument parsing
    edf8ba32bc2b tools/power x86_energy_perf_policy: Fix "uninitialized variable" warnings at -O2
    e9e492c92d8c netfilter: nf_flow_table: clear skb tstamp before xmit
    27264af16969 amd-xgbe: Fix error path in xgbe_mod_init()
    8b7bf7b1b2dd i2c: mediatek: disable zero-length transfers for mt8183
    316c15048f40 i2c: iproc: Stop advertising support of SMBUS quick cmd
    9027939cc8f7 perf/x86/amd/ibs: Fix sample bias for dispatched micro-ops
    e1efdaaa9b46 perf/x86/intel: Restrict period on Nehalem
    1ffda54f0546 i2c: designware: Synchronize IRQs when unregistering slave client
    0910434c455d sky2: Disable MSI on yet another ASUS boards (P6Xxxx)
    cd6901e723fc ibmvnic: Do not process reset during or after device removal
    3ee4ed9cd3a0 ARM: 8901/1: add a criteria for pfn_valid of arm
    eaaa11a4f8d0 RISC-V: Fix FIXMAP area corruption on RV32 systems
    22c521335522 usb: host: xhci-tegra: Set DMA mask correctly
    97b1d81abc61 libceph: don't call crypto_free_sync_skcipher() on a NULL tfm
    b8632186884a cifs: Use kzfree() to zero out the password
    8db988a98290 cifs: set domainName when a domain-key is used in multiuser
    a8bf51b5c6f5 drm/amd/powerplay: correct Vega20 dpm level related settings
    f5c6d0245f97 netfilter: conntrack: make sysctls per-namespace again
    6612f6edf1f1 kallsyms: Don't let kallsyms_lookup_size_offset() fail on retrieving the first symbol
    7c1a4283b606 NFS: remove set but not used variable 'mapping'
    de932b20ed88 NFSv2: Fix write regression
    646d295fdded NFSv2: Fix eof handling
    16986c7cf8b5 netfilter: nf_conntrack_ftp: Fix debug output
    0dec70d3c249 netfilter: xt_physdev: Fix spurious error message in physdev_mt_check
    e3813a30bd6f drm/amdgpu: fix dma_fence_wait without reference
    9b914306b0f7 NFS: Fix writepage(s) error handling to not report errors twice
    78f0f9007523 NFS: Fix spurious EIO read errors
    fa38f165c78a pNFS/flexfiles: Don't time out requests on hard mounts
    7999b21e2224 x86/apic: Fix arch_dynirq_lower_bound() bug for DT enabled machines
    c19a0d7ef095 r8152: Set memory to all 0xFFs on failed reg reads
    f1b6d7c8de4c bpf: allow narrow loads of some sk_reuseport_md fields with offset > 0
    5e0251d82954 flow_dissector: Fix potential use-after-free on BPF_PROG_DETACH
    31320b857d13 batman-adv: Only read OGM2 tvlv_len after buffer len check
    9ae47d48cd2d ARM: 8874/1: mm: only adjust sections of valid mm structures
    b77b8c17df13 drm/virtio: use virtio_max_dma_size
    5a2ffd1ffa54 drm/omap: Fix port lookup for SDI output
    fc45ccc7b85b qed: Add cleanup in qed_slowpath_start()
    304a65866fbe selftests/bpf: add config fragment BPF_JIT
    c963cd4ec138 selftests/bpf: fix test_cgroup_storage on s390
    f4a9b28782c6 xdp: unpin xdp umem pages in error path
    b484e28554d0 Kconfig: Fix the reference to the IDT77105 Phy driver in the description of ATM_NICSTAR_USE_IDT77105
    b8438c08476c NFS: On fatal writeback errors, we need to call nfs_inode_remove_request()
    518c9d0158e0 NFS: Fix initialisation of I/O result struct in nfs_pgio_rpcsetup
    d29a04e98cdb NFSv4: Fix return value in nfs_finish_open()
    b8cb57c86f93 NFSv4: Fix return values for nfs4_file_open()
    7844dde203db netfilter: xt_nfacct: Fix alignment mismatch in xt_nfacct_match_info
    f30dade2d5d5 netfilter: nft_flow_offload: missing netlink attribute policy
    399676d85515 netfilter: ebtables: Fix argument order to ADD_COUNTER
    5b0d408d8ad6 fpga: altera-ps-spi: Fix getting of optional confd gpio
    52ba08b93fee tools: bpftool: close prog FD before exit on showing a single program
    840aec7a8b48 selftests/bpf: fix "bind{4, 6} deny specific IP & port" on s390
    99eb87b50faa s390/bpf: use 32-bit index for tail calls
    62c3bfff7d9e ARM: dts: Fix incomplete dts data for am3 and am4 mmc
    0a3d2a039339 bus: ti-sysc: Simplify cleanup upon failures in sysc_probe()
    e92814b0aae1 ARM: OMAP1: ams-delta-fiq: Fix missing irq_ack
    3d8729676adb ARM: dts: dra74x: Fix iodelay configuration for mmc3
    70af7f6d9e6a ARM: dts: am335x: Fix UARTs length
    b6858c94d535 ARM: OMAP2+: Fix omap4 errata warning on other SoCs
    71d668a95351 s390/bpf: fix lcgr instruction encoding
    f262a47d4bc9 arm64: dts: meson-g12a: add missing dwc2 phy-names
    3d3879d57e3b ARM: dts: Fix incorrect dcan register mapping for am3, am4 and dra7
    6d326307187b ARM: dts: Fix flags for gpio7
    de457d8d0f18 bus: ti-sysc: Fix using configured sysc mask value
    84b9540898a9 bus: ti-sysc: Fix handling of forced idle
    9f500d6b3df2 ARM: OMAP2+: Fix missing SYSC_HAS_RESET_STATUS for dra7 epwmss
    cff4410f5d31 ARM: dts: am57xx: Disable voltage switching for SD card
    05b57db138f3 ieee802154: hwsim: unregister hw while hwsim_subscribe_all_others fails
    b090ed1779d8 ieee802154: hwsim: Fix error handle path in hwsim_init_module
    6fc6065f5f2c nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds
    fb91d697f851 mwifiex: Fix three heap overflow at parsing element in cfg80211_ap_settings
    314a961abd99 tty/serial: atmel: reschedule TX after RX was started
    3bf0e241c813 serial: sprd: correct the wrong sequence of arguments
    3049e5125169 firmware: google: check if size is valid when decoding VPD data
    ad0ef1b06e7b KVM: coalesced_mmio: add bounds checking
    0d84424bdfcd net: dsa: Fix load order between DSA drivers and taggers
    7f4aa339581b xen-netfront: do not assume sk_buff_head list is empty in error handling
    82369aa61ec7 udp: correct reuseport selection with connected sockets
    a4cb1c43dc6c net_sched: let qdisc_put() accept NULL pointer
    81608038502a net/sched: fix race between deactivation and dequeue for NOLOCK qdisc
    8a00845c5d64 ip6_gre: fix a dst leak in ip6erspan_tunnel_xmit
    8d3dc8dfe890 net: aquantia: fix limit of vlan filters
    bd950d777e3a net: hns: fix LED configuration for marvell phy
    854c67e19e73 scripts/decode_stacktrace: match basepath using shell prefix operator, not regex
    88f16147459f powerpc/mm/radix: Use the right page size for vmemmap mapping
    badbf863ed91 nfs: disable client side deduplication
    543792290cce media: stm32-dcmi: fix irq = 0 case
    1fb6db57b831 SUNRPC: Handle connection breakages correctly in call_status()
    5d96613b372d Input: elan_i2c - remove Lenovo Legion Y7000 PnpID
    41a22481ec5d HID: wacom: generic: read HID_DG_CONTACTMAX from any feature report
    7902ff2b8c97 netfilter: nf_flow_table: set default timeout after successful insertion
    e9bc4f96c596 net: hns3: adjust hns3_uninit_phy()'s location in the hns3_client_uninit()
    32e50e282ea7 phy: renesas: rcar-gen3-usb2: Disable clearing VBUS in over-current
    262c7b193cbb media: tm6000: double free if usb disconnect while streaming
    1fc15d29540a USB: usbcore: Fix slab-out-of-bounds bug during device reset

(From OE-Core rev: ee7b48e1ca1e4262941f71a1735ec5b4a9cfc11d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Bruce Ashfield
2b4deec01e linux-yocto/5.2: update to v5.2.16
Updating linux-yocto/5.2 to the latest korg -stable release that comprises
the following commits:

    1e2ba4a74fa7 Linux 5.2.16
    2508f833875c x86/build: Add -Wnoaddress-of-packed-member to REALMODE_CFLAGS, to silence GCC9 build warning
    8803770b85d3 rsi: fix a double free bug in rsi_91x_deinit()
    d8bcd38cb933 platform/x86: pcengines-apuv2: use KEY_RESTART for front button
    f7a15c7068f0 platform/x86: pmc_atom: Add CB4063 Beckhoff Automation board to critclk_systems DMI table
    657d4ca80d64 KVM: SVM: Fix detection of AMD Errata 1096
    54d782e7c865 kvm: nVMX: Remove unnecessary sync_roots from handle_invept
    00ab9eeb0314 modules: always page-align module section allocations
    ec93d0db91ce modules: fix compile error if don't have strict module rwx
    0a199213f586 modules: fix BUG when load module with rodata=n
    63e3de7299ba iio: adc: stm32-dfsdm: fix data type
    bb9dee6edb5a iio: adc: stm32-dfsdm: fix output resolution
    83ad11d6d7fa Revert "Bluetooth: btusb: driver to enable the usb-wakeup feature"
    7c218ebc7899 mm/z3fold.c: fix lock/unlock imbalance in z3fold_page_isolate
    1894d857ce86 mm/z3fold.c: remove z3fold_migration trylock
    ead8b4f3b2f9 drm/mediatek: mtk_drm_drv.c: Add of_node_put() before goto
    009b31923398 drm: panel-orientation-quirks: Add extra quirk table entry for GPD MicroPC
    6dbe4b80180c firmware: ti_sci: Always request response from firmware
    71f0dafe61ce crypto: talitos - HMAC SNOOP NO AFEU mode requires SW icv checking.
    456945703690 crypto: talitos - Do not modify req->cryptlen on decryption.
    dcefbf43b003 crypto: talitos - fix ECB algs ivsize
    291d9ef44614 crypto: talitos - check data blocksize in ablkcipher.
    86545794d2e5 crypto: talitos - fix CTR alg blocksize
    808a33cd37dd crypto: talitos - check AES key size
    0a7737c960e3 driver core: Fix use-after-free and double free on glue directory
    6502d1acbe63 ubifs: Correctly use tnc_next() in search_dh_cookie()
    85e398e6aa01 PCI: Always allow probing with driver_override
    f5a7b0f01b23 mtd: rawnand: mtk: Fix wrongly assigned OOB buffer pointer issue
    7b20eb930bd0 clk: rockchip: Don't yell about bad mmc phases when getting
    4111a1f2142e mt76: mt7615: Use after free in mt7615_mcu_set_bcn()
    195d154b8a71 mt76: Fix a signedness bug in mt7615_add_interface()
    76d64d6d9ed8 clk: Simplify debugfs printing and add a newline
    268311c39a7f clk: Fix debugfs clk_possible_parents for clks without parent string names
    a9258bc6e0b3 drm/meson: Add support for XBGR8888 & ABGR8888 formats
    5924bb61ac94 x86/ima: check EFI SetupMode too
    c5699cc857a0 x86/boot: Use efi_setup_data for searching RSDP on kexec-ed kernels
    2fd4aaaf615d kernel/module: Fix mem leak in module_add_modinfo_attrs
    a9ce57d57155 powerpc: Add barrier_nospec to raw_copy_in_user()
    6876bd0c34c8 x86/purgatory: Change compiler flags from -mcmodel=kernel to -mcmodel=large to fix kexec relocation errors
    cc0feeebbb3f KVM: nVMX: handle page fault in vmread
    9e8659bdca66 KVM: x86/mmu: Reintroduce fast invalidate/zap for flushing memslot
    db68c0c83a76 KVM: x86: work around leak of uninitialized stack contents
    17cd7cf4b355 KVM: s390: Do not leak kernel stack data in the KVM_S390_INTERRUPT ioctl
    0c3ffd500445 KVM: s390: kvm_s390_vm_start_migration: check dirty_bitmap before using it as target for memset()
    71661b871973 regulator: twl: voltage lists for vdd1/2 on twl4030
    803c7bbc0d5d genirq: Prevent NULL pointer dereference in resend_irqs()
    041f865f676b mt76: mt76x0e: disable 5GHz band for MT7630E
    fbf07d827d82 Revert "rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band"
    868921b1f3d5 ixgbe: Prevent u8 wrapping of ITR value to something less than 10us
    c42a7b87b8d7 ixgbe: fix double clean of Tx descriptors with xdp
    076566aafd94 ipc: fix sparc64 ipc() wrapper
    b2c92cb1d141 ipc: fix semtimedop for generic 32-bit architectures
    b68833b65bf0 drm/i915: Restore relaxed padding (OCL_OOB_SUPPRES_ENABLE) for skl+
    e0e11df7f249 drm/i915: Limit MST to <= 8bpc once again
    8eb5a78c20e8 drm/lima: fix lima_gem_wait() return value
    46d1c96a1a5e mmc: tmio: Fixup runtime PM management during remove
    f5e9862fedd0 mmc: tmio: Fixup runtime PM management during probe
    e5b9762c20a3 Revert "mmc: sdhci: Remove unneeded quirk2 flag of O2 SD host controller"
    0699a10fe9ed Revert "mmc: bcm2835: Terminate timeout work synchronously"
    c554749c3f7e cgroup: freezer: fix frozen state inheritance
    4fa875f06c43 Btrfs: fix assertion failure during fsync and use of stale transaction
    09234426db8f gpio: fix line flag validation in lineevent_create
    94cd945b2d24 gpio: fix line flag validation in linehandle_create
    c54f5198f527 gpio: mockup: add missing single_release()
    06477d8e4425 gpiolib: acpi: Add gpiolib_acpi_run_edge_events_on_boot option and blacklist
    3c0bf14d186b net: sock_map, fix missing ulp check in sock hash case
    f3724b27ca29 sctp: fix the missing put_user when dumping transport thresholds
    488eefe22491 net: fixed_phy: Add forward declaration for struct gpio_desc;
    e33190acd588 ipv6: addrconf_f6i_alloc - fix non-null pointer check to !IS_ERR()
    e854b3329bd9 net-ipv6: fix excessive RTF_ADDRCONF flag on ::1/128 local route (and others)
    eddd5617db91 tun: fix use-after-free when register netdev failed
    48da78093aa1 tipc: add NULL pointer check before calling kfree_rcu
    055102e1467f tcp: fix tcp_ecn_withdraw_cwr() to clear TCP_ECN_QUEUE_CWR
    434e93757f3f sctp: use transport pf_retrans in sctp_do_8_2_transport_strike
    91c1460ecbf5 sctp: Fix the link time qualifier of 'sctp_ctrlsock_exit()'
    af241597df3e sch_hhf: ensure quantum and hhf_non_hh_weight are non-zero
    c36f33d49df7 net: sched: fix reordering issues
    69b37604889b net: phylink: Fix flow control resolution
    92984818ff8c net: gso: Fix skb_segment splat when splitting gso_size mangled skb having linear-headed frag_list
    f8f235f9a5dc net: Fix null de-reference of device refcount
    c012f28d7a73 ixgbevf: Fix secpath usage for IPsec Tx offload
    dc0921f74221 ixgbe: Fix secpath usage for IPsec TX offload.
    3d970bbd8f0d isdn/capi: check message length in capi_write()
    2e898bf96a7d ipv6: Fix the link time qualifier of 'ping_v6_proc_exit_net()'
    4702849bf8af cdc_ether: fix rndis support for Mediatek based smartphones
    7b2687fe1142 bridge/mdb: remove wrong use of NLM_F_MULTI
    6e282ba6ff6b Linux 5.2.15
    e86a7794620a vhost: make sure log_num < in_num
    f6b72d0920f4 Btrfs: fix unwritten extent buffers and hangs on future writeback attempts
    051d85e1b2d3 drm/i915/icl: whitelist PS_(DEPTH|INVOCATION)_COUNT
    0b50b2beafe7 drm/i915: Add whitelist workarounds for ICL
    a22fc7cea6af drm/i915: whitelist PS_(DEPTH|INVOCATION)_COUNT
    abb4c8b10fc7 drm/i915: Support whitelist workarounds on all engines
    d05cba91e1de drm/i915: Support flags in whitlist WAs
    4b1bac380cdc virtio/s390: fix race on airq_areas[]
    8db034bb05b1 usb: chipidea: imx: fix EPROBE_DEFER support during driver probe
    e7bc0c0aeb77 usb: chipidea: imx: add imx7ulp support
    cb77c43fa0bb mmc: sdhci-sprd: Fix the incorrect soft reset operation when runtime resuming
    c0e2dbd7d707 drm/i915: Make sure cdclk is high enough for DP audio on VLV/CHV
    07c37f641842 drm/i915: Disable SAMPLER_STATE prefetching on all Gen11 steppings.
    c31f3dc4e075 IB/hfi1: Unreserve a flushed OPFN request
    bef755d188f5 IB/{rdmavt, qib, hfi1}: Convert to new completion API
    9d3d11319bd2 IB/rdmavt: Add new completion inline
    16d2d609ff0f bcache: fix race in btree_flush_write()
    913855877794 bcache: add comments for mutex_lock(&b->write_lock)
    b622ba2bcd4e bcache: only clear BTREE_NODE_dirty bit when it is set
    bb70b2729b7a batman-adv: Only read OGM tvlv_len after buffer len check
    e2b3974bc4ab batman-adv: fix uninit-value in batadv_netlink_get_ifindex()
    398f2c8277f2 powerpc/tm: Fix restoring FP/VMX facility incorrectly on interrupts
    7f20c56c0b7a powerpc/tm: Fix FP/VMX unavailable exceptions inside a transaction
    12c6a7776680 powerpc/64e: Drop stale call to smp_processor_id() which hangs SMP startup
    6890ea590cb7 vhost/test: fix build for vhost test - again
    478e21d516d2 vhost/test: fix build for vhost test
    9844e52dd977 drm/nouveau/sec2/gp102: add missing MODULE_FIRMWAREs
    ee116fa63272 drm/vmwgfx: Fix double free in vmw_recv_msg()
    1f570399e490 sched/fair: Don't assign runtime for throttled cfs_rq
    f43cf5ff54a2 ALSA: hda/realtek - Fix the problem of two front mics on a ThinkCentre
    b305db85076a ALSA: hda/realtek - Enable internal speaker & headset mic of ASUS UX431FL
    6157216e86f3 ALSA: hda/realtek - Add quirk for HP Pavilion 15
    dfdf3c29f72a ALSA: hda/realtek - Fix overridden device-specific initialization
    1a413713ee16 ALSA: hda - Fix potential endless loop at applying quirks
    d89e8b4684f1 gpio: pca953x: use pca953x_read_regs instead of regmap_bulk_read
    b3a1644a19a7 gpio: pca953x: correct type of reg_direction
    997fee5473ce Linux 5.2.14
    0ccc5c227f88 Revert "mmc: core: do not retry CMD6 in __mmc_switch()"
    317a66e24b46 x86/boot: Preserve boot_params.secure_boot from sanitizing
    1a7fd193e9d8 Revert "x86/apic: Include the LDR when clearing out APIC registers"
    ae96cf9e1e31 libceph: allow ceph_buffer_put() to receive a NULL ceph_buffer
    8d50b82ea79b x86/boot/compressed/64: Fix missing initialization in find_trampoline_placement()
    852a051ef22b KVM: arm/arm64: VGIC: Properly initialise private IRQ affinity
    44dfa46aaf7c gpio: Fix irqchip initialization order
    157ec0a3f834 RDMA/bnxt_re: Fix stack-out-of-bounds in bnxt_qplib_rcfw_send_message
    cf9ec2e9056c afs: use correct afs_call_type in yfs_fs_store_opaque_acl2
    3f6685835889 afs: Fix possible oops in afs_lookup trace event
    c231241d83b9 afs: Fix leak in afs_lookup_cell_rcu()
    7f134d569e1a KVM: arm/arm64: Only skip MMIO insn once
    39c62cdaa2d4 ceph: fix buffer free while holding i_ceph_lock in fill_inode()
    c4e28be29a45 ceph: fix buffer free while holding i_ceph_lock in __ceph_build_xattrs_blob()
    f41cd559f1f3 ceph: fix buffer free while holding i_ceph_lock in __ceph_setxattr()
    3ebab463e9f4 drm/amdgpu: prevent memory leaks in AMDGPU_CS ioctl
    23da8e9ef69b selftests/kvm: make platform_info_test pass on AMD
    666a41848d72 selftests: kvm: fix state save/load on processors without XSAVE
    dd53d830bb30 infiniband: hfi1: fix memory leaks
    bcb3211656fa infiniband: hfi1: fix a memory leak bug
    1e93149659cc IB/mlx4: Fix memory leaks
    fc38afc04343 RDMA/cma: fix null-ptr-deref Read in cma_cleanup
    d61a256fece2 nvme: Fix cntlid validation when not using NVMEoF
    e1031b6c8100 nvme-multipath: fix possible I/O hang when paths are updated
    6950d5b64a15 Tools: hv: kvp: eliminate 'may be used uninitialized' warning
    195b5aa923ec Input: hyperv-keyboard: Use in-place iterator API in the channel callback
    31b60e5c604c scsi: lpfc: Mitigate high memory pre-allocation by SCSI-MQ
    aa4bc3a35253 x86/boot/compressed/64: Fix boot on machines with broken E820 table
    3091859b0b5e HID: cp2112: prevent sleeping function called from invalid context
    e8fd4f47b224 HID: intel-ish-hid: ipc: add EHL device id
    d58500c6fcb4 kprobes: Fix potential deadlock in kprobe_optimizer()
    9ad89d579c01 sched/core: Schedule new worker even if PI-blocked
    086ddc5e7172 ravb: Fix use-after-free ravb_tstamp_skb
    37f12b895446 wimax/i2400m: fix a memory leak bug
    461f5b613b4d net: cavium: fix driver name
    1915dd1826be ibmvnic: Unmap DMA address of TX descriptor buffers after use
    895a07a5a03a net: kalmia: fix memory leaks
    241a735f5f68 cx82310_eth: fix a memory leak bug
    e8f8411a8def vfs: fix page locking deadlocks when deduping files
    a4234e27ed05 lan78xx: Fix memory leaks
    96ece5798677 clk: Fix potential NULL dereference in clk_fetch_parent_index()
    a6cb8dd3664e clk: Fix falling back to legacy parent string matching
    7da16490e5a5 net: myri10ge: fix memory leaks
    0f1c537cf09c liquidio: add cleanup in octeon_setup_iq()
    101743ca0284 selftests: kvm: fix vmx_set_nested_state_test
    5aac82ac9c7c selftests: kvm: provide common function to enable eVMCS
    926a6e9efce9 selftests: kvm: do not try running the VM in vmx_set_nested_state_test
    bf31a46ead59 cxgb4: fix a memory leak bug
    46bf670f4455 scsi: target: tcmu: avoid use-after-free after command timeout
    8e639df33729 scsi: qla2xxx: Fix gnl.l memory leak on adapter init failure
    6fe444e60cda drm/mediatek: set DMA max segment size
    1e12afb4c60a drm/mediatek: use correct device to import PRIME buffers
    2b4a29f04533 netfilter: nft_flow_offload: skip tcp rst and fin packets
    1dcb0d4eaf85 gpio: Fix build error of function redefinition
    f6bd80bc6223 ibmveth: Convert multicast list size for little-endian system
    d45c33d890bc s390/qeth: serialize cmd reply with concurrent timeout
    b12691c24ea9 Bluetooth: hci_qca: Send VS pre shutdown command.
    113d5ca74866 Bluetooth: btqca: Add a short delay before downloading the NVM
    ab0f749707ea net: tc35815: Explicitly check NET_IP_ALIGN is not zero in tc35815_rx
    37a0be861375 hv_netvsc: Fix a warning of suspicious RCU usage
    936315c0c94e ixgbe: fix possible deadlock in ixgbe_service_task()
    1dc961de7733 tools: bpftool: fix error message (prog -> object)
    ea3c243ce799 netfilter: nf_flow_table: teardown flow timeout race
    96a517d0ba5f netfilter: nf_flow_table: conntrack picks up expired flows
    586f00143091 netfilter: nf_tables: use-after-free in failing rule with bound set
    830b5c3760ff net: tundra: tsi108: use spin_lock_irqsave instead of spin_lock_irq in IRQ context
    60a4f2b2b6b8 clk: samsung: exynos542x: Move MSCL subsystem clocks to its sub-CMU
    c65a2b20a934 clk: samsung: exynos5800: Move MAU subsystem clocks to MAU sub-CMU
    f7bd5e9fe13f clk: samsung: Change signature of exynos5_subcmus_init() function
    8f37477964e9 net/mlx5e: Fix error flow of CQE recovery on tx reporter
    701b89908ba1 netfilter: nf_flow_table: fix offload for flows that are subject to xfrm
    b8a132a4c4b6 libbpf: set BTF FD for prog only when there is supported .BTF.ext data
    a65fb2895af4 libbpf: fix erroneous multi-closing of BTF FD
    fa689968da49 batman-adv: Fix netlink dumping of all mcast_flags buckets
    a4c88340b3ea net/rds: Fix info leak in rds6_inc_info_copy()
    fdd2bc365fc6 net/sched: pfifo_fast: fix wrong dereference when qdisc is reset
    e9cc0513248f net/sched: pfifo_fast: fix wrong dereference in pfifo_fast_enqueue
    0b003edac850 net: dsa: tag_8021q: Future-proof the reserved fields in the custom VID
    c7f05c1d9bf4 Add genphy_c45_config_aneg() function to phy-c45.c
    98ded313ffda net/sched: cbs: Set default link speed to 10 Mbps in cbs_set_port_rate
    622f16b30519 taprio: Set default link speed to 10 Mbps in taprio_set_picos_per_byte
    4f15d0e51268 taprio: Fix kernel panic in taprio_destroy
    61f10b1bb84d r8152: remove calling netif_napi_del
    5a9ceccb6385 Revert "r8152: napi hangup fix after disconnect"
    7e21536433d0 nfp: flower: handle neighbour events on internal ports
    f7ec32a4ae5c nfp: flower: prevent ingress block binds on internal ports
    64a2a93ba385 tcp: remove empty skb from write queue in error cases
    5cef2bfc9e3f tcp: inherit timestamp on mtu probe
    939cc35d5f81 net: stmmac: dwmac-rk: Don't fail if phy regulator is absent
    505aac7f4e48 net_sched: fix a NULL pointer deref in ipt action
    3c6dfd2adb7a net: sched: act_sample: fix psample group handling on overwrite
    5038bd027ac3 net: fix skb use after free in netpoll
    baa513580b25 mld: fix memory leak in mld_del_delrec()

(From OE-Core rev: c4811bc2eefbeee6b1150559b24353b328469e97)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Bruce Ashfield
1b35028dd3 linux-yocto/5.2: update to v5.2.14
Updating to the latest korg -stable for 5.2, which comprises the
following changes:

   997fee5473ce Linux 5.2.14
   0ccc5c227f88 Revert "mmc: core: do not retry CMD6 in __mmc_switch()"
   317a66e24b46 x86/boot: Preserve boot_params.secure_boot from sanitizing
   1a7fd193e9d8 Revert "x86/apic: Include the LDR when clearing out APIC registers"
   ae96cf9e1e31 libceph: allow ceph_buffer_put() to receive a NULL ceph_buffer
   8d50b82ea79b x86/boot/compressed/64: Fix missing initialization in find_trampoline_placement()
   852a051ef22b KVM: arm/arm64: VGIC: Properly initialise private IRQ affinity
   44dfa46aaf7c gpio: Fix irqchip initialization order
   157ec0a3f834 RDMA/bnxt_re: Fix stack-out-of-bounds in bnxt_qplib_rcfw_send_message
   cf9ec2e9056c afs: use correct afs_call_type in yfs_fs_store_opaque_acl2
   3f6685835889 afs: Fix possible oops in afs_lookup trace event
   c231241d83b9 afs: Fix leak in afs_lookup_cell_rcu()
   7f134d569e1a KVM: arm/arm64: Only skip MMIO insn once
   39c62cdaa2d4 ceph: fix buffer free while holding i_ceph_lock in fill_inode()
   c4e28be29a45 ceph: fix buffer free while holding i_ceph_lock in __ceph_build_xattrs_blob()
   f41cd559f1f3 ceph: fix buffer free while holding i_ceph_lock in __ceph_setxattr()
   3ebab463e9f4 drm/amdgpu: prevent memory leaks in AMDGPU_CS ioctl
   23da8e9ef69b selftests/kvm: make platform_info_test pass on AMD
   666a41848d72 selftests: kvm: fix state save/load on processors without XSAVE
   dd53d830bb30 infiniband: hfi1: fix memory leaks
   bcb3211656fa infiniband: hfi1: fix a memory leak bug
   1e93149659cc IB/mlx4: Fix memory leaks
   fc38afc04343 RDMA/cma: fix null-ptr-deref Read in cma_cleanup
   d61a256fece2 nvme: Fix cntlid validation when not using NVMEoF
   e1031b6c8100 nvme-multipath: fix possible I/O hang when paths are updated
   6950d5b64a15 Tools: hv: kvp: eliminate 'may be used uninitialized' warning
   195b5aa923ec Input: hyperv-keyboard: Use in-place iterator API in the channel callback
   31b60e5c604c scsi: lpfc: Mitigate high memory pre-allocation by SCSI-MQ
   aa4bc3a35253 x86/boot/compressed/64: Fix boot on machines with broken E820 table
   3091859b0b5e HID: cp2112: prevent sleeping function called from invalid context
   e8fd4f47b224 HID: intel-ish-hid: ipc: add EHL device id
   d58500c6fcb4 kprobes: Fix potential deadlock in kprobe_optimizer()
   9ad89d579c01 sched/core: Schedule new worker even if PI-blocked
   086ddc5e7172 ravb: Fix use-after-free ravb_tstamp_skb
   37f12b895446 wimax/i2400m: fix a memory leak bug
   461f5b613b4d net: cavium: fix driver name
   1915dd1826be ibmvnic: Unmap DMA address of TX descriptor buffers after use
   895a07a5a03a net: kalmia: fix memory leaks
   241a735f5f68 cx82310_eth: fix a memory leak bug
   e8f8411a8def vfs: fix page locking deadlocks when deduping files
   a4234e27ed05 lan78xx: Fix memory leaks
   96ece5798677 clk: Fix potential NULL dereference in clk_fetch_parent_index()
   a6cb8dd3664e clk: Fix falling back to legacy parent string matching
   7da16490e5a5 net: myri10ge: fix memory leaks
   0f1c537cf09c liquidio: add cleanup in octeon_setup_iq()
   101743ca0284 selftests: kvm: fix vmx_set_nested_state_test
   5aac82ac9c7c selftests: kvm: provide common function to enable eVMCS
   926a6e9efce9 selftests: kvm: do not try running the VM in vmx_set_nested_state_test
   bf31a46ead59 cxgb4: fix a memory leak bug
   46bf670f4455 scsi: target: tcmu: avoid use-after-free after command timeout
   8e639df33729 scsi: qla2xxx: Fix gnl.l memory leak on adapter init failure
   6fe444e60cda drm/mediatek: set DMA max segment size
   1e12afb4c60a drm/mediatek: use correct device to import PRIME buffers
   2b4a29f04533 netfilter: nft_flow_offload: skip tcp rst and fin packets
   1dcb0d4eaf85 gpio: Fix build error of function redefinition
   f6bd80bc6223 ibmveth: Convert multicast list size for little-endian system
   d45c33d890bc s390/qeth: serialize cmd reply with concurrent timeout
   b12691c24ea9 Bluetooth: hci_qca: Send VS pre shutdown command.
   113d5ca74866 Bluetooth: btqca: Add a short delay before downloading the NVM
   ab0f749707ea net: tc35815: Explicitly check NET_IP_ALIGN is not zero in tc35815_rx
   37a0be861375 hv_netvsc: Fix a warning of suspicious RCU usage
   936315c0c94e ixgbe: fix possible deadlock in ixgbe_service_task()
   1dc961de7733 tools: bpftool: fix error message (prog -> object)
   ea3c243ce799 netfilter: nf_flow_table: teardown flow timeout race
   96a517d0ba5f netfilter: nf_flow_table: conntrack picks up expired flows
   586f00143091 netfilter: nf_tables: use-after-free in failing rule with bound set
   830b5c3760ff net: tundra: tsi108: use spin_lock_irqsave instead of spin_lock_irq in IRQ context
   60a4f2b2b6b8 clk: samsung: exynos542x: Move MSCL subsystem clocks to its sub-CMU
   c65a2b20a934 clk: samsung: exynos5800: Move MAU subsystem clocks to MAU sub-CMU
   f7bd5e9fe13f clk: samsung: Change signature of exynos5_subcmus_init() function
   8f37477964e9 net/mlx5e: Fix error flow of CQE recovery on tx reporter
   701b89908ba1 netfilter: nf_flow_table: fix offload for flows that are subject to xfrm
   b8a132a4c4b6 libbpf: set BTF FD for prog only when there is supported .BTF.ext data
   a65fb2895af4 libbpf: fix erroneous multi-closing of BTF FD
   fa689968da49 batman-adv: Fix netlink dumping of all mcast_flags buckets
   a4c88340b3ea net/rds: Fix info leak in rds6_inc_info_copy()
   fdd2bc365fc6 net/sched: pfifo_fast: fix wrong dereference when qdisc is reset
   e9cc0513248f net/sched: pfifo_fast: fix wrong dereference in pfifo_fast_enqueue
   0b003edac850 net: dsa: tag_8021q: Future-proof the reserved fields in the custom VID
   c7f05c1d9bf4 Add genphy_c45_config_aneg() function to phy-c45.c
   98ded313ffda net/sched: cbs: Set default link speed to 10 Mbps in cbs_set_port_rate
   622f16b30519 taprio: Set default link speed to 10 Mbps in taprio_set_picos_per_byte
   4f15d0e51268 taprio: Fix kernel panic in taprio_destroy
   61f10b1bb84d r8152: remove calling netif_napi_del
   5a9ceccb6385 Revert "r8152: napi hangup fix after disconnect"
   7e21536433d0 nfp: flower: handle neighbour events on internal ports
   f7ec32a4ae5c nfp: flower: prevent ingress block binds on internal ports
   64a2a93ba385 tcp: remove empty skb from write queue in error cases
   5cef2bfc9e3f tcp: inherit timestamp on mtu probe
   939cc35d5f81 net: stmmac: dwmac-rk: Don't fail if phy regulator is absent
   505aac7f4e48 net_sched: fix a NULL pointer deref in ipt action
   3c6dfd2adb7a net: sched: act_sample: fix psample group handling on overwrite
   5038bd027ac3 net: fix skb use after free in netpoll
   baa513580b25 mld: fix memory leak in mld_del_delrec()

(From OE-Core rev: ece5ad6200be49d7d187b7f302b11ea1c2f33871)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Bruce Ashfield
08b198dd93 linux-yocto/4.19: update to v4.19.72
Updating to the latest -korg -stable relase. A summary of the
changes follows:

   ee809c7e0895 Linux 4.19.72
   991467a47cf2 Revert "x86/apic: Include the LDR when clearing out APIC registers"
   0f134f6e722c libceph: allow ceph_buffer_put() to receive a NULL ceph_buffer
   5049632bc958 x86/boot/compressed/64: Fix missing initialization in find_trampoline_placement()
   b8727dff55f0 KVM: arm/arm64: VGIC: Properly initialise private IRQ affinity
   1a31b0d0ddfa afs: Fix leak in afs_lookup_cell_rcu()
   111d36b6fb7e KVM: arm/arm64: Only skip MMIO insn once
   b84817d96e0f ceph: fix buffer free while holding i_ceph_lock in fill_inode()
   5cd1e3552f0e ceph: fix buffer free while holding i_ceph_lock in __ceph_build_xattrs_blob()
   dfb8712c7acc ceph: fix buffer free while holding i_ceph_lock in __ceph_setxattr()
   ddb55cc39c70 selftests/kvm: make platform_info_test pass on AMD
   6cb9f8d60f8f selftests: kvm: fix state save/load on processors without XSAVE
   08c2052815e3 infiniband: hfi1: fix memory leaks
   d1b7f3252d56 infiniband: hfi1: fix a memory leak bug
   adb87027b5ff IB/mlx4: Fix memory leaks
   5e416b11b4a9 nvme-multipath: fix possible I/O hang when paths are updated
   5bbebceec61d Tools: hv: kvp: eliminate 'may be used uninitialized' warning
   1d42e40fe3c5 Input: hyperv-keyboard: Use in-place iterator API in the channel callback
   e02aac3edb46 x86/boot/compressed/64: Fix boot on machines with broken E820 table
   05d611c4ffb7 HID: cp2112: prevent sleeping function called from invalid context
   5e1d50a3eafe kprobes: Fix potential deadlock in kprobe_optimizer()
   a5839b6b3a79 ravb: Fix use-after-free ravb_tstamp_skb
   54eac3997ee4 wimax/i2400m: fix a memory leak bug
   7506e8c4bec8 net: cavium: fix driver name
   ea78dc8b5e66 ibmvnic: Unmap DMA address of TX descriptor buffers after use
   4fcb9b3f263e net: kalmia: fix memory leaks
   1ad45d0f69d2 cx82310_eth: fix a memory leak bug
   ac3cc25f380b vfs: fix page locking deadlocks when deduping files
   9ea1feadf5e0 lan78xx: Fix memory leaks
   375ab446ec76 net: myri10ge: fix memory leaks
   f13b7ec5e1c5 liquidio: add cleanup in octeon_setup_iq()
   2c3dd20f852a cxgb4: fix a memory leak bug
   b8cd0b7b09ed scsi: target: tcmu: avoid use-after-free after command timeout
   6c9a1e17d063 scsi: qla2xxx: Fix gnl.l memory leak on adapter init failure
   b3496367d9cb drm/mediatek: set DMA max segment size
   c9f595453bc3 drm/mediatek: use correct device to import PRIME buffers
   a54fa5dff8cd netfilter: nft_flow_offload: skip tcp rst and fin packets
   6052090280b8 gpio: Fix build error of function redefinition
   cc8aa6155611 ibmveth: Convert multicast list size for little-endian system
   32e912b91b5d Bluetooth: btqca: Add a short delay before downloading the NVM
   7b7a11549dc1 net: tc35815: Explicitly check NET_IP_ALIGN is not zero in tc35815_rx
   752832f2e8c9 hv_netvsc: Fix a warning of suspicious RCU usage
   463d87bc13ff tools: bpftool: fix error message (prog -> object)
   5776970fb4ec netfilter: nf_tables: use-after-free in failing rule with bound set
   d22ed7b72acf net: tundra: tsi108: use spin_lock_irqsave instead of spin_lock_irq in IRQ context
   3ddda4f3114b spi: bcm2835aux: fix corruptions for longer spi transfers
   fe49c3de7372 spi: bcm2835aux: remove dangerous uncontrolled read of fifo
   a4a9ee79036b spi: bcm2835aux: unifying code between polling and interrupt driven code
   ee271ead3b61 x86/boot: Preserve boot_params.secure_boot from sanitizing
   9484203d254d net/rds: Fix info leak in rds6_inc_info_copy()
   5977bc19ce7f tcp: remove empty skb from write queue in error cases
   6f3126379879 tcp: inherit timestamp on mtu probe
   6f8348f63706 net: stmmac: dwmac-rk: Don't fail if phy regulator is absent
   38166934f89c net_sched: fix a NULL pointer deref in ipt action
   5ff0ab0c668b net: sched: act_sample: fix psample group handling on overwrite
   6a2bd8261630 net: fix skb use after free in netpoll
   8a5d27eaba68 mld: fix memory leak in mld_del_delrec()
   e7d2672c66e4 Linux 4.19.71
   72168ae78629 Revert "Input: elantech - enable SMBus on new (2018+) systems"
   0fed55c248d9 Linux 4.19.70
   9854d089f790 Revert "ASoC: Fail card instantiation if DAI format setup fails"
   e064466cb614 mt76: mt76x0u: do not reset radio on resume
   b307f99dca5a x86/ptrace: fix up botched merge of spectrev1 fix
   3b26fa9e3ec3 i2c: piix4: Fix port selection for AMD Family 16h Model 30h
   4f4be79c9ee7 NFS: Ensure O_DIRECT reports an error if the bytes read/written is 0
   b5891b624b9a NFS: Pass error information to the pgio error cleanup routine
   812de6dee596 NFSv4/pnfs: Fix a page lock leak in nfs_pageio_resend()
   57c491fd844d NFS: Clean up list moves of struct nfs_page
   79f1b33c53a0 KVM: arm/arm64: vgic-v2: Handle SGI bits in GICD_I{S,C}PENDR0 as WI
   ab8ecc278dc8 KVM: arm/arm64: vgic: Fix potential deadlock when ap_list is long
   db1841a2dd4c KVM: PPC: Book3S: Fix incorrect guest-to-user-translation error handling
   938e383738d9 mac80211: Correctly set noencrypt for PAE frames
   4f139c0376fb mac80211: Don't memset RXCB prior to PAE intercept
   58f91aac4dfe mac80211: fix possible sta leak
   945b35972803 Revert "cfg80211: fix processing world regdomain when non modular"
   690a424838ca crypto: ccp - Ignore unconfigured CCP device on suspend/resume
   4e77b2ea941b VMCI: Release resource if the work is already queued
   2a964875def7 bus: hisi_lpc: Add .remove method to avoid driver unbind crash
   649532efef46 bus: hisi_lpc: Unregister logical PIO range to avoid potential use-after-free
   68b58d392464 drm/i915: Call dma_set_max_seg_size() in i915_driver_hw_probe()
   c7615333645d drm/i915: Don't deballoon unused ggtt drm_mm_node in linux guest
   6d3003f56449 drm/amdgpu: Add APTX quirk for Dell Latitude 5495
   c4616a9b3d3f lib: logic_pio: Add logic_pio_unregister_range()
   7faef13e6f68 lib: logic_pio: Avoid possible overlap for unregistering regions
   b865c2c6e3f2 lib: logic_pio: Fix RCU usage
   79829fc4ff33 fsi: scom: Don't abort operations for minor errors
   e44840b7320c typec: tcpm: fix a typo in the comparison of pdo_max_voltage
   e91c9c119dba intel_th: pci: Add Tiger Lake support
   ce1c894e1e89 intel_th: pci: Add support for another Lewisburg PCH
   cad1d3bfdd5d stm class: Fix a double free of stm_source_device
   abc42341b6c4 mmc: core: Fix init of SD cards reporting an invalid VDD range
   1ecc65e1418b mmc: sdhci-of-at91: add quirk for broken HS200
   be8e9fa67ea7 mei: me: add Tiger Lake point LP device ID
   5ed36421af24 USB: storage: ums-realtek: Whitelist auto-delink support
   f79d1598968b USB: storage: ums-realtek: Update module parameter description for auto_delink_en
   f46fd68a541f usb: host: xhci: rcar: Fix typo in compatible string matching
   7af7737491ce usb: host: ohci: fix a race condition between shutdown and irq
   a209827549da usb: chipidea: udc: don't do hardware access if gadget has stopped
   97bec7afb98f usb: hcd: use managed device resources
   ebad9fd106da USB: cdc-wdm: fix race between write and disconnect due to flag abuse
   cbf5a279a22d usb-storage: Add new JMS567 revision to unusual_devs
   8ea639525db6 ftrace: Check for empty hash and comment the race with registering probes
   9d98e0f4859d ftrace: Check for successful allocation of hash
   f184b16748f4 ftrace: Fix NULL pointer dereference in t_probe_next()
   edc454cd5a04 x86/apic: Include the LDR when clearing out APIC registers
   959832657c03 x86/apic: Do not initialize LDR and DFR for bigsmp
   941d875cd44a uprobes/x86: Fix detection of 32-bit user mode
   3c2b4827798e KVM: x86: Don't update RIP or do single-step on faulting emulation
   3ec35109c80a kvm: x86: skip populating logical dest map if apic is not sw enabled
   cbd905dac535 ALSA: usb-audio: Add implicit fb quirk for Behringer UFX1604
   b5d1f31d97af ALSA: usb-audio: Fix invalid NULL check in snd_emuusb_set_samplerate()
   98a2017c4a17 ALSA: seq: Fix potential concurrent access to the deleted pool
   842317de9797 ALSA: hda - Fixes inverted Conexant GPIO mic mute led
   5ef43bdc7321 ALSA: line6: Fix memory leak at line6_init_pcm() error path
   c94c0bf878bf ALSA: usb-audio: Check mixer unit bitmap yet more strictly
   5dd2db1ab006 mm/zsmalloc.c: fix build when CONFIG_COMPACTION=n
   9febfd30aede ipv4/icmp: fix rt dst dev null pointer dereference
   0a6a9c473080 tcp: make sure EPOLLOUT wont be missed
   3e79bd1e4f9a net/smc: make sure EPOLLOUT is raised
   ff129837a5f6 ipv6: Default fib6_type to RTN_UNICAST when not set
   02127bdfee97 ipv6/addrconf: allow adding multicast addr if IFA_F_MCAUTOJOIN is set
   a1407b26a6ed net: tls, fix sk_write_space NULL write when tx disabled
   fdc4400e9628 net/tls: swap sk_write_space on close
   f7009bbaff54 net/tls: Fixed return value when tls_complete_pending_work() fails
   dc066fd0d073 drm/tilcdc: Register cpufreq notifier after we have initialized crtc
   eba86f0a909f scsi: ufs: Fix RX_TERMINATION_FORCE_ENABLE define value
   edd40f54736d drm/bridge: tfp410: fix memleak in get_modes()
   2fa7c944e11f watchdog: bcm2835_wdt: Fix module autoload
   a3eb2eba2f79 drm/i915: fix broadwell EU computation
   c61c7246dc1f tools: hv: fix KVP and VSS daemons exit code
   0c39d818aae4 tools: hv: fixed Python pep8/flake8 warnings for lsvmbus
   39ad18a042ab usb: host: fotg2: restart hcd after port reset
   37654abed26f drm/ast: Fixed reboot test may cause system hanged
   1cc2ef1cfbd8 i2c: emev2: avoid race when unregistering slave client
   7048cd814f4e i2c: rcar: avoid race when unregistering slave client
   8bd5426889c2 arm64: cpufeature: Don't treat granule sizes as strict
   eb535aaf3cd7 xen/blkback: fix memory leaks
   339c1572a266 usb: gadget: mass_storage: Fix races between fsg_disable and fsg_set_alt
   122ab8ea641c usb: gadget: composite: Clear "suspended" on reset/disconnect
   21ec20f62fae iommu/dma: Handle SG length overflow better
   7f4b81365e83 omap-dma/omap_vout_vrfb: fix off-by-one fi value
   71d24f45f905 dmaengine: stm32-mdma: Fix a possible null-pointer dereference in stm32_mdma_irq_handler()
   377ebe613ed8 auxdisplay: panel: need to delete scan_timer when misc_register fails in panel_attach
   2f87eb895ebd soundwire: cadence_master: fix definitions for INTSTAT0/1
   29b064d300a2 soundwire: cadence_master: fix register definition for SLAVE_STATE
   4a9829195d9e nvme-pci: Fix async probe remove race
   431f579a5349 nvme: fix a possible deadlock when passthru commands sent to a multipath device
   32c0b8f10351 nvmet-loop: Flush nvme_delete_wq when removing the port
   9c55dc85d890 afs: Only update d_fsdata if different in afs_d_revalidate()
   24e093b96905 fs: afs: Fix a possible null-pointer dereference in afs_put_read()
   8e5179f982f9 afs: Fix loop index mixup in afs_deliver_vl_get_entry_by_name_u()
   dfc438c0bc6d afs: Fix the CB.ProbeUuid service handler to reply correctly
   7436dc2adeff nvme-multipath: revalidate nvme_ns_head gendisk in nvme_validate_ns
   2013d6ec0bc0 dmaengine: ste_dma40: fix unneeded variable warning
   97ab07e11fbf Linux 4.19.69
   6d47174198ac rxrpc: Fix local refcounting
   ce3f9e194d25 rxrpc: Fix local endpoint replacement
   a05354cbb822 rxrpc: Fix read-after-free in rxrpc_queue_local()
   f28023c4eedc rxrpc: Fix local endpoint refcounting
   32df8a30b734 powerpc: Allow flush_(inval_)dcache_range to work across ranges >4GB
   0d5e34c1e263 dm zoned: fix potential NULL dereference in dmz_do_reclaim()
   655bb2c4ace4 xfs: always rejoin held resources during defer roll
   83a8e6b2f2e3 xfs: Add attibute remove and helper functions
   b21ff6cfcc24 xfs: Add attibute set and helper functions
   b3a248f2307c xfs: Add helper function xfs_attr_try_sf_addname
   a9912f346bdc xfs: Move fs/xfs/xfs_attr.h to fs/xfs/libxfs/xfs_attr.h
   17c2b7af71f2 xfs: don't trip over uninitialized buffer on extent read of corrupted inode
   11f85d4d77af xfs: fix missing ILOCK unlock when xfs_setattr_nonsize fails due to EDQUOT
   ed11e6003314 mm/zsmalloc.c: fix race condition in zs_destroy_pool
   b30a2f608e94 mm/zsmalloc.c: migration can leave pages in ZS_EMPTY indefinitely
   db67ac031655 mm, page_owner: handle THP splits correctly
   42731deff2ea genirq: Properly pair kobject_del() with kobject_add()
   c14fe4e8fd01 dm zoned: properly handle backing device failure
   4530f2f1a79a dm zoned: improve error handling in i/o map code
   8b7c17bb2753 dm zoned: improve error handling in reclaim
   ded8e524cfa6 dm table: fix invalid memory accesses with too high sector number
   53e73d1079d7 dm space map metadata: fix missing store of apply_bops() return value
   2cff6c87a0dc dm raid: add missing cleanup in raid_ctr()
   795b0572729b dm integrity: fix a crash due to BUG_ON in __journal_read_write()
   8114012de6c1 dm btree: fix order of block initialization in btree_split_beneath
   e0fb8135de9e dm kcopyd: always complete failed jobs
   f7d157f33001 x86/boot: Fix boot regression caused by bootparam sanitizing
   d955601166f8 x86/boot: Save fields explicitly, zero out everything else
   e063b03b451a x86/CPU/AMD: Clear RDRAND CPUID bit on AMD family 15h/16h
   685e598e447e x86/apic: Handle missing global clockevent gracefully
   f9747104a5c8 x86/retpoline: Don't clobber RFLAGS during CALL_NOSPEC on i386
   cf13e30c58d4 userfaultfd_release: always remove uffd flags and clear vm_userfaultfd_ctx
   a6f236e1bd97 Drivers: hv: vmbus: Fix virt_to_hvpfn() for X86_PAE
   3783c7ee9920 gpiolib: never report open-drain/source lines as 'input' to user-space
   f88c31b43bab drm/nouveau: Don't retry infinitely when receiving no data on i2c over AUX
   51f6afddb147 libceph: fix PG split vs OSD (re)connect race
   f2951720629e ceph: don't try fill file_lock on unsuccessful GETFILELOCK reply
   7bed2889cd18 ceph: clear page dirty before invalidate page
   a8f7703f2213 clk: socfpga: stratix10: fix rate caclulationg for cnt_clks
   b608a5a238d5 Revert "dm bufio: fix deadlock with loop device"
   375c6c72f56c HID: wacom: Correct distance scale for 2nd-gen Intuos devices
   8317fe4a3906 HID: wacom: correct misreported EKR ring values
   3c4b283a0deb selftests: kvm: Adding config fragments
   ef61b79017ff KVM: arm: Don't write junk to CP15 registers on reset
   d5cb5b493030 KVM: arm64: Don't write junk to sysregs on reset
   590549487679 perf pmu-events: Fix missing "cpu_clk_unhalted.core" event
   06ed429b9018 perf cpumap: Fix writing to illegal memory in handling cpumap mask
   e49cfed0a8cb perf ftrace: Fix failure to set cpumask when only one cpu is present
   7aa8dfa450b4 block, bfq: handle NULL return value by bfq_init_rq()
   fa6f4687805a drm/vmwgfx: fix memory leak when too many retries have occurred
   923de016dc88 x86/lib/cpu: Address missing prototypes warning
   3ca013cd63be libata: add SG safety checks in SFF pio transfers
   3b84bbef51c4 libata: have ata_scsi_rw_xlat() fail invalid passthrough requests
   e0c030221b1f net: hisilicon: Fix dma_map_single failed on arm64
   4ab3052568e5 net: hisilicon: fix hip04-xmit never return TX_BUSY
   09ec5bf10749 net: hisilicon: make hip04_tx_reclaim non-reentrant
   b8d03c79e403 net: stmmac: tc: Do not return a fragment entry
   b6cd6d18423e net: stmmac: Fix issues when number of Queues >= 4
   45e7e4e66b08 net: cxgb3_main: Fix a resource leak in a error path in 'init_one()'
   db106f695414 s390: put _stext and _etext into .text section
   33bdea175df0 SMB3: Kernel oops mounting a encryptData share with CONFIG_DEBUG_VIRTUAL
   fab5a1fd17a6 SMB3: Fix potential memory leak when processing compound chain
   6cb4997861c8 drm/rockchip: Suspend DP late
   1c6ca0921705 HID: input: fix a4tech horizontal wheel custom usage
   f6f9c4491ec5 HID: quirks: Set the INCREMENT_USAGE_ON_DUPLICATE quirk on Saitek X52
   b6fb2f5b33f2 NFS: Fix regression whereby fscache errors are appearing on 'nofsc' mounts
   66daeec347f0 NFSv4: Fix a potential sleep while atomic in nfs4_do_reclaim()
   d1ba0b81e709 net/ethernet/qlogic/qed: force the string buffer NULL-terminated
   35d9e9211baf can: peak_usb: force the string buffer NULL-terminated
   895c8fcfedad can: sja1000: force the string buffer NULL-terminated
   a3d1263c9b03 perf bench numa: Fix cpu0 binding
   4533d08b6528 net: phy: phy_led_triggers: Fix a possible null-pointer dereference in phy_led_trigger_change_speed()
   07efe13b95ab isdn: hfcsusb: Fix mISDN driver crash caused by transfer buffer on the stack
   4db2043eec46 rxrpc: Fix the lack of notification when sendmsg() fails on a DATA packet
   0d68fbc2d07b rxrpc: Fix potential deadlock
   63dd147e7af0 netfilter: ipset: Fix rename concurrency with listing
   ea08214d8cd0 netfilter: ipset: Copy the right MAC address in bitmap:ip,mac and hash:ip,mac sets
   5a072ef6a296 netfilter: ipset: Actually allow destination MAC address for hash:ip,mac sets too
   ba42212ac0a0 mac80211_hwsim: Fix possible null-pointer dereferences in hwsim_dump_radio_nl()
   32cbe03539ac isdn: mISDN: hfcsusb: Fix possible null-pointer dereferences in start_isoc_chain()
   8a24df575c97 qed: RDMA - Fix the hw_ver returned in device attributes
   cb64e86ee0d1 net: usb: qmi_wwan: Add the BroadMobi BM818 card
   bfa713f5cec5 ASoC: ti: davinci-mcasp: Correct slot_width posed constraint
   dd0ff288e344 ASoC: rockchip: Fix mono capture
   c5cb10632c0f st_nci_hci_connectivity_event_received: null check the allocation
   0d73ba88f466 st21nfca_connectivity_event_received: null check the allocation
   714a8438fc8a ASoC: Fail card instantiation if DAI format setup fails
   bd2f4c7c2d6a can: gw: Fix error path of cgw_module_init
   3257103502cf can: mcp251x: add error check when wq alloc failed
   dbf790dcb8a9 can: dev: call netif_carrier_off() in register_candev()
   43d31fd9a8f2 selftests: forwarding: gre_multipath: Fix flower filters
   ef52e2b9a621 selftests: forwarding: gre_multipath: Enable IPv4 forwarding
   192bbe9d57ed net: mvpp2: Don't check for 3 consecutive Idle frames for 10G links
   a1e5a76db8dd bonding: Force slave speed check after link state recovery for 802.3ad
   b7038c195fd1 selftests/bpf: fix sendmsg6_prog on s390
   e6dc6409f474 ASoC: dapm: Fix handling of custom_stop_condition on DAPM graph walks
   71305e8ee503 netfilter: ebtables: fix a memory leak bug in compat
   70b4edd74b6d mips: fix cacheinfo
   326175aa28fd MIPS: kernel: only use i8253 clocksource with periodic clockevent
   a6067c6e630f HID: Add 044f:b320 ThrustMaster, Inc. 2 in 1 DT
   def4c11b3131 Linux 4.19.68
   7c13983a2860 mmc: sdhci-of-arasan: Do now show error message in case of deffered probe
   447f5f48f4fa net/mlx5e: Use flow keys dissector to parse packets for ARFS
   fbd8ab680675 net/mlx5e: Only support tx/rx pause setting for port owner
   b3410f0f8505 xen/netback: Reset nr_frags before freeing skb
   cc4ff0f4f564 tipc: initialise addr_trail_end when setting node addresses
   e89bb758c030 team: Add vlan tx offload to hw_enc_features
   eeb148d20819 sctp: fix the transport error_count check
   227f204ad197 sctp: fix memleak in sctp_send_reset_streams
   154e6bc497c9 net/packet: fix race in tpacket_snd()
   f588dccfc137 net/mlx4_en: fix a memory leak bug
   8905a249448c net: dsa: Check existence of .port_mdb_add callback before calling it
   d61d8ea9ca12 bonding: Add vlan tx offload to hw_enc_features
   40933af400c5 bnx2x: Fix VF's VLAN reconfiguration in reload.
   03d54393e3d7 iommu/amd: Move iommu_init_pci() to .init section
   62e023ddd01a Input: psmouse - fix build error of multiple definition
   28ff7d3b3fda netfilter: conntrack: Use consistent ct id hash calculation
   30b9da0ec2a2 arm64: ftrace: Ensure module ftrace trampoline is coherent with I-side
   a1cd2f7015bd dm: disable DISCARD if the underlying storage no longer supports it
   4af28b2f19b0 drm/i915/cfl: Add a new CFL PCI ID.
   3ca5b7b4afee USB: serial: option: Add Motorola modem UARTs
   e480d6cf6f79 USB: serial: option: add the BroadMobi BM818 card
   8175fa2987a6 USB: serial: option: Add support for ZTE MF871A
   afb677b29995 USB: serial: option: add D-Link DWM-222 device ID
   487d66ae8f45 USB: CDC: fix sanity checks in CDC union parser
   c02c0249ce55 usb: cdc-acm: make sure a refcount is taken early enough
   f417f9715f4c usb: gadget: udc: renesas_usb3: Fix sysfs interface of "role"
   7f52d6d2a82d USB: core: Fix races in character device registration and deregistraion
   367d103a4a93 iio: adc: max9611: Fix temperature reading in probe
   dac96992f00a staging: comedi: dt3000: Fix rounding up of timer divisor
   2e394bcfdcf3 staging: comedi: dt3000: Fix signed integer overflow 'divider * base'
   8c7053d162d9 KVM: arm/arm64: Sync ICH_VMCR_EL2 back when about to block
   c8d95668c4ca arm64: KVM: regmap: Fix unexpected switch fall-through
   0755b6b152cb asm-generic: fix -Wtype-limits compiler warnings
   7113a1bc19fa ocfs2: remove set but not used variable 'last_hash'
   01d8d08f4cd4 Revert "kmemleak: allow to coexist with fault injection"
   cf9a18d7bcd0 drm/exynos: fix missing decrement of retry counter
   c256729f2695 drm: msm: Fix add_gpu_components
   b4f0fee7f77c IB/mad: Fix use-after-free in ib mad completion handling
   a0258ff4993f IB/mlx5: Fix MR registration flow to use UMR properly
   efb742ce4e27 IB/core: Add mitigation for Spectre V1
   4a0d2eeea27a arm64/mm: fix variable 'pud' set but not used
   6af9263f685d arm64: unwind: Prohibit probing on return_address()
   ffb1a76d1c29 arm64/efi: fix variable 'si' set but not used
   48522289bf50 kbuild: Check for unknown options with cc-option usage in Kconfig and clang
   b3aebdd46d63 kbuild: modpost: handle KBUILD_EXTRA_SYMBOLS only for external modules
   23bc01f0d955 ata: libahci: do not complain in case of deferred probe
   68340db992f6 drm/amdgpu: fix a potential information leaking bug
   02d4fe0193d5 scsi: qla2xxx: Fix possible fcport null-pointer dereferences
   3435e025ed71 scsi: hpsa: correct scsi command status issue after reset
   f833deae2a06 Btrfs: fix deadlock between fiemap and transaction commits
   202aa96f052a drm/bridge: lvds-encoder: Fix build error while CONFIG_DRM_KMS_HELPER=m
   f69fd790edf7 libata: zpodd: Fix small read overflow in zpodd_get_mech_type()
   0a19fff567a0 perf header: Fix use of unitialized value warning
   ab5aa579ca82 perf header: Fix divide by zero error if f_header.attr_size==0
   a5e40452c916 irqchip/irq-imx-gpcv2: Forward irq type to parent
   dcb73180de61 irqchip/gic-v3-its: Free unused vpt_page when alloc vpe table fail
   e72e6ba17ab4 xen/pciback: remove set but not used variable 'old_state'
   ca5b26a8f1d8 clk: renesas: cpg-mssr: Fix reset control race condition
   af2ed1a05a7a clk: sprd: Select REGMAP_MMIO to avoid compile errors
   3e5f29b66675 clk: at91: generated: Truncate divisor to GENERATED_MAX_DIV + 1
   28fd9b37b6bb riscv: Make __fstate_clean() work correctly.
   cef0e9eb2231 netfilter: ebtables: also count base chain policies
   07d92caeb945 net: usb: pegasus: fix improper read if get_registers() fail
   f13de3d677d1 Input: iforce - add sanity checks
   08b3af00a161 Input: kbtab - sanity check for endpoint type
   b545dc9debe6 HID: hiddev: do cleanup in failure of opening a device
   0aab1a4653a6 HID: hiddev: avoid opening a disconnected device
   537d957b144f HID: holtek: test for sanity of intfdata
   9585f4440cec ALSA: hda - Let all conexant codec enter D3 when rebooting
   e58ba88d6c60 ALSA: hda - Add a generic reboot_notify
   6c4a536ca97b ALSA: hda - Fix a memory leak bug
   1bf5f827564c ALSA: hda - Apply workaround for another AMD chip 1022:1487
   58b9f19ee438 ALSA: usb-audio: Fix an OOB bug in parse_audio_mixer_unit
   46f9a1bc60a4 ALSA: usb-audio: Fix a stack buffer overflow bug in check_input_term
   d5bb12402805 ALSA: hda/realtek - Add quirk for HP Envy x360
   61f6ecb75845 xtensa: add missing isync to the cpu_reset TLB code
   7c001e5aab6d cpufreq: schedutil: Don't skip freq update when limits change
   7f68aa2e3e1b Revert "pwm: Set class for exported channels in sysfs"
   056368fc3ef7 mm/usercopy: use memory range to be accessed for wraparound check
   c8282f1b5653 mm/memcontrol.c: fix use after free in mem_cgroup_iter()
   3c0cb90e9212 mm: mempolicy: handle vma with unmovable pages mapped correctly in mbind
   cd825d87140d mm: mempolicy: make the behavior consistent when MPOL_MF_MOVE* and MPOL_MF_STRICT were specified
   f0fed8283deb mm/hmm: fix bad subpage pointer in try_to_unmap_one
   3858cca150c6 seq_file: fix problem when seeking mid-record
   50d15197254a sh: kernel: hw_breakpoint: Fix missing break in switch statement
   a5aa80588fcd Linux 4.19.67
   ac2951114955 iwlwifi: mvm: fix version check for GEO_TX_POWER_LIMIT support
   6a81677a2e65 iwlwifi: mvm: don't send GEO_TX_POWER_LIMIT on version < 41
   80bac45e3ad8 iwlwifi: mvm: fix an out-of-bound access
   7626b510fc77 iwlwifi: don't unmap as page memory that was mapped as single
   b38c56b76dcc mwifiex: fix 802.11n/WPA detection
   2bc73d914114 KVM: Fix leak vCPU's VMCS value into other pCPU
   d1489f0b4de7 NFSv4: Fix an Oops in nfs4_do_setattr
   898c19f1b4c8 smb3: send CAP_DFS capability during session setup
   50831f1a2f57 SMB3: Fix deadlock in validate negotiate hits reconnect
   2afa6c13e498 dax: dax_layout_busy_page() should not unmap cow pages
   a566750c3a78 mac80211: don't WARN on short WMM parameters from AP
   af9d64f871cf ALSA: hda - Workaround for crackled sound on AMD controller (1022:1457)
   06f0bcaceb8c ALSA: hda - Don't override global PCM hw info flag
   1c286e4e13f2 ALSA: hiface: fix multiple memory leak bugs
   bc972b6b52e2 ALSA: firewire: fix a memory leak bug
   edc388566a1d drm/i915: Fix wrong escape clock divisor init for GLK
   a73027204ac5 hwmon: (nct7802) Fix wrong detection of in4 presence
   9ce1b3eb5489 can: peak_usb: pcan_usb_fd: Fix info-leaks to USB devices
   cab569a44a52 can: peak_usb: pcan_usb_pro: Fix info-leaks to USB devices
   d4d904e4e258 ALSA: usb-audio: fix a memory leak bug
   e0d262a57fc7 x86/purgatory: Do not use __builtin_memcpy and __builtin_memset
   118293070096 HID: sony: Fix race condition between rumble and device remove.
   5c4689cbe95a s390/dma: provide proper ARCH_ZONE_DMA_BITS value
   d768173982ec perf/core: Fix creating kernel counters for PMUs that override event->cpu
   06dc92142b5e tty/ldsem, locking/rwsem: Add missing ACQUIRE to read_failed sleep loop
   0ba69e96cc62 test_firmware: fix a memory leak bug
   cdd92ebe29c2 scsi: scsi_dh_alua: always use a 2 second delay before retrying RTPG
   b620c6d5779a scsi: ibmvfc: fix WARN_ON during event pool release
   f254faed4153 scsi: megaraid_sas: fix panic on loading firmware crashdump
   bb41940c89bd ARM: dts: bcm: bcm47094: add missing #cells for mdio-bus-mux
   19e7df3e4fe7 ARM: davinci: fix sleep.S build error on ARMv4
   bdce5621e6b0 nvme: fix multipath crash when ANA is deactivated
   b1689742ff4a ACPI/IORT: Fix off-by-one check in iort_dev_find_its_id()
   38c919ec7b30 drbd: dynamically allocate shash descriptor
   f4e2d182d6a6 perf probe: Avoid calling freeing routine multiple times for same pointer
   101a155436fe perf tools: Fix proper buffer size for feature processing
   b065f404c946 ALSA: compress: Be more restrictive about when a drain is allowed
   30dd700da7de ALSA: compress: Don't allow paritial drain operations on capture streams
   f1ea9a638770 ALSA: compress: Prevent bypasses of set_params
   b9e2fa1e15b7 ALSA: compress: Fix regression on compressed capture streams
   77868c0003cc s390/qdio: add sanity checks to the fast-requeue path
   8729fe83b0d5 cpufreq/pasemi: fix use-after-free in pas_cpufreq_cpu_init()
   991c4756be69 drm: silence variable 'conn' set but not used
   ca1b1940a32a hwmon: (nct6775) Fix register address and added missed tolerance for nct6106
   56dc57c705ef allocate_flower_entry: should check for null deref
   f4cfdd46b356 mac80211: don't warn about CW params when not using them
   f2fd89817212 nl80211: fix NL80211_HE_MAX_CAPABILITY_LEN
   492c158ab2c0 iscsi_ibft: make ISCSI_IBFT dependson ACPI instead of ISCSI_IBFT_FIND
   8d641499bf96 drm/amd/display: Increase size of audios array
   f9420bfa29f9 drm/amd/display: Only enable audio if speaker allocation exists
   3998e684463a drm/amd/display: Fix dc_create failure handling and 666 color depths
   e7a8a794109c drm/amd/display: use encoder's engine id to find matched free audio device
   2a5e21adc71b drm/amd/display: Wait for backlight programming completion in set backlight level
   056af94d6e10 scripts/sphinx-pre-install: fix script for RHEL/CentOS
   36b6458d8541 netfilter: nft_hash: fix symhash with modulus one
   6f1d7f0d6689 netfilter: conntrack: always store window size un-scaled
   307b6e5d90dc netfilter: Fix rpfilter dropping vrf packets by mistake
   6f9dff8d1d58 vfio-ccw: Set pa_nr to 0 if memory allocation fails for pa_iova_pfn
   bb312b4aa8b0 netfilter: nfnetlink: avoid deadlock due to synchronous request_module
   f61c4d3a1f18 can: peak_usb: fix potential double kfree_skb()
   0e9038a26c9b can: rcar_canfd: fix possible IRQ storm on high load
   9479a0589923 usb: typec: tcpm: Ignore unsupported/unknown alternate mode requests
   3f524b631db7 usb: typec: tcpm: Add NULL check before dereferencing config
   bbc2e8206012 usb: typec: tcpm: remove tcpm dir if no children
   2ec5c9b785f4 usb: typec: tcpm: free log buf memory when remove debug file
   33f2240acfa8 usb: yurex: Fix use-after-free in yurex_delete
   49888a4f0ebc usb: host: xhci-rcar: Fix timeout in xhci_suspend()
   21344f0575f0 gfs2: gfs2_walk_metadata fix
   b674f7914a64 x86/purgatory: Use CFLAGS_REMOVE rather than reset KBUILD_CFLAGS
   0a9e41e27659 perf record: Fix module size on s390
   f1f662894361 perf db-export: Fix thread__exec_comm()
   532db2b9756a perf annotate: Fix s390 gap between kernel end and module start
   46b306f3cd7b mm/vmalloc: Sync unmappings in __purge_vmap_area_lazy()
   9935d7ed8406 x86/mm: Sync also unmappings in vmalloc_sync_all()
   dd524d488f5b x86/mm: Check for pfn instead of page in vmalloc_sync_one()
   b8a2169bcad8 Input: synaptics - enable RMI mode for HP Spectre X360
   3d180fe5cd76 Input: elantech - enable SMBus on new (2018+) systems
   ce7d4fe4e52b Input: usbtouchscreen - initialize PM mutex before using it
   c9a1c10487b9 loop: set PF_MEMALLOC_NOIO for the worker thread
   d79d76f2bbb0 mmc: cavium: Add the missing dma unmap when the dma has finished.
   fd3f902dd1d5 mmc: cavium: Set the correct dma max segment size for mmc_host
   9575ba61ba19 sound: fix a memory leak bug
   d397091dbac0 usb: iowarrior: fix deadlock on disconnect
   b43611cd762c usb: usbfs: fix double-free of usb memory upon submiturb error
   6dbc3b74daeb crypto: ccp - Ignore tag length when decrypting GCM ciphertext
   30692edea30d crypto: ccp - Add support for valid authsize values less than 16
   1c4393df3622 crypto: ccp - Fix oops by properly managing allocated structures
   b9de21575a20 staging: android: ion: Bail out upon SIGKILL when allocating memory.
   6b8f93b5a4f7 staging: gasket: apex: fix copy-paste typo
   fcab37830177 iio: adc: max9611: Fix misuse of GENMASK macro
   805bd34ac269 iio: cros_ec_accel_legacy: Fix incorrect channel setting
   893af1c79e42 Linux 4.19.66
   48fcdaba7b0d spi: bcm2835: Fix 3-wire mode if DMA is enabled
   ebda41dd170f cgroup: Fix css_task_iter_advance_css_set() cset skip condition
   0a9abd277819 cgroup: css_task_iter_skip()'d iterators must be advanced before accessed
   4340d175b898 cgroup: Include dying leaders with live threads in PROCS iterations
   370b9e6399da cgroup: Implement css_task_iter_skip()
   7528e95b7519 cgroup: Call cgroup_release() before __exit_signal()
   e6e9bcef12ca compat_ioctl: pppoe: fix PPPOEIOCSFWD handling
   473430ed6117 r8169: don't use MSI before RTL8168d
   0ccf47265e4c net/mlx5e: Prevent encap flow counter update async to user query
   cd84a10792f0 net/mlx5: Fix modify_cq_in alignment
   f378724e10ce tun: mark small packets as owned by the tap sock
   5295d6515485 tipc: compat: allow tipc commands without arguments
   eaa34bd4f7b5 ocelot: Cancel delayed work before wq destruction
   cd7f02fecac1 NFC: nfcmrvl: fix gpio-handling regression
   ce58a3655121 net/smc: do not schedule tx_work in SMC_CLOSED state
   51d240a144a5 net: sched: use temporary variable for actions indexes
   cb20f74135df net sched: update vlan action for batched events operations
   d82dc254b967 net: sched: Fix a possible null-pointer dereference in dequeue_func()
   44b96a38c2b5 net: qualcomm: rmnet: Fix incorrect UL checksum offload logic
   c8b05980c4bf net: phylink: Fix flow control for fixed-link
   4dddd08b571d net/mlx5: Use reversed order when unregister devices
   858f82c63667 net/mlx5e: always initialize frag->last_in_page
   edb7ad69c439 net: fix ifindex collision during namespace removal
   a19d4e34f092 net: bridge: mcast: don't delete permanent entries when fast leave is enabled
   639239be11ad net: bridge: delete local fdb on device init failure
   b3645a487373 mvpp2: refactor MTU change code
   ffab47bf69df mvpp2: fix panic on module removal
   3c46905fb182 mlxsw: spectrum: Fix error path in mlxsw_sp_module_init()
   f186fb5ccf69 ipip: validate header length in ipip_tunnel_xmit
   1bb2dd37cb87 ip6_tunnel: fix possible use-after-free on xmit
   fdcefa46c5c2 ip6_gre: reload ipv6h in prepare_ip6gre_xmit_ipv6
   c4c8899376c2 ife: error out when nla attributes are empty
   774358df88f7 bnx2x: Disable multi-cos feature.
   cb4626784f39 atm: iphase: Fix Spectre v1 vulnerability
   8440cdc77577 IB: directly cast the sockaddr union to aockaddr
   608cfdfa9eb7 HID: Add quirk for HP X1200 PIXART OEM mouse
   e830c2c3c174 HID: wacom: fix bit shift for Cintiq Companion 2
   2364ed0d8ed1 libnvdimm/bus: Fix wait_nvdimm_bus_probe_idle() ABBA deadlock
   7f000e7b4490 libnvdimm/bus: Prepare the nd_ioctl() path to be re-entrant
   3248536919c1 libnvdimm/region: Register badblocks before namespaces
   d16bbdbbcb50 libnvdimm/bus: Prevent duplicate device_unregister() calls
   c23106d4276d drivers/base: Introduce kill_device()
   7c43f84efd6d driver core: Establish order of operations for device_add and device_del via bitflag
   a152a7b411a5 gcc-9: don't warn about uninitialized variable
   93d6f0841eef scsi: fcoe: Embed fc_rport_priv in fcoe_rport structure
   cc4c818b2219 Linux 4.19.65
   7634b9cd27e8 Documentation: Add swapgs description to the Spectre v1 documentation
   b88241aef6f1 x86/speculation/swapgs: Exclude ATOMs from speculation through SWAPGS
   931b6bfe8af1 x86/entry/64: Use JMP instead of JMPQ
   23e7a7b3a75f x86/speculation: Enable Spectre v1 swapgs mitigations
   befb822c062b x86/speculation: Prepare entry code for Spectre v1 swapgs mitigations
   b5dd7f61fce4 x86/cpufeatures: Combine word 11 and 12 into a new scattered features word
   16ad0b63f382 x86/cpufeatures: Carve out CQM features retrieval
   9e034c61951a scsi: mpt3sas: Use 63-bit DMA addressing on SAS35 HBA
   3732a473be54 x86/vdso: Prevent segfaults due to hoisted vclock reads
   8320768d26aa gcc-9: properly declare the {pv,hv}clock_page storage
   354887ae3168 objtool: Support GCC 9 cold subfunction naming scheme
   89f3896b658b ARC: enable uboot support unconditionally
   8dd376273fb4 eeprom: at24: make spd world-readable again
   a7340d31abac drm/i915/gvt: fix incorrect cache entry for guest page mapping
   a1c020ce2669 IB/hfi1: Check for error on call to alloc_rsm_map_table
   e9cd4962a85b IB/mlx5: Fix RSS Toeplitz setup to be aligned with the HW specification
   924308d2a6ea IB/mlx5: Fix clean_mr() to work in the expected order
   7e5ce9f3943c IB/mlx5: Move MRs to a kernel PD when freeing them to the MR cache
   3cfa1087a172 IB/mlx5: Use direct mkey destroy command upon UMR unreg failure
   41be1928053a IB/mlx5: Fix unreg_umr to ignore the mkey state
   04fdca1f2f65 xen/swiotlb: fix condition for calling xen_destroy_contiguous_region()
   eb828241b491 nbd: replace kill_bdev() with __invalidate_device() again
   8dfef0f442c7 arm64: cpufeature: Fix feature comparison for CTR_EL0.{CWG,ERG}
   2bddc985656a arm64: compat: Allow single-byte watchpoints on all addresses
   c385cda0e70a drivers/perf: arm_pmu: Fix failure path in PM notifier
   5f80ac50b98c parisc: Fix build of compressed kernel even with debug enabled
   001f93d95d6c cgroup: kselftest: relax fs_spec checks
   6cb9e0d9ad3e s390/dasd: fix endless loop after read unit address configuration
   beb0cc781b8e mm: vmscan: check if mem cgroup is disabled or not before calling memcg slab shrinker
   72651bbdf3d5 ALSA: hda: Fix 1-minute detection delay when i915 module is not available
   46650ac2e1d8 selinux: fix memory leak in policydb_init()
   e7bb4c81b3c7 mtd: rawnand: micron: handle on-die "ECC-off" devices correctly
   fafaeae4d356 IB/hfi1: Fix Spectre v1 vulnerability
   fdb0fb56addb gpiolib: fix incorrect IRQ requesting of an active-low lineevent
   7e3efb655012 mmc: meson-mx-sdio: Fix misuse of GENMASK macro
   29841b5c6ab1 mmc: dw_mmc: Fix occasional hang after tuning on eMMC
   50d700408a00 Btrfs: fix race leading to fs corruption after transaction abort
   009d7a4eb329 Btrfs: fix incremental send failure after deduplication
   4c5a442561e8 kbuild: initialize CLANG_FLAGS correctly in the top Makefile
   3736612d2582 kconfig: Clear "written" flag to avoid data loss
   4c6500b5328f drm/nouveau: fix memory leak in nouveau_conn_reset()
   84ce045222e9 x86, boot: Remove multiple copy of static function sanitize_boot_params()
   740e0167a382 x86/paravirt: Fix callee-saved function ELF sizes
   ba5c072fbf8b x86/kvm: Don't call kvm_spurious_fault() from .fixup
   11cb9f8700c9 xen/pv: Fix a boot up hang revealed by int3 self test
   d3e36788d9be mlxsw: spectrum_dcb: Configure DSCP map as the last rule is removed
   48c5c4f0a47f ipc/mqueue.c: only perform resource calculation if user valid
   f87314225294 drivers/rapidio/devices/rio_mport_cdev.c: NUL terminate some strings
   35ee8b844845 uapi linux/coda_psdev.h: move upc_req definition from uapi to kernel side headers
   dea2ee496a85 coda: fix build using bare-metal toolchain
   cf3ddc00a47d coda: add error handling for fget
   93b83005ea87 lib/test_string.c: avoid masking memset16/32/64 failures
   8e087a2abaf8 lib/test_overflow.c: avoid tainting the kernel and fix wrap size
   439c79ed7718 mm/cma.c: fail if fixed declaration can't be honored
   1b84e67496d3 x86: math-emu: Hide clang warnings for 16-bit overflow
   242666b2b7e2 x86/apic: Silence -Wtype-limits compiler warnings
   ade866ad5aed be2net: Signal that the device cannot transmit during reconfiguration
   c0cca0e97ce4 ACPI: fix false-positive -Wuninitialized warning
   80f58147da0f x86: kvm: avoid constant-conversion warning
   d60e8c0cbccb perf version: Fix segfault due to missing OPT_END()
   abfe761a5358 scsi: zfcp: fix GCC compiler warning emitted with -Wmaybe-uninitialized
   d5568763dd1d ACPI: blacklist: fix clang warning for unused DMI table
   c47e25526071 ceph: return -ERANGE if virtual xattr value didn't fit in buffer
   b39c377ea08f ceph: fix improper use of smp_mb__before_atomic()
   d29fbf677963 cifs: Fix a race condition with cifs_echo_request
   f96c70fa810d btrfs: qgroup: Don't hold qgroup_ioctl_lock in btrfs_qgroup_inherit()
   d9245dabfce1 btrfs: fix minimum number of chunk errors for DUP
   e7fcc587e076 clk: sprd: Add check for return value of sprd_clk_regmap_init()
   a093208b4c73 fs/adfs: super: fix use-after-free bug
   85d854b42113 clk: tegra210: fix PLLU and PLLU_OUT1
   cf0fcc7fe200 dmaengine: rcar-dmac: Reject zero-length slave DMA requests
   a3524486535a MIPS: lantiq: Fix bitfield masking
   cdee3f53510a firmware/psci: psci_checker: Park kthreads before stopping them
   09ec6c6783ff kernel/module.c: Only return -EEXIST for modules that have finished loading
   fd53e45a11e9 arm64: dts: rockchip: fix isp iommu clocks and power domain
   d8388cbd4327 dmaengine: tegra-apb: Error out if DMA_PREP_INTERRUPT flag is unset
   f486088d38ec ftrace: Enable trampoline when rec count returns back to one
   ea26b427cb91 ARM: dts: rockchip: Mark that the rk3288 timer might stop in suspend
   22befe671728 ARM: dts: rockchip: Make rk3288-veyron-mickey's emmc work again
   8c5a33d34be6 ARM: dts: rockchip: Make rk3288-veyron-minnie run at hs200
   3c1d1bad8a57 ARM: riscpc: fix DMA
   b3060a1a313f Linux 4.19.64
   4736bb277744 ip_tunnel: allow not to count pkts on tstats by setting skb's dev to NULL
   475f7781a804 scsi: core: Avoid that a kernel warning appears during system resume
   c58a6507363b block, scsi: Change the preempt-only flag into a counter
   9b17512d9165 ceph: hold i_ceph_lock when removing caps for freeing inode
   b6c3b6a2c662 Fix allyesconfig output.
   135e7737e21f drivers/pps/pps.c: clear offset flags in PPS_SETPARAMS ioctl
   54695343b491 /proc/<pid>/cmdline: add back the setproctitle() special case
   54ffaa53e785 /proc/<pid>/cmdline: remove all the special cases
   a5a3915f17ab sched/fair: Use RCU accessors consistently for ->numa_group
   48046e092ad5 sched/fair: Don't free p->numa_faults with concurrent readers
   02cdc166128c vhost: scsi: add weight support
   239910101c4e vhost: vsock: add weight support
   3af3b843aee4 vhost_net: fix possible infinite loop
   ad5fc8953d61 vhost: introduce vhost_exceeds_weight()
   56966212e23f Bluetooth: hci_uart: check for missing tty operations
   3a0c22cbc5d0 iommu/iova: Fix compilation error with !CONFIG_IOMMU_IOVA
   4fd0eb60bad1 iommu/vt-d: Don't queue_iova() if there is no flush queue
   b3836af8560e media: radio-raremono: change devm_k*alloc to k*alloc
   afb5340f9438 NFS: Cleanup if nfs_match_client is interrupted
   8edcabb2c2e9 media: pvrusb2: use a different format for warnings
   8b44cc225e60 media: cpia2_usb: first wake up, then free in disconnect
   693019ee7d98 ath10k: Change the warning message string
   3cf6a0707088 media: au0828: fix null dereference in error path
   f13ee5ae0b2f ISDN: hfcsusb: checking idx of ep configuration
   22068d49d09d binder: fix possible UAF when freeing buffer
   ba2c247a4515 arm64: compat: Provide definition for COMPAT_SIGMINSTKSZ
   b544a6855dfb usb: dwc2: Fix disable all EP's on disconnect
   ec58bfa2d412 usb: dwc2: Disable all EP's on disconnect
   9e441c7844a6 NFSv4: Fix lookup revalidate of regular files
   24acd93f5995 NFS: Refactor nfs_lookup_revalidate()
   01eea1cbba9d NFS: Fix dentry revalidation on NFSv4 lookup
   8a474bc4e613 vsock: correct removal of socket from the list
   9d3586bcdae3 hv_sock: Add support for delayed close
   9a9de33a9dfa Linux 4.19.63
   408af82309a7 access: avoid the RCU grace period for the temporary subjective credentials
   1a547d24ec8a libnvdimm/bus: Stop holding nvdimm_bus_list_mutex over __nd_ioctl()
   b993a66d8ddc powerpc/tm: Fix oops on sigreturn on systems without TM
   b9310c56fcfb powerpc/xive: Fix loop exit-condition in xive_find_target_in_mask()
   c219444254cf ALSA: hda - Add a conexant codec entry to let mute led work
   491483ed70f1 ALSA: line6: Fix wrong altsetting for LINE6_PODHD500_1
   602744097b2e ALSA: ac97: Fix double free of ac97_codec_device
   9845fb5a3f90 hpet: Fix division by zero in hpet_time_div()
   e4c91583b39c mei: me: add mule creek canyon (EHL) device ids
   3d0a6926e610 fpga-manager: altera-ps-spi: Fix build error
   e907b1314481 binder: prevent transactions to context manager from its own process.
   7d20e3ba7072 x86/speculation/mds: Apply more accurate check on hypervisor platform
   5e87e8b4dc0c x86/sysfb_efi: Add quirks for some devices with swapped width and height
   e3dc9ea5464e btrfs: inode: Don't compress if NODATASUM or NODATACOW set
   1f37bec82f41 usb: pci-quirks: Correct AMD PLL quirk detection
   41d3dbb931c0 usb: wusbcore: fix unbalanced get/put cluster_id
   148959cc64e1 locking/lockdep: Hide unused 'class' variable
   b07687243d4a mm: use down_read_killable for locking mmap_sem in access_remote_vm
   4acb04ef5e42 locking/lockdep: Fix lock used or unused stats error
   af0883f9dcf6 proc: use down_read_killable mmap_sem for /proc/pid/maps
   0d72bb853afc cxgb4: reduce kernel stack usage in cudbg_collect_mem_region()
   6ecdcbcd3091 proc: use down_read_killable mmap_sem for /proc/pid/map_files
   3d617da8a956 proc: use down_read_killable mmap_sem for /proc/pid/clear_refs
   42beb7b3d446 proc: use down_read_killable mmap_sem for /proc/pid/pagemap
   1b3042d0d32b proc: use down_read_killable mmap_sem for /proc/pid/smaps_rollup
   a8c568fc4832 mm/mmu_notifier: use hlist_add_head_rcu()
   3062448e3ee2 memcg, fsnotify: no oom-kill for remote memcg charging
   041b127df733 mm/gup.c: remove some BUG_ONs from get_gate_page()
   fa099d6ddf68 mm/gup.c: mark undo_dev_pagemap as __maybe_unused
   8be4a30e2d34 9p: pass the correct prototype to read_cache_page
   071f2135cfec mm/kmemleak.c: fix check for softirq context
   7bd5902a1e18 sh: prevent warnings when using iounmap
   af50d6a1c245 block/bio-integrity: fix a memory leak bug
   7f775a67abe4 powerpc/eeh: Handle hugepages in ioremap space
   e7a41b276974 dlm: check if workqueues are NULL before flushing/destroying
   5d59e28c3d1b mailbox: handle failed named mailbox channel request
   2140a6b03a61 f2fs: avoid out-of-range memory access
   8a1a3d383923 block: init flush rq ref count to 1
   4b9dc73a0d4a powerpc/boot: add {get, put}_unaligned_be32 to xz_config.h
   549f726fb094 PCI: dwc: pci-dra7xx: Fix compilation when !CONFIG_GPIOLIB
   367cc371a8e3 RDMA/rxe: Fill in wc byte_len with IB_WC_RECV_RDMA_WITH_IMM
   4fe7ea29e4a6 perf hists browser: Fix potential NULL pointer dereference found by the smatch tool
   915945f3bdc2 perf annotate: Fix dereferencing freed memory found by the smatch tool
   b305dcff1518 perf session: Fix potential NULL pointer dereference found by the smatch tool
   19cf571c64b7 perf top: Fix potential NULL pointer dereference detected by the smatch tool
   995527db41f6 perf stat: Fix use-after-freed pointer detected by the smatch tool
   3b8c4eae5541 perf test mmap-thread-lookup: Initialize variable to suppress memory sanitizer warning
   dd0a0c72a10f PCI: mobiveil: Use the 1st inbound window for MEM inbound transactions
   270972df68fb PCI: mobiveil: Initialize Primary/Secondary/Subordinate bus numbers
   9eb4f2886db3 kallsyms: exclude kasan local symbols on s390
   4613f46ef472 PCI: mobiveil: Fix the Class Code field
   51308ec525cc PCI: mobiveil: Fix PCI base address in MEM/IO outbound windows
   05959ed85e34 arm64: assembler: Switch ESB-instruction with a vanilla nop if !ARM64_HAS_RAS
   007b01a27d4d IB/ipoib: Add child to parent list only if device initialized
   d48720bafd90 powerpc/mm: Handle page table allocation failures
   f14537bb81d1 IB/mlx5: Fixed reporting counters on 2nd port for Dual port RoCE
   d03aeb8d6b98 serial: sh-sci: Fix TX DMA buffer flushing and workqueue races
   48c73b8ee5c9 serial: sh-sci: Terminate TX DMA during buffer flushing
   ca730bf0cd67 RDMA/i40iw: Set queue pair state when being queried
   52373ab6a6c7 powerpc/4xx/uic: clear pending interrupt after irq type/pol change
   74520144700d um: Silence lockdep complaint about mmap_sem
   30edc7c1fed5 mm/swap: fix release_pages() when releasing devmap pages
   b4e77006d5a7 mfd: hi655x-pmic: Fix missing return value check for devm_regmap_init_mmio_clk
   9b1691c3f660 mfd: arizona: Fix undefined behavior
   d9c74176c275 mfd: core: Set fwnode for created devices
   7b24a4a363a9 mfd: madera: Add missing of table registration
   e00cf1dac30c recordmcount: Fix spurious mcount entries on powerpc
   9fac39480e39 powerpc/xmon: Fix disabling tracing while in xmon
   a80f67d5560c powerpc/cacheflush: fix variable set but not used
   b150423e0d5e iio: iio-utils: Fix possible incorrect mask calculation
   fc9c15c4e3ff PCI: xilinx-nwl: Fix Multi MSI data programming
   e3e2bb12c8a7 genksyms: Teach parser about 128-bit built-in types
   27f2335e1440 kbuild: Add -Werror=unknown-warning-option to CLANG_FLAGS
   1fa94381fdeb i2c: stm32f7: fix the get_irq error cases
   f930727faef2 PCI: sysfs: Ignore lockdep for remove attribute
   9d45fbee76af serial: mctrl_gpio: Check if GPIO property exisits before requesting it
   e7f206f42fb6 drm/msm: Depopulate platform on probe failure
   216462fa884f powerpc/pci/of: Fix OF flags parsing for 64bit BARs
   5d3ad905af43 mmc: sdhci: sdhci-pci-o2micro: Check if controller supports 8-bit width
   bf7cf9fb02db usb: gadget: Zero ffs_io_data
   ac380eb479de tty: serial_core: Set port active bit in uart_port_activate
   785e11c06db3 serial: imx: fix locking in set_termios()
   741f8b39b6d4 drm/rockchip: Properly adjust to a true clock in adjusted_mode
   fd0d171c7064 powerpc/pseries/mobility: prevent cpu hotplug during DT update
   6a7047471073 drm/amd/display: fix compilation error
   709ca46f1d46 phy: renesas: rcar-gen2: Fix memory leak at error paths
   725c7b781150 drm/virtio: Add memory barriers for capset cache.
   11b4e9f3695c drm/amd/display: Always allocate initial connector state state
   1a2425b597fa serial: 8250: Fix TX interrupt handling condition
   a0e7d6b7fa55 tty: serial: msm_serial: avoid system lockup condition
   e40f5a873fc7 tty/serial: digicolor: Fix digicolor-usart already registered warning
   5c0e54839d48 memstick: Fix error cleanup path of memstick_init
   0a50a272389f drm/crc-debugfs: Also sprinkle irqrestore over early exits
   26a66454541c drm/crc-debugfs: User irqsafe spinlock in drm_crtc_add_crc_entry
   4d14323a2eb5 gpu: host1x: Increase maximum DMA segment size
   f9bfd6bd8223 drm/bridge: sii902x: pixel clock unit is 10kHz instead of 1kHz
   7af9abd7d6bd drm/bridge: tc358767: read display_props in get_modes()
   49c7230d8f10 PCI: Return error if cannot probe VF
   2a18d76592e0 drm/edid: Fix a missing-check bug in drm_load_edid_firmware()
   210dfe630911 drm/amdkfd: Fix sdma queue map issue
   db64bc139440 drm/amdkfd: Fix a potential memory leak
   6b1d2871fe36 drm/amd/display: Disable ABM before destroy ABM struct
   c242a531bb06 drm/amdgpu/sriov: Need to initialize the HDP_NONSURFACE_BAStE
   147137f86b5b drm/amd/display: Fill prescale_params->scale for RGB565
   08b0bcc8076b tty: serial: cpm_uart - fix init when SMC is relocated
   c901780d9294 pinctrl: rockchip: fix leaked of_node references
   a9dfb6e43677 tty: max310x: Fix invalid baudrate divisors calculator
   b0084c1b5058 usb: core: hub: Disable hub-initiated U1/U2
   19755a124f4c staging: vt6656: use meaningful error code during buffer allocation
   b59f7650a507 iio: adc: stm32-dfsdm: missing error case during probe
   302e4cdca1f4 iio: adc: stm32-dfsdm: manage the get_irq error case
   586946ce83e4 drm/panel: simple: Fix panel_simple_dsi_probe
   49fb03de361d hvsock: fix epollout hang from race condition
   64f4694072aa Linux 4.19.62
   60e9babfda94 net: sched: verify that q!=NULL before setting q->flags
   c1d98b766ebe mm: vmscan: scan anonymous pages on file refaults
   7560e33369ed KVM: nVMX: Clear pending KVM_REQ_GET_VMCS12_PAGES when leaving nested
   967bc679c596 KVM: nVMX: do not use dangling shadow VMCS after guest reset
   3a17ca864baf ext4: allow directory holes
   caa4e08253eb ext4: use jbd2_inode dirty range scoping
   af3812b65c37 jbd2: introduce jbd2_inode dirty range scoping
   4becd6c11e9a mm: add filemap_fdatawait_range_keep_errors()
   c9ea4620a37f ext4: enforce the immutable flag on open files
   29171e82348c ext4: don't allow any modifications to an immutable file
   4a5cc64d8a8a perf/core: Fix race between close() and fork()
   75100ec5f079 perf/core: Fix exclusive events' grouping
   0e6ef184315d MIPS: lb60: Fix pin mappings
   dd5994ab1f00 gpio: davinci: silence error prints in case of EPROBE_DEFER
   c947cf3e9583 dma-buf: Discard old fence_excl on retrying get_fences_rcu for realloc
   95ee55cab118 dma-buf: balance refcount inbalance
   b72fb8dec183 net: bridge: stp: don't cache eth dest pointer before skb pull
   78701843ecc4 net: bridge: don't cache ether dest pointer on input
   41a8df71809e net: bridge: mcast: fix stale ipv6 hdr pointer when handling v6 query
   caf4488fc06e net: bridge: mcast: fix stale nsrcs pointer in igmp3/mld2 report handling
   bc9a2f36a7d6 sctp: not bind the socket in sctp_connect
   fde351aeff4a net/tls: make sure offload also gets the keys wiped
   d9571a9f5ec1 net_sched: unset TCQ_F_CAN_BYPASS when adding filters
   69cd58454615 netrom: hold sock when setting skb->destructor
   dc59a2abd33e netrom: fix a memory leak in nr_rx_frame()
   0c5cb5a12623 macsec: fix checksumming after decryption
   21252f49cddf macsec: fix use-after-free of skb during RX
   a8ba53da071e net/mlx5e: IPoIB, Add error path in mlx5_rdma_setup_rn
   a2aa162a6331 vrf: make sure skb->data contains ip header to make routing
   1b200acde418 tcp: Reset bytes_acked and bytes_received when disconnecting
   c60f57dfe995 tcp: fix tcp_set_congestion_control() use from bpf hook
   6323c238bb43 tcp: be more careful in tcp_fragment()
   b640ade07295 sky2: Disable MSI on ASUS P6T
   d9ee5afd9165 sctp: fix error handling on stream scheduler initialization
   bfa7913575b7 rxrpc: Fix send on a connected, but unbound socket
   3e4e6b71ece0 r8169: fix issue with confused RX unit after PHY power-down on RTL8411b
   97739e5c9e73 nfc: fix potential illegal memory access
   f47f68cc9d33 net: stmmac: Re-work the queue selection for TSO packets
   201d7d62a82a net: phy: sfp: hwmon: Fix scaling of RX power
   c60bce64615d net: openvswitch: fix csum updates for MPLS actions
   257441a07201 net: neigh: fix multiple neigh timer scheduling
   832d0ea751a8 net: make skb_dst_force return true when dst is refcounted
   6ab30a4cc5c6 net: dsa: mv88e6xxx: wait after reset deactivation
   5832ef4afd90 net: bcmgenet: use promisc for unsupported filters
   c0f4a6447977 ipv6: Unlink sibling route in case of failure
   0bd84505f16f ipv6: rt6_check should return NULL if 'from' is NULL
   47ce442783d7 ipv4: don't set IPv6 only flags to IPv4 addresses
   aee5dd00341b igmp: fix memory leak in igmpv3_del_delrec()
   9770fe1b202f hv_netvsc: Fix extra rcu_read_unlock in netvsc_recv_callback()
   d7cdac6dc418 caif-hsi: fix possible deadlock in cfhsi_exit_module()
   8fb37be12046 bnx2x: Prevent load reordering in tx completion processing
   7250956f6eaf Linux 4.19.61
   025eb12bb4b0 dm bufio: fix deadlock with loop device
   404f59e265ac dt-bindings: allow up to four clocks for orion-mdio
   03e6a668ea1f net: mvmdio: allow up to four clocks to be specified for orion-mdio
   dd87cc633ba5 blkcg: update blkcg_print_stat() to handle larger outputs
   73efdc5d7d3b blk-iolatency: clear use_delay when io.latency is set to zero
   1ab644bd02ab blk-throttle: fix zero wait time for iops throttled group
   91da712ff592 usb: Handle USB3 remote wakeup for LPM enabled devices correctly
   152ddf9f0458 Bluetooth: Add SMP workaround Microsoft Surface Precision Mouse bug
   98318cd31b95 intel_th: msu: Fix single mode with disabled IOMMU
   d6328d7c1a71 mtd: spinand: read returns badly if the last page has bitflips
   94f1db42a968 mtd: rawnand: mtk: Correct low level time calculation of r/w cycle
   30c6b34759f6 eCryptfs: fix a couple type promotion bugs
   92e23f5fc049 mmc: sdhci-msm: fix mutex while in spinlock
   01982f7bcc9d powerpc/pseries: Fix oops in hotplug memory notifier
   e725502b8548 powerpc/powernv/npu: Fix reference leak
   1e3b61cbc30d powerpc/watchpoint: Restore NV GPRs while returning from exception
   237ac0d73b55 powerpc/32s: fix suspend/resume when IBATs 4-7 are used
   7961981718d6 parisc: Fix kernel panic due invalid values in IAOQ0 or IAOQ1
   a6a0daa775e8 parisc: Ensure userspace privilege for ptraced processes in regset functions
   ef5c2e165ab0 crypto: caam - limit output IV to CBC to work around CTR mode DMA issue
   376b80276d84 gpu: ipu-v3: ipu-ic: Fix saturation bit offset in TPMEM
   ef30c0739439 xfs: abort unaligned nowait directio early
   669c867972c0 xfs: serialize unaligned dio writes against all other dio writes
   d61d885b17b0 xfs: fix reporting supported extra file attributes for statx()
   f614ef7a34b0 xfs: reserve blocks for ifree transaction during log recovery
   424543a53ae0 xfs: don't ever put nlink > 0 inodes on the unlinked list
   3a895cc066c0 xfs: rename m_inotbt_nores to m_finobt_nores
   2ab62234e823 xfs: don't overflow xattr listent buffer
   1dc8b13cc66d xfs: flush removing page cache in xfs_reflink_remap_prep
   788920d12b95 xfs: fix pagecache truncation prior to reflink
   41f64437f030 include/asm-generic/bug.h: fix "cut here" for WARN_ON for __WARN_TAINT architectures
   afa3e571cde3 coda: pass the host file in vma->vm_file on mmap
   2c0222b48e77 libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields
   656d06dab4d6 HID: wacom: correct touch resolution x/y typo
   1c871b4006b2 HID: wacom: generic: Correct pad syncing
   46f71a15abe7 HID: wacom: generic: only switch the mode on devices with LEDs
   cb4c2b94f629 IB/mlx5: Report correctly tag matching rendezvous capability
   4bd953241d81 Btrfs: add missing inode version, ctime and mtime updates when punching hole
   fffedf5cf67e Btrfs: fix fsync not persisting dentry deletions due to inode evictions
   110850fffeb0 Btrfs: fix data loss after inode eviction, renaming it, and fsync it
   6b71c62ea9da PCI: qcom: Ensure that PERST is asserted for at least 100 ms
   529e71cae929 PCI: Do not poll for PME if the device is in D3cold
   4d8504004c86 PCI: hv: Fix a use-after-free bug in hv_eject_device_work()
   f0ff76a42ef5 intel_th: pci: Add Ice Lake NNPI support
   66a13b5e4e9c drm/edid: parse CEA blocks embedded in DisplayID
   9854e06842bc perf/x86/amd/uncore: Set the thread mask for F17h L3 PMCs
   82c46f7b0918 perf/x86/amd/uncore: Do not set 'ThreadMask' and 'SliceMask' for non-L3 PMCs
   a847a5225432 perf/x86/intel: Fix spurious NMI on fixed counter
   0d4c0bb70665 x86/boot: Fix memory leak in default_get_smp_config()
   b52807e607f1 9p/virtio: Add cleanup path in p9_virtio_init
   1253882d64d0 9p/xen: Add cleanup path in p9_trans_xen_init
   007e5aaf287c xen/events: fix binding user event channels to cpus
   e380170b3b3a dm zoned: fix zone state management race
   1e4247d7958b padata: use smp_mb in padata_reorder to avoid orphaned padata jobs
   0489d808a5f2 drm/nouveau/i2c: Enable i2c pads & busses during preinit
   c77cbc873586 kconfig: fix missing choice values in auto.conf
   2c7b50c7b1d0 fs/proc/proc_sysctl.c: fix the default values of i_uid/i_gid on /proc/sys inodes.
   ba271659ad42 arm64: tegra: Fix AGIC register range
   ba27a25df6df KVM: x86/vPMU: refine kvm_pmu err msg when event creation failed
   87bae91a0fe9 media: videobuf2-dma-sg: Prevent size from overflowing
   cb2e2b0ae554 media: videobuf2-core: Prevent size alignment wrapping buffer size to 0
   deb78bd24e0c media: coda: Remove unbalanced and unneeded mutex unlock
   fc0232e24541 media: v4l2: Test type instead of cfg->type in v4l2_ctrl_new_custom()
   a4c4c06f1755 ALSA: hda/realtek: apply ALC891 headset fixup to one Dell machine
   8ba78e4d564e ALSA: hda/realtek - Fixed Headphone Mic can't record on Dell platform
   c92212a81617 ALSA: seq: Break too long mutex context in the write loop
   eb6c84e4b4f2 raid5-cache: Need to do start() part job after adding journal device
   3f42c0000b23 ASoC: dapm: Adapt for debugfs API change
   677b2aa3be5c lib/scatterlist: Fix mapping iterator when sg->offset is greater than PAGE_SIZE
   0b174bac4e43 pnfs: Fix a problem where we gratuitously start doing I/O through the MDS
   f64ff5914f00 pNFS: Fix a typo in pnfs_update_layout
   603e7497bf27 pnfs/flexfiles: Fix PTR_ERR() dereferences in ff_layout_track_ds_error
   5347e61954fc NFSv4: Handle the special Linux file open access mode
   6825ff011c7c iwlwifi: fix RF-Kill interrupt while FW load for gen2 devices
   a32e2ceca0ef iwlwifi: don't WARN when calling iwl_get_shared_mem_conf with RF-Kill
   d9ce0788da91 iwlwifi: pcie: fix ALIVE interrupt handling for gen2 devices w/o MSI-X
   04c52c105a38 iwlwifi: pcie: don't service an interrupt that was masked
   7ebddd5fe217 arm64: tegra: Update Jetson TX1 GPU regulator timings
   042451b921b1 regulator: s2mps11: Fix buck7 and buck8 wrong voltages
   8da63aa46e26 Input: alps - fix a mismatch between a condition check and its comment
   81368a9a98d9 Input: synaptics - whitelist Lenovo T580 SMBus intertouch
   cfb9250619c8 Input: alps - don't handle ALPS cs19 trackpoint-only device
   d657077eda7b Input: gtco - bounds check collection indent level
   f11ba9df8eed bcache: destroy dc->writeback_write_wq if failed to create dc->writeback_thread
   2ab14861d2eb bcache: fix mistaken sysfs entry for io_error counter
   3c466df8fc59 bcache: ignore read-ahead request failure on backing device
   4fc48cd21a31 bcache: Revert "bcache: free heap cache_set->flush_btree in bch_journal_free"
   ab966241d59a bcache: Revert "bcache: fix high CPU occupancy during journal"
   58169c189bd6 Revert "bcache: set CACHE_SET_IO_DISABLE in bch_cached_dev_error()"
   c3b7d27f3746 crypto: crypto4xx - fix a potential double free in ppc4xx_trng_probe
   a9fd1795fee6 crypto: ccp/gcm - use const time tag comparison.
   561c4424f1e3 crypto: ccp - memset structure fields to zero before reuse
   13805a5df489 crypto: crypto4xx - block ciphers should only accept complete blocks
   17e63172d536 crypto: crypto4xx - fix blocksize for cfb and ofb
   4598094d24c7 crypto: crypto4xx - fix AES CTR blocksize value
   1c9b0a766513 crypto: chacha20poly1305 - fix atomic sleep when using async algorithm
   eb99c084da28 crypto: arm64/sha2-ce - correct digest for empty data in finup
   4230e09e61e6 crypto: arm64/sha1-ce - correct digest for empty data in finup
   52f07c1ac70e crypto: ccp - Validate the the error value used to index error messages
   bed97f646997 crypto: ghash - fix unaligned memory access in ghash_setkey()
   ce7ec07abaf7 scsi: mac_scsi: Fix pseudo DMA implementation, take 2
   de769c762626 scsi: mac_scsi: Increase PIO/PDMA transfer length threshold
   3e9534fa5046 scsi: megaraid_sas: Fix calculation of target ID
   1334a3e2d6d0 scsi: core: Fix race on creating sense cache
   58f59f6072ab Revert "scsi: ncr5380: Increase register polling limit"
   7cfded7a705c scsi: NCR5380: Always re-enable reselection interrupt
   d91baba81a6e scsi: NCR5380: Reduce goto statements in NCR5380_select()
   e73db096691e xen: let alloc_xenballooned_pages() fail if not enough memory free
   ff54c44f1038 floppy: fix out-of-bounds read in copy_buffer
   a9444d9d0f6f floppy: fix invalid pointer dereference in drive_name
   5b565f3276f3 floppy: fix out-of-bounds read in next_valid_format
   6e34fd07484a floppy: fix div-by-zero in setup_format_params
   7c16c5eae41a iavf: fix dereference of null rx_buffer pointer
   e9896b29d010 net: mvmdio: defer probe of orion-mdio if a clock is not ready
   5f6c5f5ae25e gtp: fix use-after-free in gtp_newlink()
   141222216438 gtp: fix use-after-free in gtp_encap_destroy()
   0a5eca2c949c gtp: fix Illegal context switch in RCU read-side critical section.
   e117a04133c6 gtp: fix suspicious RCU usage
   202de90df2b7 Bluetooth: validate BLE connection interval updates
   ca33af18b5fc gtp: add missing gtp_encap_disable_sock() in gtp_encap_enable()
   0fdb922d0ef0 Bluetooth: Check state in l2cap_disconnect_rsp
   3b57b7a3a82a perf tests: Fix record+probe_libc_inet_pton.sh for powerpc64
   c814f618b799 Bluetooth: 6lowpan: search for destination address in all peers
   c82c4910e9e6 Bluetooth: Add new 13d3:3501 QCA_ROME device
   1cbce19bd697 Bluetooth: Add new 13d3:3491 QCA_ROME device
   578658df21d5 Bluetooth: hci_bcsp: Fix memory leak in rx_skb
   9d47bd217539 tools: bpftool: Fix json dump crash on powerpc
   2ad04d31bb3e gpiolib: Fix references to gpiod_[gs]et_*value_cansleep() variants
   157d1c7a1a00 bonding: validate ip header before check IPPROTO_IGMP
   88f751b066f2 selftests: bpf: fix inlines in test_lwt_seg6local
   ef5b204336b3 bpf, libbpf, smatch: Fix potential NULL pointer dereference
   0f2f2cebe64d rxrpc: Fix oops in tracepoint
   ca37b9a74689 net: usb: asix: init MAC address buffers
   51216937c319 bnx2x: Prevent ptp_task to be rescheduled indefinitely
   e358d2ab42f8 perf stat: Fix group lookup for metric group
   a64e018be77a perf stat: Make metric event lookup more robust
   7343178ccf7d bpf: fix uapi bpf_prog_info fields alignment
   af3790a46a55 iwlwifi: mvm: Drop large non sta frames
   036184af23e0 igb: clear out skb->tstamp after reading the txtime
   0024b12b776c net: mvpp2: prs: Don't override the sign bit in SRAM parser shift
   05592b9b7f25 ath10k: destroy sdio workqueue while remove sdio module
   26d86b29e806 net: hns3: add some error checking in hclge_tm module
   ddfdbcccd71a net: hns3: fix a -Wformat-nonliteral compile warning
   95d084809495 bcache: fix potential deadlock in cached_def_free()
   4b7758e9c4ed bcache: check c->gc_thread by IS_ERR_OR_NULL in cache_set_flush()
   81b88c05bc45 bcache: acquire bch_register_lock later in cached_dev_free()
   d81080a0bcf8 bcache: check CACHE_SET_IO_DISABLE bit in bch_journal()
   57cfb755c356 bcache: check CACHE_SET_IO_DISABLE in allocator code
   e78d1d234469 EDAC: Fix global-out-of-bounds write when setting edac_mc_poll_msec
   e54cc89e6f0a wil6210: drop old event after wmi_call timeout
   0388597d0627 crypto: asymmetric_keys - select CRYPTO_HASH where needed
   1dea395c9e12 crypto: serpent - mark __serpent_setkey_sbox noinline
   b346070c72cd ixgbe: Check DDM existence in transceiver before access
   0340c621eca8 rslib: Fix handling of of caller provided syndrome
   8ba93c59441a rslib: Fix decoding of shortened codes
   dad0b17e4a4e xsk: Properly terminate assignment in xskq_produce_flush_desc
   e69fac59c493 clocksource/drivers/exynos_mct: Increase priority over ARM arch timer
   12e20eca894b libata: don't request sense data on !ZAC ATA devices
   6e6bc34f8570 ASoC: Intel: hdac_hdmi: Set ops to NULL on remove
   1182ff224847 perf tools: Increase MAX_NR_CPUS and MAX_CACHES
   7201cc227d4a ath10k: fix PCIE device wake up failed
   8a808fadc9f7 ath10k: add missing error handling
   fe2ceeb4cffc ipvs: fix tinfo memory leak in start_sync_thread
   20de38d282b3 mt7601u: fix possible memory leak when the device is disconnected
   033577880135 x86/build: Add 'set -e' to mkcapflags.sh to delete broken capflags.c
   3f7952b275c8 mt7601u: do not schedule rx_tasklet when the device has been disconnected
   6f6e126e1995 rtlwifi: rtl8192cu: fix error handle when usb probe failed
   41864adfee2e net: stmmac: sun8i: force select external PHY when no internal one
   bce037abc29f media: hdpvr: fix locking and a missing msleep
   43b9fdc48377 media: vimc: cap: check v4l2_fill_pixfmt return value
   d562537dbf0d media: coda: increment sequence offset for the last returned frame
   3697c12c4425 media: coda: fix last buffer handling in V4L2_ENC_CMD_STOP
   6fd3e9f65db9 media: coda: fix mpeg2 sequence number handling
   c647c00f28af acpi/arm64: ignore 5.1 FADTs that are reported as 5.0
   b9f547b7bdd9 timer_list: Guard procfs specific code
   d86c0b73f75b ntp: Limit TAI-UTC offset
   8d8f0b9009d0 media: i2c: fix warning same module names
   6439110fbeee media: s5p-mfc: Make additional clocks optional
   57de3c78f0b7 ipvs: defer hook registration to avoid leaks
   06a3cd416224 ipsec: select crypto ciphers for xfrm_algo
   723ba7938492 arm64: Do not enable IRQs for ct_user_exit
   010bfbc93424 lightnvm: pblk: fix freeing of merged pages
   762bba1b7ee7 nvme-pci: set the errno on ctrl state change error
   c876a66553d7 nvme-pci: properly report state change failure in nvme_reset_work
   f0c83dd15ee1 nvme: fix possible io failures when removing multipathed ns
   10cc3a65a55b EDAC/sysfs: Fix memory leak when creating a csrow object
   f6502ce4f050 ACPICA: Clear status of GPEs on first direct enable
   3ae98dc2db1e blk-iolatency: only account submitted bios
   a952f7c384aa x86/cacheinfo: Fix a -Wtype-limits warning
   3252b29ea41b ipoib: correcly show a VF hardware address
   0e2af9b06c00 vhost_net: disable zerocopy by default
   4c57957ed6c8 perf evsel: Make perf_evsel__name() accept a NULL argument
   9e0bcb59b6c0 x86/atomic: Fix smp_mb__{before,after}_atomic()
   dd0260fd1e3a perf/x86/intel/uncore: Handle invalid event coding for free-running counter
   7fc96cd2b0de sched/fair: Fix "runnable_avg_yN_inv" not used warnings
   d8b7db6c5004 sched/core: Add __sched tag for io_schedule()
   930655b01367 xfrm: fix sa selector validation
   b7d66bbc8ad3 blkcg, writeback: dead memcgs shouldn't contribute to writeback ownership arbitration
   c8f75e753784 block: null_blk: fix race condition for null_del_dev
   1a3706d8f800 net: hns3: fix for skb leak when doing selftest
   6a47a42f51cf qed: iWARP - Fix tc for MPA ll2 connection
   670fb965da03 x86/cpufeatures: Add FDP_EXCPTN_ONLY and ZERO_FCS_FDS
   366ae49ed78c rcu: Force inlining of rcu_read_lock()
   1fb3ce14f28d ASoC: meson: axg-tdm: fix sample clock inversion
   32df4043aed4 x86/cpu: Add Ice Lake NNPI to Intel family
   914026d58100 selinux: fix empty write to keycreate file
   10e3788e6575 media: s5p-mfc: fix reading min scratch buffer size on MFC v6/v7
   7c10f8941b95 bpf: silence warning messages in core
   b01bf44c363d regmap: fix bulk writes on paged registers
   544cd592ca72 gpio: omap: ensure irq is enabled before wakeup
   ddeef7a00050 gpio: omap: fix lack of irqstatus_raw0 for OMAP4
   79644b600850 iommu: Fix a leak in iommu_insert_resv_region
   f2a4624be8f3 media: fdp1: Support M3N and E3 platforms
   63e53991d791 media: uvcvideo: Fix access to uninitialized fields on probe error
   c844f4da9b92 irqchip/meson-gpio: Add support for Meson-G12A SoC
   eac8b39d089a perf report: Fix OOM error in TUI mode on s390
   be32a9dc3f62 perf test 6: Fix missing kvm module load for s390
   3662d8bca087 perf cs-etm: Properly set the value of 'old' and 'head' in snapshot mode
   ac510285d40b ipset: Fix memory accounting for hash types on resize
   c7bf2df45044 net: sfp: add mutex to prevent concurrent state checks
   fa4059c5497e RAS/CEC: Fix pfn insertion
   99dcd701465f s390/qdio: handle PENDING state for QEBSM devices
   a76f32cbd38c net: axienet: Fix race condition causing TX hang
   9d643358386d net: fec: Do not use netdev messages too early
   403c43921479 crypto: inside-secure - do not rely on the hardware last bit for result descriptors
   50331c64f3dd net: stmmac: modify default value of tx-frames
   1a0a837afc41 net: stmmac: dwmac4: fix flow control issue
   713737cac327 perf jvmti: Address gcc string overflow warning for strncpy()
   fb83987cbe6b arm64: mm: make CONFIG_ZONE_DMA32 configurable
   c360eb592938 cpupower : frequency-set -r option misses the last cpu in related cpu list
   cac3032062e5 net: hns3: set ops to null when unregister ad_dev
   35407917b0bc media: wl128x: Fix some error handling in fm_v4l2_init_video_device()
   2fbde2746597 locking/lockdep: Fix merging of hlocks with non-zero references
   909034b8ac64 batman-adv: Fix duplicated OGMs on NETDEV_UP
   aa2ad8b6fb2f tua6100: Avoid build warnings.
   9072450736d0 crypto: talitos - Align SEC1 accesses to 32 bits boundaries.
   9d25aedef08f crypto: talitos - properly handle split ICV.
   fc25cfb03ea2 net: phy: Check against net_device being NULL
   ef10d46d04a5 media: staging: media: davinci_vpfe: - Fix for memory leak if decoder initialization fails.
   e36f25627362 media: saa7164: fix remove_proc_entry warning
   ea904c9f6a33 media: mc-device.c: don't memset __user pointer contents
   a6dd4862b98f perf annotate TUI browser: Do not use member from variable within its own initialization
   71b029a5d908 fscrypt: clean up some BUG_ON()s in block encryption/decryption
   2c6acf7478aa xfrm: Fix xfrm sel prefix length validation
   0544b64ceb64 af_key: fix leaks in key_pol_get_resp and dump_sp.
   b397462a010d signal/pid_namespace: Fix reboot_pid_ns to use send_sig not force_sig
   1c8e736115cd qed: Set the doorbell address correctly
   df6680de7a20 net: stmmac: dwmac4/5: Clear unused address entries
   d3969670cb5a net: stmmac: dwmac1000: Clear unused address entries
   810441651a8a media: media_device_enum_links32: clean a reserved field
   6fb470ace862 media: vpss: fix a potential NULL pointer dereference
   70da38e80509 media: marvell-ccic: fix DMA s/g desc number calculation
   add712b63185 media: ov7740: avoid invalid framesize setting
   b0e199e13495 crypto: talitos - fix skcipher failure due to wrong output IV
   6452712f95e3 media: spi: IR LED: add missing of table registration
   94f2b518a788 media: dvb: usb: fix use after free in dvb_usb_device_exit
   8f855c09e2af batman-adv: fix for leaked TVLV handler.
   83d133c96aad regmap: debugfs: Fix memory leak in regmap_debugfs_init
   2b5b12c0c1b7 ath: DFS JP domain W56 fixed pulse type 3 RADAR detection
   da153c0c5746 wil6210: fix spurious interrupts in 3-msi
   a4bf4fecff16 ath10k: add peer id check in ath10k_peer_find_by_id
   83c911f4bd68 ath6kl: add some bounds checking
   42dcbf20e182 ath9k: Check for errors when reading SREV register
   7e19e658e535 ath10k: Do not send probe response template for mesh
   009edc622bba wil6210: fix potential out-of-bounds read
   09593c25b975 dmaengine: imx-sdma: fix use-after-free on probe error path
   06e15cf5aead scsi: iscsi: set auth_protocol back to NULL if CHAP_A value is not supported
   37cb02da44dc arm64/efi: Mark __efistub_stext_offset as an absolute symbol explicitly
   73ebefc814ef MIPS: fix build on non-linux hosts
   7202df6be6ec MIPS: ath79: fix ar933x uart parity mode
   be9b6782a9eb Linux 4.19.60
   d173ce091c1a x86/entry/32: Fix ENDPROC of common_spurious
   466bdfc6c4d6 drm/udl: move to embedding drm device inside udl device.
   af48f7d79fae drm/udl: Replace drm_dev_unref with drm_dev_put
   cfd99eccede5 drm/udl: introduce a macro to convert dev to udl.
   8f14cf159e9f regmap-irq: do not write mask register if mask_base is zero
   820b010743ee crypto/NX: Set receive window credits to max number of CRBs in RxFIFO
   b24c6403633d crypto: talitos - fix hash on SEC1.
   ff1ce8ef1f88 crypto: talitos - move struct talitos_edesc into talitos.h
   b578b87bcab6 s390/qdio: don't touch the dsci in tiqdio_add_input_queues()
   b1d52630b12a s390/qdio: (re-)initialize tiqdio list entries
   02eb533e940a s390: fix stfle zero padding
   9db915738e40 ARC: hide unused function unw_hdr_alloc
   fc6975ee932b x86/irq: Seperate unused system vectors from spurious entry again
   9494cd392885 x86/irq: Handle spurious interrupt after shutdown gracefully
   7897f5a443fb x86/ioapic: Implement irq_get_irqchip_state() callback
   6074f6043c49 genirq: Add optional hardware synchronization for shutdown
   3f10ccc29780 genirq: Fix misleading synchronize_irq() documentation
   578db1aa595b genirq: Delay deactivation in free_irq()
   2656ee5a5ad5 linux/kernel.h: fix overflow for DIV_ROUND_UP_ULL
   9c875e8556d4 pinctrl: mediatek: Update cur_mask in mask/mask ops
   f6e01328cb0e cpu/hotplug: Fix out-of-bounds read when setting fail state
   fa99487a43cf pinctrl: mediatek: Ignore interrupts that are wake only during resume
   cd2646e57ec5 HID: multitouch: Add pointstick support for ALPS Touchpad
   9ea3b131441e HID: chicony: add another quirk for PixArt mouse
   94968c37b6d3 x86/boot/64: Add missing fixup_pointer() for next_early_pgt access
   729d25f43b64 x86/boot/64: Fix crash if kernel image crosses page table boundary
   136847140cc8 dm verity: use message limit for data block corruption message
   042be78692ae dm table: don't copy from a NULL pointer in realloc_argv()
   0fc080bc9a72 pinctrl: mcp23s08: Fix add_data and irqchip_add_nested call order
   00640eb0eafa ARM: dts: imx6ul: fix PWM[1-4] interrupts
   a8cc2a2c2841 sis900: fix TX completion
   3232bccddeba ppp: mppe: Add softdep to arc4
   5ec7753c7c9e be2net: fix link failure after ethtool offline test
   2a6ee36917f0 x86/apic: Fix integer overflow on 10 bit left shift of cpu_khz
   fdfff855cd36 afs: Fix uninitialised spinlock afs_volume::cb_break_lock
   d47f06ab0c0e ARM: omap2: remove incorrect __init annotation
   5d3c45538151 ARM: dts: gemini Fix up DNS-313 compatible string
   afda29dc5ac6 perf/core: Fix perf_sample_regs_user() mm check
   627fdcc9b718 efi/bgrt: Drop BGRT status field reserved bits check
   cf4deb2d4de6 clk: ti: clkctrl: Fix returning uninitialized data
   ff232a47567f irqchip/gic-v3-its: Fix command queue pointer comparison bug
   244db54441a1 firmware: improve LSM/IMA security behaviour
   079d7f16a973 drivers: base: cacheinfo: Ensure cpu hotplug work is done before Intel RDT
   68048dce650e nilfs2: do not use unexported cpu_to_le32()/le32_to_cpu() in uapi header
   86859ef10d25 Input: synaptics - enable SMBUS on T480 thinkpad trackpad
   438a3dc6f2c3 e1000e: start network tx queue only when link is up
   8020568b404b Revert "e1000e: fix cyclic resets at link up with active tx"
   3bd837bfe431 Linux 4.19.59
   70bae382b3dc staging: rtl8712: reduce stack usage, again
   b46475ecd930 staging: bcm2835-camera: Handle empty EOS buffers whilst streaming
   0ee144effcc3 staging: bcm2835-camera: Remove check of the number of buffers supplied
   fcbc6ddcd624 staging: bcm2835-camera: Ensure all buffers are returned on disable
   4502c43d7f3b staging: bcm2835-camera: Replace spinlock protecting context_map with mutex
   22a20b9f6d9f staging: fsl-dpaa2/ethsw: fix memory leak of switchdev_work
   cc396afa1959 MIPS: Remove superfluous check for __linux__
   d202b5adccfb VMCI: Fix integer overflow in VMCI handle arrays
   486c32325caa carl9170: fix misuse of device driver API
   524ad00e80b7 binder: fix memory leak in error path
   294b893a41cd lkdtm: support llvm-objcopy
   5c90a2ecd08a HID: Add another Primax PIXART OEM mouse quirk
   c04c751bef87 staging: comedi: amplc_pci230: fix null pointer deref on interrupt
   4e49c6c91c18 staging: comedi: dt282x: fix a null pointer deref on interrupt
   8419fd562a09 drivers/usb/typec/tps6598x.c: fix 4CC cmd write
   63b3028cd590 drivers/usb/typec/tps6598x.c: fix portinfo width
   57e16e0d8c68 usb: renesas_usbhs: add a workaround for a race condition of workqueue
   aa9a8038ea8b usb: dwc2: use a longer AHB idle timeout in dwc2_core_reset()
   cac4a04202fb usb: gadget: ether: Fix race between gether_disconnect and rx_submit
   449a8d08a4bc p54usb: Fix race between disconnect and firmware loading
   135d9ba3b285 Revert "serial: 8250: Don't service RX FIFO if interrupts are disabled"
   0891268f36a2 USB: serial: option: add support for GosunCn ME3630 RNDIS mode
   0a1c811bf033 USB: serial: ftdi_sio: add ID for isodebug v1
   bb902b6c87ff mwifiex: Don't abort on small, spec-compliant vendor IEs
   ffbbd626e1ce mwifiex: Abort at too short BSS descriptor element
   a2a24b57c27a Documentation/admin: Remove the vsyscall=native documentation
   8a815007f5fe Documentation: Add section about CPU vulnerabilities for Spectre
   bd9604022eb3 x86/tls: Fix possible spectre-v1 in do_get_thread_area()
   68ff28291a4f x86/ptrace: Fix possible spectre-v1 in ptrace_get_debugreg()
   d8e26651ce8d perf pmu: Fix uncore PMU alias list for ARM64
   018524b75852 block, bfq: NULL out the bic when it's no longer valid
   ff75e5f41e88 ALSA: hda/realtek - Headphone Mic can't record after S3
   87c3262b00d8 ALSA: usb-audio: Fix parse of UAC2 Extension Units
   ef374f5a2731 media: stv0297: fix frequency range limit
   5db079eb0acd udf: Fix incorrect final NOT_ALLOCATED (hole) extent length
   0fc3e9b9b603 fscrypt: don't set policy for a dead directory
   e9f76b954336 net :sunrpc :clnt :Fix xps refcount imbalance on the error path
   810cfc3d9d2e NFS4: Only set creation opendata if O_CREAT
   7075654ce7d0 net: dsa: mv88e6xxx: fix shift of FID bits in mv88e6185_g1_vtu_loadpurge()
   606561e16186 quota: fix a problem about transfer quota
   5ad566af08c1 scsi: qedi: Check targetname while finding boot target information
   37232abb6ea3 net: lio_core: fix potential sign-extension overflow on large shift
   740b2ac49518 ip6_tunnel: allow not to count pkts on tstats by passing dev as NULL
   a02ac12d2d48 drm: return -EFAULT if copy_to_user() fails
   4c938a635fc3 bnx2x: Check if transceiver implements DDM before access
   270ae00a0346 md: fix for divide error in status_resync
   5533d9ed4112 mmc: core: complete HS400 before checking status
   2da80536f629 qmi_wwan: extend permitted QMAP mux_id value range
   dc84e98393f7 qmi_wwan: avoid RCU stalls on device disconnect when in QMAP mode
   dbc6a83cf2bc qmi_wwan: add support for QMAP padding in the RX path
   292ba5b1faf4 bpf, x64: fix stack layout of JITed bpf code
   4c2ce7addda8 bpf, devmap: Add missing RCU read lock on flush
   ab44f8bcf2e5 bpf, devmap: Add missing bulk queue free
   8d09e862103b bpf, devmap: Fix premature entry free on destroying map
   ba0afe520ee9 mac80211: do not start any work during reconfigure flow
   de8cf2c0bc64 mac80211: only warn once on chanctx_conf being NULL
   9c2dd6d47131 ARM: davinci: da8xx: specify dma_coherent_mask for lcdc
   3bbcc8b9ad37 ARM: davinci: da850-evm: call regulator_has_full_constraints()
   443250665388 mlxsw: spectrum: Disallow prio-tagged packets when PVID is removed
   512bbb114b99 KVM: arm/arm64: vgic: Fix kvm_device leak in vgic_its_destroy
   41420ac584d7 Input: imx_keypad - make sure keyboard can always wake up system
   b71f312e9bf7 riscv: Fix udelay in RV32.
   122c6a71c08d drm/vmwgfx: fix a warning due to missing dma_parms
   d3861d4ca94c drm/vmwgfx: Honor the sg list segment size limitation
   c0b12abd1828 s390/boot: disable address-of-packed-member warning
   e71daed5176f ARM: dts: am335x phytec boards: Fix cd-gpios active level
   822c2ee81c63 ibmvnic: Fix unchecked return codes of memory allocations
   0f06004d16be ibmvnic: Refresh device multicast list after reset
   e65dd528bb8e ibmvnic: Do not close unopened driver during reset
   374180b11b29 net: phy: rename Asix Electronics PHY driver
   473a75c7fab5 can: af_can: Fix error path of can_init()
   486954277fc1 can: m_can: implement errata "Needless activation of MRAF irq"
   270149f78b9c can: mcp251x: add support for mcp25625
   33672c74b484 dt-bindings: can: mcp251x: add mcp25625 support
   07c96e8e8021 soundwire: intel: set dai min and max channels correctly
   c7e427e28a3a mwifiex: Fix heap overflow in mwifiex_uap_parse_tail_ies()
   8e115a079940 iwlwifi: Fix double-free problems in iwl_req_fw_callback()
   d4c0f752c1d2 mwifiex: Fix possible buffer overflows at parsing bss descriptor
   b8588a0981b7 mac80211: free peer keys before vif down in mesh
   acc42e5c2322 mac80211: mesh: fix RCU warning
   e3868c1a462f staging:iio:ad7150: fix threshold mode config bit
   6b1ce3971e05 soundwire: stream: fix out of boundary access on port properties
   6be857082611 bpf: sockmap, fix use after free from sleep in psock backlog workqueue
   bc84982f977d mac80211: fix rate reporting inside cfg80211_calculate_bitrate_he()
   3c24a931e972 samples, bpf: suppress compiler warning
   e7779115bbd9 samples, bpf: fix to change the buffer size for read()
   fe01e93c3fd1 Input: elantech - enable middle button support on 2 ThinkPads
   2883fc1ece69 soc: bcm: brcmstb: biuctrl: Register writes require a barrier
   2f1c962a7416 soc: brcmstb: Fix error path for unsupported CPUs
   e8250f730410 crypto: talitos - rename alternative AEAD algos.
   7a6bfa08b938 Linux 4.19.58
   f37de75cb8eb dmaengine: imx-sdma: remove BD_INTR for channel0
   018c968de710 dmaengine: qcom: bam_dma: Fix completed descriptors count
   870de1499505 MIPS: have "plain" make calls build dtbs for selected platforms
   8957895b35de MIPS: Add missing EHB in mtc0 -> mfc0 sequence.
   2b8f8a80ca8b MIPS: Fix bounds check virt_addr_valid
   80b25628ff26 svcrdma: Ignore source port when computing DRC hash
   8129a10ce78f nfsd: Fix overflow causing non-working mounts on 1 TB machines
   f25c06955f8d KVM: LAPIC: Fix pending interrupt in IRR blocked by software disable LAPIC
   f6472f50fbfc KVM: x86: degrade WARN to pr_warn_ratelimited
   ac0024baf073 netfilter: ipv6: nf_defrag: accept duplicate fragments again
   54e8cf41b20b bpf: fix bpf_jit_limit knob for PAGE_SIZE >= 64K
   e6c288f7307e net: hns: fix unsigned comparison to less than zero
   4f24801ef50b sc16is7xx: move label 'err_spi' to correct section
   318244f3641a netfilter: ipv6: nf_defrag: fix leakage of unqueued fragments
   a8891c5e2251 ip6: fix skb leak in ip6frag_expire_frag_queue()
   382bc84da904 rds: Fix warning.
   7e6af1fa80b8 ALSA: hda: Initialize power_state field properly
   c8c88293bf72 net: hns: Fixes the missing put_device in positive leg for roce reset
   6bf9677300f3 x86/boot/compressed/64: Do not corrupt EDX on EFER.LME=1 setting
   b91ec6ae14da selftests: fib_rule_tests: Fix icmp proto with ipv6
   e2851c3ee0be scsi: tcmu: fix use after free
   04096b3beace mac80211: mesh: fix missing unlock on error in table_path_del()
   e2379b044d67 f2fs: don't access node/meta inode mapping after iput
   e9fde78c3a4f drm/fb-helper: generic: Don't take module ref for fbcon
   7821bcce20aa media: s5p-mfc: fix incorrect bus assignment in virtual child device
   3ddc2a100706 net/smc: move unhash before release of clcsock
   cd54dc4cd37d mlxsw: spectrum: Handle VLAN device unlinking
   a8a296abee36 tty: rocket: fix incorrect forward declaration of 'rp_init()'
   fb814f215013 btrfs: Ensure replaced device doesn't have pending chunk allocation
   27ce6c2675f6 mm/vmscan.c: prevent useless kswapd loops
   c854d9b6ef8d ftrace/x86: Remove possible deadlock between register_kprobe() and ftrace_run_update_code()
   2e716c3b562d drm/imx: only send event on crtc disable if kept disabled
   8ec242fd431b drm/imx: notify drm core before sending event during crtc disable
   d2d061351d64 drm/etnaviv: add missing failure path to destroy suballoc
   ec5d99e18d30 drm/amdgpu/gfx9: use reset default for PA_SC_FIFO_SIZE
   ec6d8c9e6687 drm/amd/powerplay: use hardware fan control if no powerplay fan table
   b6d56f4f6a49 arm64: kaslr: keep modules inside module region when KASAN is enabled
   7cab3dfa6d74 ARM: dts: armada-xp-98dx3236: Switch to armada-38x-uart serial node
   c8790d7f76be tracing/snapshot: Resize spare buffer if size changed
   052b31810085 fs/userfaultfd.c: disable irqs for fault_pending and event locks
   ea38007107d6 lib/mpi: Fix karactx leak in mpi_powm
   7df1e2f59bde ALSA: hda/realtek - Change front mic location for Lenovo M710q
   899377c50e60 ALSA: hda/realtek: Add quirks for several Clevo notebook barebones
   d9b6936b134e ALSA: usb-audio: fix sign unintended sign extension on left shifts
   7f52af5e9baa ALSA: line6: Fix write on zero-sized buffer
   3663bf2baa97 ALSA: firewire-lib/fireworks: fix miss detection of received MIDI messages
   9d2ac58c1ef9 ALSA: seq: fix incorrect order of dest_client/dest_ports arguments
   ae3fa28f0938 crypto: cryptd - Fix skcipher instance memory leak
   015c20532ace crypto: user - prevent operating on larval algorithms
   54435b7fff7b ptrace: Fix ->ptracer_cred handling for PTRACE_TRACEME
   600d3712ae12 drm/i915/dmc: protect against reading random memory
   2b39351e3844 ftrace: Fix NULL pointer dereference in free_ftrace_func_mapper()
   938044171949 module: Fix livepatch/ftrace module text permissions race
   220adcc0e0ca tracing: avoid build warning with HAVE_NOP_MCOUNT
   79fccb9815db mm/mlock.c: change count_mm_mlocked_page_nr return type
   4fce0a79e985 scripts/decode_stacktrace.sh: prefix addr2line with $CROSS_COMPILE
   b7747ecb82be cpuset: restore sanity to cpuset_cpus_allowed_fallback()
   e33aeb9a7c0a i2c: pca-platform: Fix GPIO lookup code
   7cf431edfb71 platform/mellanox: mlxreg-hotplug: Add devm_free_irq call to remove flow
   c241f3fbfa1a platform/x86: mlx-platform: Fix parent device in i2c-mux-reg device registration
   f853112772b0 platform/x86: intel-vbtn: Report switch events when event wakes device
   2ac96173bee0 platform/x86: asus-wmi: Only Tell EC the OS will handle display hotkeys from asus_nb_wmi
   027e043f9c78 drm: panel-orientation-quirks: Add quirk for GPD MicroPC
   2446563dd6d7 drm: panel-orientation-quirks: Add quirk for GPD pocket2
   8be5629b9622 scsi: hpsa: correct ioaccel2 chaining
   c1bef204c70a SoC: rt274: Fix internal jack assignment in set_jack callback
   1023af0c069d ALSA: hdac: fix memory release for SST and SOF drivers
   26a6acde2a42 usb: gadget: udc: lpc32xx: allocate descriptor with GFP_ATOMIC
   9be058f5dd70 usb: gadget: fusb300_udc: Fix memory leak of fusb300->ep[i]
   5284327f4e17 x86/CPU: Add more Icelake model numbers
   74929087384f ASoC: sun4i-i2s: Add offset to RX channel select
   32475634e8a8 ASoC: sun4i-i2s: Fix sun8i tx channel offset mask
   7b7486398a32 ASoC: max98090: remove 24-bit format support if RJ is 0
   3b60f98ef496 drm/mediatek: call mtk_dsi_stop() after mtk_drm_crtc_atomic_disable()
   34e5e1c4874f drm/mediatek: clear num_pipes when unbind driver
   a8a86e9a5533 drm/mediatek: call drm_atomic_helper_shutdown() when unbinding driver
   79e095d234bb drm/mediatek: unbind components in mtk_drm_unbind()
   319f4699bcaa drm/mediatek: fix unbind functions
   dbd94f4938c6 spi: bitbang: Fix NULL pointer dereference in spi_unregister_master
   3f8d3c9506a5 ASoC: ak4458: rstn_control - return a non-zero on error only
   3c3dd68c48e8 ASoC: soc-pcm: BE dai needs prepare when pause release after resume
   4c31b4b4ba65 ASoC: ak4458: add return value for ak4458_probe
   0c19bcdb0db9 ASoC : cs4265 : readable register too low
   c549680ed59b netfilter: nft_flow_offload: IPCB is only valid for ipv4 family
   041c181e6ba0 netfilter: nft_flow_offload: don't offload when sequence numbers need adjustment
   48f611ecea0e netfilter: nft_flow_offload: set liberal tracking mode for tcp
   3b2734bc839d netfilter: nf_flow_table: ignore DF bit setting
   869eec894663 md/raid0: Do not bypass blocking queue entered for raid0 bios
   c9d8d3e9d7a0 block: Fix a NULL pointer dereference in generic_make_request()
   5dd6139a0aa2 Bluetooth: Fix faulty expression for minimum encryption key size check

(From OE-Core rev: 885eeb589ed3150a17a8ac62c44632cb02171478)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Bruce Ashfield
88d6a7c0ed linux-yocto/5.2: update to v5.2.13
Integrating the korg -stable updates that comprise the following
commits:

   218ca2e5affe Linux 5.2.13
   4c634717d778 Revert "Input: elantech - enable SMBus on new (2018+) systems"
   140839fe4e71 Linux 5.2.12
   5566d1c61b2f Revert "ASoC: Fail card instantiation if DAI format setup fails"
   4d8966020827 hsr: switch ->dellink() to ->ndo_uninit()
   072c9337f3a0 hsr: fix a NULL pointer deref in hsr_dev_xmit()
   08523d5a2f4a hsr: implement dellink to clean up resources
   a282179be747 bpf: fix use after free in prog symbol exposure
   0d5014b80e5c x86/ptrace: fix up botched merge of spectrev1 fix
   3af8db6a99f6 drm/i915/dp: Fix DSC enable code to use cpu_transcoder instead of encoder->type
   b6980646c9ab drm/i915: Do not create a new max_bpc prop for MST connectors
   79d5d7317ce3 iwlwifi: pcie: handle switching killer Qu B0 NICs to C0
   3146a6de3d58 iwlwifi: pcie: don't switch FW to qnj when ax201 is detected
   9e7e685012f2 iwlwifi: pcie: add support for qu c-step devices
   c013312ef7a8 iwlwifi: change 0x02F0 fw from qu to quz
   feee62efa7ad iwlwifi: add new cards for 9000 and 20000 series
   0fdbd727e12a iwlwifi: add new cards for 22000 and change wrong structs
   805363e2dfa5 iwlwifi: add new cards for 22000 and fix struct name
   e27fc3445751 mmc: sdhci-sprd: add get_ro hook function
   9ad0348f708d mmc: sdhci-sprd: Implement the get_max_timeout_count() interface
   d100666e3cfc mmc: sdhci-sprd: clear the UHS-I modes read from registers
   b018fcb92250 mac80211: Correctly set noencrypt for PAE frames
   08392de0ccc7 mac80211: Don't memset RXCB prior to PAE intercept
   4e118994cea8 cfg80211: Fix Extended Key ID key install checks
   b14f5ba7490e mac80211: fix possible sta leak
   3cd42050aac6 Revert "cfg80211: fix processing world regdomain when non modular"
   b6a0d1f9bf08 mm: memcontrol: fix percpu vmstats and vmevents flush
   bba5bcb0cc0e mm, memcg: partially revert "mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones"
   8706ffe20444 mms: sdhci-sprd: add SDHCI_QUIRK_BROKEN_CARD_DETECTION
   d7c7531ac9a3 mt76: mt76x0u: do not reset radio on resume
   839e96131567 SUNRPC: Don't handle errors if the bind/connect succeeded
   90ff6dd4ced6 crypto: ccp - Ignore unconfigured CCP device on suspend/resume
   3c3c233738df VMCI: Release resource if the work is already queued
   6992ae83866a bus: hisi_lpc: Add .remove method to avoid driver unbind crash
   0a6caa4e3f21 bus: hisi_lpc: Unregister logical PIO range to avoid potential use-after-free
   3e3bf9dfdaf4 i2c: piix4: Fix port selection for AMD Family 16h Model 30h
   712029329a58 drm/i915: Call dma_set_max_seg_size() in i915_driver_hw_probe()
   0573f44d42b1 drm/i915: Don't deballoon unused ggtt drm_mm_node in linux guest
   f78e0d8172f3 drm/amdgpu: fix GFXOFF on Picasso and Raven2
   4c7ee7bd4f7e drm/amdgpu: Add APTX quirk for Dell Latitude 5495
   71817079db2f lib: logic_pio: Add logic_pio_unregister_range()
   0a6e75686543 lib: logic_pio: Avoid possible overlap for unregistering regions
   94cfb33438e0 lib: logic_pio: Fix RCU usage
   e0e3650991cd Revert "NFSv4/flexfiles: Abort I/O early if the layout segment was invalidated"
   666a848c6797 NFS: Ensure O_DIRECT reports an error if the bytes read/written is 0
   3fd824dc16de NFSv4/pnfs: Fix a page lock leak in nfs_pageio_resend()
   d3a2180a5720 lkdtm/bugs: fix build error in lkdtm_EXHAUST_STACK
   61c6f2b0000a fsi: scom: Don't abort operations for minor errors
   d886915cd91b typec: tcpm: fix a typo in the comparison of pdo_max_voltage
   82b520267b49 intel_th: pci: Add Tiger Lake support
   1c01033684f3 intel_th: pci: Add support for another Lewisburg PCH
   d36c706f854c stm class: Fix a double free of stm_source_device
   ba3e88a664c8 mmc: sdhci-sprd: add SDHCI_QUIRK2_PRESET_VALUE_BROKEN
   77162751167c mmc: sdhci-sprd: fixed incorrect clock divider
   a94076eed72e mmc: core: Fix init of SD cards reporting an invalid VDD range
   b8dd05ea2e74 mmc: sdhci-cadence: enable v4_mode to fix ADMA 64-bit addressing
   096179da39b6 mmc: sdhci-of-at91: add quirk for broken HS200
   cb82fa2d124a Revert "mmc: sdhci-tegra: drop ->get_ro() implementation"
   31f4eb72692c mei: me: add Tiger Lake point LP device ID
   871c867ac423 KVM: arm/arm64: vgic-v2: Handle SGI bits in GICD_I{S,C}PENDR0 as WI
   ea93e118ef2e KVM: arm/arm64: vgic: Fix potential deadlock when ap_list is long
   d69ebe85e169 KVM: PPC: Book3S: Fix incorrect guest-to-user-translation error handling
   3698cd854f43 tools/power turbostat: Fix caller parameter of get_tdp_amd()
   2d26f7f401e7 USB: storage: ums-realtek: Whitelist auto-delink support
   35f1b0a62c36 USB: storage: ums-realtek: Update module parameter description for auto_delink_en
   960ff077477e usb: host: xhci: rcar: Fix typo in compatible string matching
   6ca46f45c208 usb: host: ohci: fix a race condition between shutdown and irq
   73830b83ece9 usb: chipidea: udc: don't do hardware access if gadget has stopped
   0aa1e87affce usb: hcd: use managed device resources
   c07f658df19f USB: cdc-wdm: fix race between write and disconnect due to flag abuse
   43d94dafbcdd usb-storage: Add new JMS567 revision to unusual_devs
   7300afed0334 usbtmc: more sanity checking for packet size
   e56b7b3b9256 ftrace: Check for empty hash and comment the race with registering probes
   d784aa1a0f13 ftrace: Check for successful allocation of hash
   cd419e7c03e9 ftrace: Fix NULL pointer dereference in t_probe_next()
   6c781717c5cc HID: logitech-hidpp: remove support for the G700 over USB
   602038487748 x86/apic: Include the LDR when clearing out APIC registers
   edacccb34680 x86/apic: Do not initialize LDR and DFR for bigsmp
   af65ce08ec91 x86/mm/cpa: Prevent large page split when ftrace flips RW on kernel text
   861e386d11b5 uprobes/x86: Fix detection of 32-bit user mode
   4479763b8436 KVM: x86: Don't update RIP or do single-step on faulting emulation
   4344cb8cf72d KVM: x86: hyper-v: don't crash on KVM_GET_SUPPORTED_HV_CPUID when kvm_intel.nested is disabled
   7d01c081e861 kvm: x86: skip populating logical dest map if apic is not sw enabled
   e824fe6a6750 ALSA: usb-audio: Add implicit fb quirk for Behringer UFX1604
   4f3c293ccffe ALSA: usb-audio: Fix invalid NULL check in snd_emuusb_set_samplerate()
   ee26f3722d2b ALSA: seq: Fix potential concurrent access to the deleted pool
   853ccdea876b ALSA: hda - Fixes inverted Conexant GPIO mic mute led
   441f5ecc1e24 ALSA: line6: Fix memory leak at line6_init_pcm() error path
   6ff7b2c68d22 ALSA: hda/ca0132 - Add new SBZ quirk
   701ff405be9f ALSA: usb-audio: Check mixer unit bitmap yet more strictly
   b4b92e95d9e5 mm/zsmalloc.c: fix build when CONFIG_COMPACTION=n
   2905d7847cd5 xfrm/xfrm_policy: fix dst dev null pointer dereference in collect_md mode
   1c7fbbc0fc3f ipv4/icmp: fix rt dst dev null pointer dereference
   fc90789e580b openvswitch: Fix conntrack cache with timeout
   c1c3307a832a ipv4: mpls: fix mpls_xmit for iptunnel
   ae154dcba8f4 tcp: make sure EPOLLOUT wont be missed
   cbc9336afc74 net/smc: make sure EPOLLOUT is raised
   5b71ce93d7b1 net: fix __ip_mc_inc_group usage
   a6058b22e17e net: cpsw: fix NULL pointer exception in the probe error path
   c5df65fd6f06 ipv6: Fix return value of ipv6_mc_may_pull() for malformed packets
   dc428ae89cd4 ipv6/addrconf: allow adding multicast addr if IFA_F_MCAUTOJOIN is set
   8903c1ed2c14 mt76: usb: fix rx A-MSDU support
   962d7207f53b drm/bridge: tfp410: fix memleak in get_modes()
   d4ccc1744b55 selftests/bpf: install files test_xdp_vlan.sh
   d857dcf1c807 watchdog: bcm2835_wdt: Fix module autoload
   eeb6b4a09695 lcoking/rwsem: Add missing ACQUIRE to read_slowpath sleep loop
   931424d0781e locking/rwsem: Add missing ACQUIRE to read_slowpath exit when queue is empty
   5faa01cc2b1f tools: hv: fix KVP and VSS daemons exit code
   b6018c3a79e5 tools: hv: fixed Python pep8/flake8 warnings for lsvmbus
   c983df11ed19 usb: host: fotg2: restart hcd after port reset
   5a3db3021b17 drm/ast: Fixed reboot test may cause system hanged
   68fc8f1e9103 drm/scheduler: use job count instead of peek
   7046212603e0 i2c: emev2: avoid race when unregistering slave client
   38869e74c3ac i2c: rcar: avoid race when unregistering slave client
   6ad482444c98 riscv: fix flush_tlb_range() end address for flush_tlb_page()
   325fd0056cc0 arm64: cpufeature: Don't treat granule sizes as strict
   2a7a7ff625cd xen/blkback: fix memory leaks
   82fcf8a5d8f7 habanalabs: fix device IRQ unmasking for BE host
   a1a6c6b4f8d8 habanalabs: fix endianness handling for internal QMAN submission
   1900d706b9c4 habanalabs: fix completion queue handling when host is BE
   79e338d70c86 habanalabs: fix endianness handling for packets from user
   0a18515cc03f habanalabs: fix DRAM usage accounting on context tear down
   c041ddb75698 usb: gadget: mass_storage: Fix races between fsg_disable and fsg_set_alt
   3f1b93b5a45c usb: gadget: composite: Clear "suspended" on reset/disconnect
   4ab6b15a00ca dma-direct: don't truncate dma_required_mask to bus addressing capabilities
   583c8d3118e0 iommu/dma: Handle SG length overflow better
   4aab45c37962 omap-dma/omap_vout_vrfb: fix off-by-one fi value
   7ceddea2da13 dmaengine: stm32-mdma: Fix a possible null-pointer dereference in stm32_mdma_irq_handler()
   a4a200842e83 IB/mlx5: Fix implicit MR release flow
   a8bd4c018836 btrfs: trim: Check the range passed into to prevent overflow
   c1b16e1427f4 auxdisplay: panel: need to delete scan_timer when misc_register fails in panel_attach
   ceac72e0a8cc soundwire: cadence_master: fix definitions for INTSTAT0/1
   50b59bb1043b soundwire: cadence_master: fix register definition for SLAVE_STATE
   c88a50ced6de nvme-pci: Fix async probe remove race
   9dd8dc3d8a79 nvme: fix controller removal race with scan work
   be2e81d1d8d4 nvme-rdma: fix possible use-after-free in connect error flow
   f3b4b4440a0c nvme: fix a possible deadlock when passthru commands sent to a multipath device
   d067f76d2009 nvme-core: Fix extra device_put() call on error path
   a7b13f9b376d nvmet-file: fix nvmet_file_flush() always returning an error
   938f8292e9ef nvmet-loop: Flush nvme_delete_wq when removing the port
   19620ce482fc nvmet: Fix use-after-free bug when a port is removed
   a40201a850a8 afs: Fix missing dentry data version updating
   fb64ee182656 afs: Only update d_fsdata if different in afs_d_revalidate()
   b4988bb90114 afs: Fix off-by-one in afs_rename() expected data version calculation
   768edf3604b6 fs: afs: Fix a possible null-pointer dereference in afs_put_read()
   3bde518dd5f1 afs: Fix loop index mixup in afs_deliver_vl_get_entry_by_name_u()
   3e5fa7f20b76 afs: Fix the CB.ProbeUuid service handler to reply correctly
   f902c873cb0f nvme-multipath: revalidate nvme_ns_head gendisk in nvme_validate_ns
   76c2a562a193 dmaengine: ste_dma40: fix unneeded variable warning
   c3915fe1bf12 Linux 5.2.11
   85a55331d9ae rxrpc: Fix local refcounting
   fa321a9ce599 rxrpc: Fix local endpoint replacement
   d2783ccec7e0 rxrpc: Fix read-after-free in rxrpc_queue_local()
   486a72744507 rxrpc: Fix local endpoint refcounting
   3981720f800f powerpc: Allow flush_(inval_)dcache_range to work across ranges >4GB
   28ad328e672b io_uring: add need_resched() check in inner poll loop
   7fe55f17deee io_uring: don't enter poll loop if we have CQEs pending
   2b2c2647a19c io_uring: fix potential hang with polled IO
   2a50be6e0551 dm zoned: fix potential NULL dereference in dmz_do_reclaim()
   b295171cff3f IB/hfi1: Drop stale TID RDMA packets
   be46f90b7436 xfs: fix missing ILOCK unlock when xfs_setattr_nonsize fails due to EDQUOT
   92aeca3af02a mm/kasan: fix false positive invalid-free reports with CONFIG_KASAN_SW_TAGS=y
   f6d997de0883 mm/zsmalloc.c: fix race condition in zs_destroy_pool
   e3f9299cbe4c mm/zsmalloc.c: migration can leave pages in ZS_EMPTY indefinitely
   199faced432f mm, page_owner: handle THP splits correctly
   ef1cb3ee97ec mm: memcontrol: flush percpu vmevents before releasing memcg
   2bd82494d1d6 mm: memcontrol: flush percpu vmstats before releasing memcg
   27674f5f49a8 mm, page_alloc: move_freepages should not examine struct page of reserved memory
   764fa2f4ff59 mm/z3fold.c: fix race between migration and destruction
   641c1d8396dc genirq: Properly pair kobject_del() with kobject_add()
   f2f89f89e5fe dm zoned: properly handle backing device failure
   5d77bfe7e69d dm zoned: improve error handling in i/o map code
   544518b023cb dm zoned: improve error handling in reclaim
   ace23a455383 dm table: fix invalid memory accesses with too high sector number
   23c9e199076a dm space map metadata: fix missing store of apply_bops() return value
   f57bbd7c7894 dm raid: add missing cleanup in raid_ctr()
   e7b9e2afcc68 dm integrity: fix a crash due to BUG_ON in __journal_read_write()
   9e3dcb641f08 dm btree: fix order of block initialization in btree_split_beneath
   e92dfd8d1403 dm dust: use dust block size for badblocklist index
   a6d64ebeb5eb dm kcopyd: always complete failed jobs
   1e2528273532 psi: get poll_work to run when calling poll syscall next time
   b9e0cc134d73 IB/hfi1: Drop stale TID RDMA packets that cause TIDErr
   a382c2b3d9c2 IB/hfi1: Add additional checks when handling TID RDMA WRITE DATA packet
   47a2c4e414fb IB/hfi1: Add additional checks when handling TID RDMA READ RESP packet
   b568370cf1d7 IB/hfi1: Unsafe PSN checking for TID RDMA READ Resp packet
   f1c2546fff1f x86/boot: Fix boot regression caused by bootparam sanitizing
   6659665f0afd x86/boot: Save fields explicitly, zero out everything else
   4aa0f3b05a3a x86/CPU/AMD: Clear RDRAND CPUID bit on AMD family 15h/16h
   50d3cd159713 x86/apic: Handle missing global clockevent gracefully
   60d4af6a0e5f x86/retpoline: Don't clobber RFLAGS during CALL_NOSPEC on i386
   accdfad7aed6 userfaultfd_release: always remove uffd flags and clear vm_userfaultfd_ctx
   1069617a56d7 Drivers: hv: vmbus: Fix virt_to_hvpfn() for X86_PAE
   a7ef13769f73 gpiolib: never report open-drain/source lines as 'input' to user-space
   b3b7c576df89 scsi: ufs: Fix NULL pointer dereference in ufshcd_config_vreg_hpm()
   aaf36ec5aa67 drm/nouveau: Don't retry infinitely when receiving no data on i2c over AUX
   be85d2279c5c drm/amdgpu/gfx9: update pg_flags after determining if gfx off is possible
   9d87603371b7 libceph: fix PG split vs OSD (re)connect race
   bfb7dd36f7b9 ceph: don't try fill file_lock on unsuccessful GETFILELOCK reply
   a927f8a9dfd5 ceph: clear page dirty before invalidate page
   e9e5f8e96fe6 clk: socfpga: stratix10: fix rate caclulationg for cnt_clks
   328380940d3a Revert "dm bufio: fix deadlock with loop device"
   2ad350fb4c92 Revert "KVM: x86/mmu: Zap only the relevant pages when removing a memslot"
   24c5a3d468b2 HID: wacom: Correct distance scale for 2nd-gen Intuos devices
   ccdca005c5a3 HID: wacom: correct misreported EKR ring values
   89b925e73610 iwlwifi: mvm: disable TX-AMSDU on older NICs
   6c64df946909 selftests: kvm: Adding config fragments
   b53832252a68 KVM: arm: Don't write junk to CP15 registers on reset
   9b2b6603766b KVM: arm64: Don't write junk to sysregs on reset
   2590622af1a6 dt-bindings: riscv: fix the schema compatible string for the HiFive Unleashed board
   9941192b06ec perf pmu-events: Fix missing "cpu_clk_unhalted.core" event
   40db83cb0c86 perf cpumap: Fix writing to illegal memory in handling cpumap mask
   dcd75c90dec1 perf ftrace: Fix failure to set cpumask when only one cpu is present
   371879acb44e block, bfq: handle NULL return value by bfq_init_rq()
   6bfd59d99133 block: aoe: Fix kernel crash due to atomic sleep when exiting
   bcc19f380ecc drm/vmwgfx: fix memory leak when too many retries have occurred
   41dddcbf27fd x86/lib/cpu: Address missing prototypes warning
   8e88ef54c22a libata: add SG safety checks in SFF pio transfers
   9ba76a5214e4 libata: have ata_scsi_rw_xlat() fail invalid passthrough requests
   75d360c01f48 NFSv4: Ensure state recovery handles ETIMEDOUT correctly
   37f3fc22b32d net: hisilicon: Fix dma_map_single failed on arm64
   36ea6d81a99e net: hisilicon: fix hip04-xmit never return TX_BUSY
   9e7a5c2730bd net: hisilicon: make hip04_tx_reclaim non-reentrant
   39db6b4e6fa1 drm/amdgpu: pin the csb buffer on hw init for gfx v8
   84de7cd06750 net: stmmac: tc: Do not return a fragment entry
   f0d73daeef24 net: stmmac: Fix issues when number of Queues >= 4
   9474322cadfd net: cxgb3_main: Fix a resource leak in a error path in 'init_one()'
   4f339c4018a8 ata: rb532_cf: Fix unused variable warning in rb532_pata_driver_probe
   976dcd26cb03 s390: put _stext and _etext into .text section
   d810001f3e92 s390/mm: fix dump_pagetables top level page table walking
   580b216496b6 s390/protvirt: avoid memory sharing for diag 308 set/store
   1f54a9b84956 sched/psi: Do not require setsched permission from the trigger creator
   9ea2355c3117 sched/psi: Reduce psimon FIFO priority
   a343eca8fd92 sched/deadline: Fix double accounting of rq/running bw in push & pull
   4fe7ee5ed9b0 SMB3: Kernel oops mounting a encryptData share with CONFIG_DEBUG_VIRTUAL
   efb86f76c6c8 SMB3: Fix potential memory leak when processing compound chain
   6dfb0916b1fd drm/rockchip: Suspend DP late
   ef411a41d35a HID: input: fix a4tech horizontal wheel custom usage
   b6f61042d3c5 HID: quirks: Set the INCREMENT_USAGE_ON_DUPLICATE quirk on Saitek X52
   3055b274a141 NFS: Fix regression whereby fscache errors are appearing on 'nofsc' mounts
   83d99ded4b1d NFSv4: Fix a potential sleep while atomic in nfs4_do_reclaim()
   55a76b7b9a5c NFSv4.1: Only reap expired delegations
   00cfd19b4aab NFSv4.1: Fix open stateid recovery
   5ebc4cb05315 NFSv4: When recovering state fails with EAGAIN, retry the same recovery
   8c0391db53ef NFSv4: Fix a credential refcount leak in nfs41_check_delegation_stateid
   1cfb3722bb57 enetc: Select PHYLIB while CONFIG_FSL_ENETC_VF is set
   bf92682c476b net/ethernet/qlogic/qed: force the string buffer NULL-terminated
   e9da4fc7d8ec ASoC: amd: acp3x: use dma_ops of parent device for acp3x dma driver
   ac8bf342add9 can: peak_usb: force the string buffer NULL-terminated
   4a17b244620c can: sja1000: force the string buffer NULL-terminated
   c7bc59702fa8 spi: pxa2xx: Add support for Intel Tiger Lake
   8da2ee75f213 perf bench numa: Fix cpu0 binding
   cbffa423f725 net: phy: phy_led_triggers: Fix a possible null-pointer dereference in phy_led_trigger_change_speed()
   e17659fd38cf isdn: hfcsusb: Fix mISDN driver crash caused by transfer buffer on the stack
   b7737b00b86d enetc: Fix build error without PHYLIB
   4784684e960a iwlwifi: mvm: send LQ command always ASYNC
   14311a90347b iwlwifi: fix locking in delayed GTK setting
   743fa6a7baa8 iwlwifi: dbg_ini: move iwl_dbg_tlv_free outside of debugfs ifdef
   250352ddc2b4 iwlwifi: dbg_ini: move iwl_dbg_tlv_load_bin out of debug override ifdef
   de0f0564b100 iwlwifi: mvm: avoid races in rate init and rate perform
   505d5fc02a34 nvmem: Use the same permissions for eeprom as for nvmem
   f1079e415bc1 rxrpc: Fix the lack of notification when sendmsg() fails on a DATA packet
   04ce53b00a89 rxrpc: Fix potential deadlock
   68c55a2c6c2f netfilter: ipset: Fix rename concurrency with listing
   3fb7dc7af067 netfilter: ipset: Copy the right MAC address in bitmap:ip,mac and hash:ip,mac sets
   79ebfb394cbe netfilter: ipset: Actually allow destination MAC address for hash:ip,mac sets too
   edd7585d6751 net: stmmac: manage errors returned by of_get_mac_address()
   79ea14eea8cd mac80211_hwsim: Fix possible null-pointer dereferences in hwsim_dump_radio_nl()
   813f42fc5695 habanalabs: fix F/W download in BE architecture
   45d6a121c7dc isdn: mISDN: hfcsusb: Fix possible null-pointer dereferences in start_isoc_chain()
   c60f443cf039 qed: RDMA - Fix the hw_ver returned in device attributes
   349b39f98d1b net: usb: qmi_wwan: Add the BroadMobi BM818 card
   7446b2794d9f ASoC: ti: davinci-mcasp: Correct slot_width posed constraint
   ec10dcf3ae89 ASoC: rockchip: Fix mono capture
   205cd0f91481 ASoC: ti: davinci-mcasp: Fix clk PDIR handling for i2s master mode
   7bd8e226cd63 {nl,mac}80211: fix interface combinations on crypto controlled devices
   cb2150b718c0 st_nci_hci_connectivity_event_received: null check the allocation
   775d026bbfe2 st21nfca_connectivity_event_received: null check the allocation
   8f28ebbdf9bc libbpf: silence GCC8 warning about string truncation
   46af9cbcf73a Staging: fbtft: Fix GPIO handling
   ab4f4d331a98 ASoC: Fail card instantiation if DAI format setup fails
   2d0befff4db8 can: gw: Fix error path of cgw_module_init
   ad14579d403a can: mcp251x: add error check when wq alloc failed
   eae5534465c8 can: dev: call netif_carrier_off() in register_candev()
   7dae14d19c4f libbpf: fix using uninitialized ioctl results
   890626e2d964 selftests/bpf: add another gso_segs access
   24c21fa64560 selftests: forwarding: gre_multipath: Fix flower filters
   f4bed7ed14a2 selftests: forwarding: gre_multipath: Enable IPv4 forwarding
   82d861e06dc6 net: mvpp2: Don't check for 3 consecutive Idle frames for 10G links
   a25bd473e8c9 bonding: Force slave speed check after link state recovery for 802.3ad
   1c3e3000de80 ASoC: dapm: fix a memory leak bug
   5fa1d7a76dd0 selftests/bpf: fix sendmsg6_prog on s390
   5c447c1951cd bpf: sockmap, only create entry if ulp is not already enabled
   47032e94979e bpf: sockmap, synchronize_rcu before free'ing map
   2a574254d6f5 bpf: sockmap, sock_map_delete needs to use xchg
   705409085597 spi: pxa2xx: Balance runtime PM enable/disable on error
   bdeaab6261ff ASoC: SOF: use __u32 instead of uint32_t in uapi headers
   5cecec718e35 ASoC: dapm: Fix handling of custom_stop_condition on DAPM graph walks
   8d376e73adf1 netfilter: ebtables: fix a memory leak bug in compat
   0ea865793835 libbpf: sanitize VAR to conservative 1-byte INT
   3883ef3b1de6 mips: fix cacheinfo
   7afa881dd42a MIPS: kernel: only use i8253 clocksource with periodic clockevent
   22c0b70969e3 HID: Add 044f:b320 ThrustMaster, Inc. 2 in 1 DT
   e6cca5f2ab53 HID: logitech-hidpp: add USB PID for a few more supported mice
   e301eb65c861 ASoC: Intel: bytcht_es8316: Add quirk for Irbis NB41 netbook
   af3eab0b3016 ASoC: samsung: odroid: fix a double-free issue for cpu_dai
   b3978884ac59 ASoC: samsung: odroid: fix an use-after-free issue for codec
   cb7829e5aeb3 regulator: axp20x: fix DCDC5 and DCDC6 for AXP803
   7a2ec3fbdcb1 regulator: axp20x: fix DCDCA and DCDCD for AXP806
   3861684475d5 ASoC: audio-graph-card: add missing const at graph_get_dai_id()
   e5e516915f78 ASoC: audio-graph-card: fix an use-after-free in graph_get_dai_id()
   7b83af285ad2 ASoC: audio-graph-card: fix use-after-free in graph_dai_link_of_dpcm()
   86827ec32e56 ASoC: simple-card: fix an use-after-free in simple_for_each_link()
   9b7f263403ab ASoC: simple-card: fix an use-after-free in simple_dai_link_of_dpcm()
   c9479b9717c3 ASoC: simple_card_utils.h: care NULL dai at asoc_simple_debug_dai()

(From OE-Core rev: 94f5f7b3fb8bf7228e6108dfe2e6b6fc773a0fc0)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Richard Purdie
44d0e2bb2c Revert "meta-extsdk: Either an sstate task is a proper task or it isn't"
This reverts commit db5f08c16e.

(From OE-Core rev: 4ed7861875c3f28090e014265f1f576ae0608eb7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Ross Burton
eaef2d88bf json-c: clean up recipe
Tidy the indentation of EXTRA_OECONF.

Remove the deletion of config.status which hasn't been in the tarballs since
0.12.

(From OE-Core rev: 32b0265a594a22ab4c2aa5d5023551f2e8d59b82)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Changqing Li
299a3e5975 devtool.py: fix buildclean test
when build with EXTERNALSRC, checksum of EXTERNALSRC is one of inputs
for generate sigdata of task do_compile. without change any source, the
sigdata will not changed, and buildclean task only do make clean, and
not clean stampfiles like clean task, so the stampfile keep there, then
do_compile after do_buildclean will not rerun, and targetfile
tempdir_mdadm/mdadm will not be generated, report below error:

AssertionError: '/tmp/devtoolqarxv8ct6u/mdadm' does not exist

Fix by add a comments in Makefile to trigger rebuild of compile task

(From OE-Core rev: f4621cf4516f9de9980f3864a193f3f61c4abedc)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Changqing Li
c08c61d2f1 devtool.py: change to do clean before remove-layer
if do clean after remove-layer, it will make stamp file not cleaned
since variable STAMP has changed, this will cause error like:

if testcase buildclean failed, when run next testcase modify, since
do_prepare_recipe_sysroot's stamp file exists, sysroot not populated,
then do_compile will fail with error:
/bin/sh: x86_64-poky-linux-gcc: command not found

(From OE-Core rev: 046d7e1de094105db0949c2cf5333ff55d9ad9c8)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Peter Kjellerstedt
4137f5978d systemd: Make it build with hwdb disabled
If hwdb is disabled, then systemd-hwdb-update.service does not exists.
Do not try to modify it in this case.

(From OE-Core rev: 9f9706d39713f967e10e3a41313ddacb03b0ca94)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Ross Burton
47c3142515 distcc: split into client and server packages
Users of distcc are rarely both clients and servers, so split the package.
distcc is the client, the new distcc-server package is the server.

(From OE-Core rev: ca07f88c21094a04f6af1f87bc7d9afa477e30f1)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Ross Burton
9acdbe9b60 distcc: use --enable-tcp-insecure instead of --make-me-a-botnet
--make-me-a-botnet is worrying, --enable-tcp-insecure is clearer and doesn't
  scare people glancing at 'ps'.

(From OE-Core rev: f43ccc8c3a0469358a29b15425e59552f528057d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Ross Burton
4503c1c411 distcc: clean up the UI install logic
Remove the local copy of the desktop file, instead apply a patch from upstream
to fix the file. This also fixes the install paths, so update the recipe.

Remove glibc-specific installation as this was due to uclibc failures.

Refresh and submit upstream the out-of-tree build fix.

(From OE-Core rev: f69cb86f4c15497c6324a0e8063f86cc31cfe7aa)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Adrian Bunk
56da8174e7 json-c: Don't --enable-rdrand
In recent years AMD CPUs have had various problems with RDRAND
giving either non-random data or no result at all, which is
problematic if either build or target machine has a CPU with
this problem.

The fallback is /dev/urandom, and I'd trust the kernel here.

--enable-rdrand was added in an upgrade to a new upstream
version without mentioning any reason.

[YOCTO #13534]

(From OE-Core rev: abc51bfa8933dda99b6c82ac37692830315325b3)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Ross Burton
667200903c oeqa/selftest/reproducible: test ipkgs too
Now that opkg-build can build reproducible ipkgs, we can also add those to the
test case.

[ YOCTO #13513 ]

(From OE-Core rev: 3806d38e6194a42534381993fcfcc3ff39550a13)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Diego Rondini
3c9edf9b02 initramfs-framework: fix var name
Use appropriate variable name for root of partuuid.

(From OE-Core rev: d954ddcb2a9678b3b964279b41c0ec677ea9f03a)

Signed-off-by: Diego Rondini <diego.rondini@kynetics.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Jonathan Marler
f7d46843e9 package: Multiple shlib_providers for the same file should error
In the case where multiple packages provide the same file, we show an error.
Otherwise, python will generate a different build depending on which provider
appears first in the dictionary.  On my system this order changes every time
I run bitbake causing intermittent build differences.

Add a sorted() to fix the determinism issue too.

(From OE-Core rev: 61c41369003444bfbf1c45e7cfd2752a4b7bc22f)

Signed-off-by: Jonathan Marler <johnnymarler@hp.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-27 13:02:16 +01:00
Richard Purdie
81f9e815d3 build-appliance-image: Update to master head revision
(From OE-Core rev: 95ad5626296380358c8a502a3e04879dab653d78)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 20:32:53 +01:00
Khem Raj
d230765d1f layer.conf: Remove weston-conf from SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS
This recipe is gone

(From OE-Core rev: 3a8e60bb36631ba2b32213c234ec7b4e1e2544d5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 20:31:17 +01:00
Richard Purdie
886a71438f bitbake: utils: Add ionice option to prunedir
Autobuilder type infrastructure can benefit from deletion of certain files as
background IO due to the way Linux filesystem priority works.

We have problems where build directories as part of oe-selftest being
delete starves the running tasks of IO to the point builds take much
longer to compelte.

Having this option of running the deletion at "idle" helps a lot with
that.

(Bitbake rev: 797354d285f6d624d9adb52bab65823572da0e39)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 20:30:35 +01:00
Robert Yang
2af45501fd bitbake: runqueue: validate_hashes(): currentcount should be a number
According to sstate_checkhashes which is defined in sstate.bbclass, the
currentcoun should be a number (0, not None).

Fixed:
$ bitbake base-files -Sprintdiff
    >    bb.plain("Sstate summary: Wanted %d Found %d Missed %d Current %d (%d%% match, %d%% complete)" % (total, len(found), len(missed), currentcount, match, complete))

TypeError: %d format: a number is required, not NoneType

(Bitbake rev: 45cb73e2846eaffe8964a573875f54808e8f3633)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 20:30:35 +01:00
Ross Burton
e35be7aa7d bitbake: fetch2/git: add git-lfs toggle option
Add a new 'lfs' option to the git fetcher so that we can optionally not fetch
git-lfs content, for repositories that contain LFS data that we don't
actually need for building.

By default lfs is set to 1, so if the repository has LFS content then git-lfs is
required.  Setting lfs to 0 will mean that git-lfs won't be required to fetch,
and some files will be missing.

(Bitbake rev: be0b78ccfc5ede98041bc0545a15092494b12b26)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 20:30:35 +01:00
Yeoh Ee Peng
0a46b9dd9c bitbake: bitbake-layers: show-recipes: Enable bare output
Currently, show-recipes will append "(skipped)" marker to recipes which
were skipped due these recipes does not satisfied the configurations.

Example: $ bitbake-layers show-recipes -r
   ace
   backport-iwlwifi
   core-image-rt (skipped)
   core-image-rt-sdk (skipped)
   core-image-tiny

Add -b/--bare to enable output names without "(skipped)" marker.

Example: $ bitbake-layers show-recipes -r -b
   ace
   backport-iwlwifi
   core-image-rt
   core-image-rt-sdk
   core-image-tiny

(Bitbake rev: 87796e580cd160a535eb5fb9e31846a7cf1a249e)

Signed-off-by: Yeoh Ee Peng <ee.peng.yeoh@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 20:30:35 +01:00
Yeoh Ee Peng
7f2803d1aa bitbake: bitbake-layers: show-recipes: Select recipes from selected layer
Currently, show-recipes will show recipes from all configured layers.
Assume, meta-intel layer was added to conf/bblayers.conf.

Example of default $ bitbake-layers show-recipes:
core-image-rt:
  meta-intel           unknown (skipped)
  meta                 unknown (skipped)

Add -l/--layer to enable showing recipes from user selected layer.

Example: $ bitbake-layers show-recipes -l meta-intel
core-image-rt:
  meta-intel           unknown (skipped)

(Bitbake rev: 8c38d95c4474ea171cb55b0e336d9090451e89ce)

Signed-off-by: Yeoh Ee Peng <ee.peng.yeoh@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 20:30:35 +01:00
Yeoh Ee Peng
5808f455f0 bitbake: bitbake-layers: show-recipes: Show recipes only
Currently, show-recipes will show all recipes available (both
recipes with different version and recipes provided by more
than one layer).

Example of default $ bitbake-layers show-recipes:
core-image-rt:
  meta-intel           unknown (skipped)
  meta                 unknown (skipped)

yajl:
  meta-oe              2.1.0
  meta-oe              1.0.12

Add -r/--recipes-only to enable showing recipes only. This
provide a focus view on unique recipes available.

Example of $ bitbake-layers show-recipes -r:
core-image-rt (skipped)
yajl

(Bitbake rev: 048bd051a9b422a38c181f57bb5090a05684a5c3)

Signed-off-by: Yeoh Ee Peng <ee.peng.yeoh@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 20:30:35 +01:00
Peter Kjellerstedt
7e7cce5f36 tzdata: Correct the packaging of /etc/localtime and /etc/timezone
During restructuring of the packaging in 2af4d6eb (tzdata: Install
everything by default), these two files remained in the tzdata
package, which is supposed to be empty. Move them to tzdata-core where
they belong.

Also simplify the definition of CONFFILES_tzdata-core. As its value
only takes effect for files that actually exist, there is no need to
complicate its definition by checking if a file is created before
adding it to the list of configuration files.

(From OE-Core rev: 3d2d31fed64169f08c0ecfce4c07b8c7ebd052d2)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 20:30:35 +01:00
Peter Kjellerstedt
62c67d0c0d package_rpm.bbclass: Remove a misleading bb.note()
It should have been removed in 3db9d865 (classes/package_rpm.bbclass:
Enhance diagnostic messages) when it was split in two new notes.

Also change the casing of two other notes to align them with the other
notes.

(From OE-Core rev: b40e245795cd19c7d36df096fa1f30c75490ce46)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 20:30:35 +01:00
Nathan Rossi
4420f6d0c2 meson.bbclass: Handle microblaze* mapping to cpu family
(From OE-Core rev: 01692856b8294109ac553c5c0cc23dbb5f1a8970)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 20:30:35 +01:00
Richard Purdie
e9f859106c oeqa/concurrenttest: Use ionice to delete build directories
Autobuilder type infrastructure can benefit from deletion of certain files as
background IO due to the way Linux filesystem priority works.

We have problems where build directories as part of oe-selftest being
delete starves the running tasks of IO to the point builds take much
longer to compelte.

Having this option of running the deletion at "idle" helps a lot with
that. Use the new option added to bb.utils.prunedir().

(From OE-Core rev: d41e7018be56902b7a1be4590e468cd15e02a3b5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 20:30:35 +01:00
Quentin Schulz
9daa97bea8 externalsrc: stop rebuilds of 2+ externalsrc recipes sharing the same git repo
externalsrc do_configure task watches oe-devtool-tree-sha1 file and its
checksum. That file basically contains the result of `git add -A
${EXTERNALSRC} && git write-tree` which is the hash of temporary
"commit" of the non committed changes. This file is stored in the .git
directory of the git repo of the externalsrc recipe. do_configure then
depends on the checksum of oe-devtool-tree-sha1 file.

If 2+ recipes with different externalsrc paths but same git repo (e.g.
one recipe at /some/path and the other at /some/path/subdir) are parsed,
this oe-devtool-tree-sha1 will be overwritten by those recipes at
parsing time since .git is shared between those recipes.

If there is one non committed git change in /some/path but not in
/some/path/subdir, the oe-devtool-tree-sha1 of both recipes will be
different.

What will happen is that recipe1 will watch over the
oe-devtool-tree-sha1 with a specific checksum, fill in file-checksums
for do_configure correctly, then recipe2 will watch over the identically
named file with different content also fill in the file-checksums
varflag. When do_configure of recipe1 will be evaluated for
re-execution, oe-devtool-tree-sha1 will be of the value of what is
watched over by recipe2, thus triggering a rebuild of recipe1.

This behavior is not always reproducible which I'm guessing is due to a
small window between recipe1 putting info into oe-devtool-tree-sha1 and
calculating the checksum of that file and recipe2 putting its content
into oe-devtool-tree-sha1.

By appending the name of the recipe to oe-devtool-tree-sha1, we make
sure that a recipe won't have its oe-devtool-tree-sha1 overwritten by
another recipe sharing the same externalsrc git repo.

(From OE-Core rev: 1b727dd7295a7a7fe17800f8038242efbf7fe2b7)

Signed-off-by: Quentin Schulz <quentin.schulz@streamunlimited.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 20:30:35 +01:00
Richard Purdie
db5f08c16e meta-extsdk: Either an sstate task is a proper task or it isn't
Ensure the task is properly regsistered as an sstate task as this
"half way" state confuses new code in bitbake and it isn't supported.

(From OE-Core rev: 53d6cd98216e3b73c0c90e42223efd1a2b649358)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 20:30:35 +01:00
Richard Purdie
2f5cc1a8fd systemd: Handle slow to boot mips hwdb update timeouts
This is a temporary workaround to avoid autobuilder failures until
https://github.com/systemd/systemd/issues/13581 is resolved.

Its being done globally even though its a mips problem for simplicity,
it doesn't hurt anything else to have a longer timeout.

(From OE-Core rev: 101d1ea3fe2d40ddde3139952545fa7128478f66)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 15:27:02 +01:00
Jaewon Lee
88db9e41c1 populate_sdk_ext: Introduce mechanism to keep nativesdk* sstate in esdk
When doing a devtool build-sdk from within an esdk all nativesdk
components would be rebuilt. This patch introduces SDK_INCLUDE_NATIVESDK
flag to toggle the inclusion of nativesdk packages when creating the
esdk sstate

Currently locked-sigs.inc is generated during do_sdk_depends which
doesn't pull in nativesdk packages. Generating another locked-sigs.inc
in do_populate_sdk_ext and pruning it to only nativesdk* packages by
using a modified version of the already existing function
prune_locked_sigs and merging it with the current locked-sigs.inc
Also adding SDK_INCLUDE_NATIVESDK tasklistfn to the logic surrounding
setting tasklist file to not prune esdk sstate during creation

[YOCTO #13261]

(From OE-Core rev: d046afd12e1c209b29dca6ba402b9aa14680c5ce)

Signed-off-by: Jaewon Lee <jaewon.lee@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 15:27:02 +01:00
Khem Raj
b418ececee weston-init: Add possibility to run weston as non-root user
These changes are from meta-96boards primarily
Launch the session via a udev rule based on what kind of display device
is available

delete weston-conf and move the fuctionality into weston-init other
layers are doing same

weston-init installs machine specific weston.ini therefore mark is
machine specific now

(From OE-Core rev: aa3bced2e1de2f4ba507aa014835b06edccc138a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 15:27:02 +01:00
Richard Purdie
9c22a5a8a8 initramfs-framework: support PARTLABEL option
Since commit (kernel >= 4.20):
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f027c34d844013d9d6c902af8fa01a82d6e5073d
specifying rootfs by PARTLABEL is supported. This commit adds support to
specify root by GPT partition label.

RP: [Fixup to match v2 of the patch]

(From OE-Core rev: 6901b7840dd9429064003ab939ba7e5cca5dc37f)

Signed-off-by: Diego Rondini <diego.rondini@kynetics.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 13:09:22 +01:00
Joshua Watt
ec33280c00 classes/archiver: Fix WORKDIR for shared source
When archiving patched source, WORKDIR should only be changed to
${ARCHIVER_WORKDIR} if the recipe doesn't use a shared work directory.
This matches the behavior of do_unpack_and_patch for these recipes.

This fixes kernel recipes that set S = "${WORKDIR}/git"

(From OE-Core rev: e3caee8f86f2cca1d052f1f1b233018a3d4baa97)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:33 +01:00
Adrian Bunk
9cbfaf790f libmpc: Remove dead UPSTREAM_CHECK_URI
(From OE-Core rev: c9f474e654434fec136315fb647c3c6c518d158d)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:33 +01:00
Adrian Bunk
b2506dc913 squashfs-tools: Remove UPSTREAM_CHECK_COMMITS
Upstream is making releases again.

(From OE-Core rev: e2939592165034d59dd4841f6cb8c9fbfee21f27)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:33 +01:00
Adrian Bunk
f700a98f20 lttng-ust: Upgrade 2.10.4 -> 2.10.5
Remove patch for issue fixed upstream.

(From OE-Core rev: 1c8201da33174368fe7143047147d7c5aab0d224)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Adrian Bunk
c2f785f716 lttng-modules: Upgrade 2.10.10 -> 2.10.11
(From OE-Core rev: daf55a989c8bb4a559d75c30ed85b135ec14d5fd)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Adrian Bunk
714db4a850 glib-2.0: Upgrade 2.60.6 -> 2.60.7
(From OE-Core rev: 1975c05b60fec0e012d4a23e3785acec9e976951)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Diego Rondini
4b3656a978 initramfs-framework: support PARTLABEL option
Since commit (kernel >= 4.20):
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f027c34d844013d9d6c902af8fa01a82d6e5073d
specifying rootfs by PARTLABEL is supported. This commit adds support to
specify root by GPT partition label.

(From OE-Core rev: e714b8982c2decbc24598af46f44c3a94834591f)

Signed-off-by: Diego Rondini <diego.rondini@kynetics.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Peter Kjellerstedt
fc94afe15e glibc: Make it build without ldconfig in DISTRO_FEATURES
The removal of the supposedly empty /etc when ldconfig is not in
DISTRO_FEATURES seems to be a remnant from a long time ago when nothing
else was installed in /etc. However, that is no longer the case as,
e.g., nscd.conf is always installed to /etc now.

(From OE-Core rev: f66c02130d11154088d86c96fedd88e9d2bca723)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Nathan Rossi
d785e295d5 cmake: 3.15.2 -> 3.15.3
Update to fix issues with Boost 1.71.0, see pull request:
  https://gitlab.kitware.com/cmake/cmake/merge_requests/3763

(From OE-Core rev: 89251c2227c38b528b52d56a59ffbe44f1af9cd3)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Ross Burton
038b012081 opkg-utils: respect SOURCE_DATE_EPOCH when building ipkgs
Backport a patch from upstream to respect SOURCE_DATE_EPOCH when building ipkgs,
to ensure reproducible archives.

(From OE-Core rev: d50d52188cee7ccc0f40f0bba6da1084410b81cf)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Hector Palacios
eba5dcddfa udev-extraconf: skip mounting partitions already mounted by systemd
For some devices, udev may sometimes trigger twice the 'add' rule during
boot. Calling the mount.sh script twice will eventually fail for
already mounted partitions, but in that case, the script tries to remove
the created mountpoint, when it shouldn't.
This has been observed on USB sticks connected to a USB hub and may
result in devices not being mounted if plugged-in before booting.

This patch checks for already mounted partitions earlier (before creating
the mount point) and returns with no actions.

(From OE-Core rev: 4cf076879ac038ebf76679a19249ea6363e63e0f)

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Ross Burton
9ad35b8707 systemd-systemctl-native: don't care about line endings
It's possible for a service file to accidentally contain mixed line endings, but
the string cleanup code was assuming Unix endings.

[ YOCTO #13535 ]

(From OE-Core rev: 7aaa9200b5ba2cba92ee1ed7003d54848498b37d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Ross Burton
f3977f03a1 rootfs-postcommands: check /etc/gconf exists before working on it
Check that /etc/gconf exists before trying to find files under it, to avoid
writing find error messages to the rootfs log.

Also use ${sysconfdir}/gconf instead of hardcoding /etc/gconf.

(From OE-Core rev: 70a77b91031388ea29eff6b8885fd25cc35b1dae)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Ross Burton
c5717f3515 libinput: upgrade 1.14.0 -> 1.14.1
(From OE-Core rev: 58aa346673428132dacbc4cd060106b23c8edd71)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Changqing Li
0f866a92e1 report-error.bbclass: add local.conf/auto.conf into error report
sometimes, it is not enough to reproduce a failed build with current
info on error reports web, add local.conf/auto.conf into error
report to make it more easier to reproduce failed build

Note: this need work together with change in repo error-report-web,
which will display local.conf and auto.conf as Error Details

[YOCTO #13252]

(From OE-Core rev: 7adf9707c04d8ef6bcd8d8bda555687f705e6ee6)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Armin Kuster
9a6cfc0fee gcc: Security fix for CVE-2019-15847
Affects <= 9.2.0

Dropped Changelog changes.

(From OE-Core rev: 4d56cf8743270c1998e8cb1524881a36de982c39)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Ross Burton
e5829f3594 piglit: upgrade to latest revision
(From OE-Core rev: a77e6e53fea7fa11ba174c1b6f2bcbcac920e337)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Ross Burton
d8719f43cd gdk-pixbuf: upgrade 2.38.1 -> 2.38.2
(From OE-Core rev: d19bf3cc766c38da67dd9b7fbbf3df257c2902c9)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Ross Burton
a1e8f13768 acpica: upgrade 20190509 -> 20190816
(From OE-Core rev: 0fdc0ea0c10f9248d6503c91c864a4844d1d74bd)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Dmitry Eremin-Solenikov
4ad3130c20 live-vm-common.bbclass: provide efi population functions for live images
Define common functions for populating EFI directories in live image by
reusing common code from grub-efi and systemd-boot bbclasses.

(From OE-Core rev: 3728899a0cd543793db258da0976362b4bde7133)

Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin-solenikov@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Dmitry Eremin-Solenikov
94df595512 systemd-boot.bbclass: switch to image-uefi.conf
Use variables from image-uefi.conf instead of hardcoding them in the class.

(From OE-Core rev: 094c272a74b4963ea5c010b9701bb83fa799a558)

Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin-solenikov@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Dmitry Eremin-Solenikov
6501eacfa2 systemd-boot: switch to image-uefi.conf
Use variables from image-uefi.conf instead of hardcoding them in the recipe.

(From OE-Core rev: 4acac3560cb819e0cd992e02441621dab1beada7)

Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin-solenikov@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Dmitry Eremin-Solenikov
a1acf2c150 grub-efi.bbclass: switch to image-uefi.conf
Use variables from image-uefi.conf instead of hardcoding them in the
class.

(From OE-Core rev: 8d15c015d2498d541a6e52fc4e7553e692ff3ac5)

Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin-solenikov@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Dmitry Eremin-Solenikov
1762dacb9b grub-efi: switch to image-uefi.conf
Use variables from image-uefi.conf instead of hardcoding them in the
recipe.

(From OE-Core rev: e6bb6d31c4285a62b3e9e324c36b2baf439e7bae)

Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin-solenikov@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Dmitry Eremin-Solenikov
b59c427720 grub-bootconf: switch to image-uefi.conf
Use variables from image-uefi.conf instead of hardcoding them in the
recipe.

(From OE-Core rev: b5a97272ba201537a766598d9c9a97c8cbc9ea1d)

Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin-solenikov@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Dmitry Eremin-Solenikov
f6fa0f4384 image-uefi.conf: add config file holding configuration for UEFI images
Create new config file defining common variables for all UEFI-related
packages (bootloaders, test applications, etc).

(From OE-Core rev: 9c4945f1f0607c89e7cb10dda41ab742e169c075)

Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin-solenikov@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-19 10:54:32 +01:00
Mikko Rapeli
330bd591ec bitbake: svn fetcher: allow "svn propget svn:externals" to fail
Not all servers and repositories have this property set
which results in failures like this when actual svn checkout
command succeeded:

svn: warning: W200017: Property 'svn:externals' not found on ''
svn: E200000: A problem occurred; see other errors for details

(Bitbake rev: 238636f033cbf18e5741f0ea0e64db40e84f5838)

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 17:52:01 +01:00
Joshua Watt
20f032338f bitbake: bitbake: Rework hash equivalence
Reworks the hash equivalence server to address performance issues that
were encountered with the REST mechanism used previously, particularly
during the heavy request load encountered during signature generation.
Notable changes are:

1) The server protocol is no longer HTTP based. Instead, it uses a
   simpler JSON over a streaming protocol link. This protocol has much
   lower overhead than HTTP since it eliminates the HTTP headers.
2) The hash equivalence server can either bind to a TCP port, or a Unix
   domain socket. Unix domain sockets are more efficient for local
   communication, and so are preferred if the user enables hash
   equivalence only for the local build. The arguments to the
   'bitbake-hashserve' command have been updated accordingly.
3) The value to which BB_HASHSERVE should be set to enable a local hash
   equivalence server is changed to "auto" instead of "localhost:0". The
   latter didn't make sense when the local server was using a Unix
   domain socket.
4) Clients are expected to keep a persistent connection to the server
   instead of creating a new connection each time a request is made for
   optimal performance.
5) Most of the client logic has been moved to the hashserve module in
   bitbake. This makes it easier to share the client code.
6) A new bitbake command has been added called 'bitbake-hashclient'.
   This command can be used to query a hash equivalence server, including
   fetching the statistics and running a performance stress test.
7) The table indexes in the SQLite database have been updated to
   optimize hash lookups. This change is backward compatible, as the
   database will delete the old indexes first if they exist.
8) The server has been reworked to use python async to maximize
   performance with persistently connected clients. This requires Python
   3.5 or later.

(Bitbake rev: 2124eec3a5830afe8e07ffb6f2a0df6a417ac973)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 17:52:01 +01:00
Joshua Watt
34923e4f77 Remove SSTATE_HASHEQUIV_SERVER
Removes all references to the SSTATE_HASHEQUIV_SERVER variable. This
variable is redundant now that BB_HASHSERVE is present.

(From OE-Core rev: 54b3adb6bc90a8e4b9e92952688772ee074d36e5)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 17:52:01 +01:00
Joshua Watt
f12e41c1bb sstatesig: Update server URI
The server no longer uses a "http://" URI, since it has been updated to
use a different protocol.

(From OE-Core rev: 519561172c48bc7f7a61a3d02edd418fc0895b7b)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 17:52:01 +01:00
Alexander Kanavin
b009e68ede strace: add a timeout for running ptests
5.2 kernel has introduced a significant performance regression
where some of the tests take many minutes to complete (where
previously it was seconds). While we're getting to the bottom
of the issue and working with upstream to resove it, this
change allows tests to proceed instead of getting stuck and
eventually timing out.

https://bugzilla.yoctoproject.org/show_bug.cgi?id=13506

(From OE-Core rev: 36670f3989ef129d285b2a17c289f8fc7a44b320)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Khem Raj
53b5654d6e openssl: Enable os option for with-rand-seed as well
with openSSL 1.1.1d we start seeing errors like

Error Generating Key
139979727451584:error:2406C06E:random number generator:RAND_DRBG_instantiate:error retrieving entropy:../openssl-1.1.1d/crypto/rand/drbg_lib.c:342:

when using openssl from openssl-native on build hosts, this is due to
limiting the random seed to devrandom, to support older hosts, since the
option allows to have a comma separated list of methods to try, we can
try the default first and if that fails then fallback to devrandom, this
will ensure that it keeps working with build systems which dont support
getrandom()

(From OE-Core rev: 8b4edb8552b238680d8dcef565e830a8e28a223c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Adrian Bunk <bunk@stusta.de>
Cc: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Andrew F. Davis
c627018fbe weston: Set depends to the virtual needed not explicitly on Mesa
The dependency is for EGL and GLES2 libraries. On some systems these
are not provided by Mesa, list what is actually needed so the system
can choose the correct provider.

(From OE-Core rev: 8c39aa80e3624a225abfa76d459b6ce4da259b64)

Signed-off-by: Andrew F. Davis <afd@ti.com>
Acked-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Andrew F. Davis
cf96e062db gtk+3: Set depends to the virtual needed not explicitly on Mesa
The dependency is for EGL and GLES2 libraries. On some systems these
are not provided by Mesa, list what is actually needed so the system
can choose the correct provider.

(From OE-Core rev: 83877206bd0ddc453cf3646e998296278d4a62f0)

Signed-off-by: Andrew F. Davis <afd@ti.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Andrew F. Davis
31697ebec7 cogl: Set depends to the virtual needed not explicitly on Mesa
The dependency is for EGL and GLES2 libraries. On some systems these
are not provided by Mesa, list what is actually needed so the system
can choose the correct provider.

(From OE-Core rev: 12f887e26c5959ce07af658d3cf8c62fe889744a)

Signed-off-by: Andrew F. Davis <afd@ti.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Ross Burton
b1cb787c74 libical: upgrade to 3.0.6
(From OE-Core rev: 358b5f94a3d3faf7713530d0159e6e999175b2e0)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Richard Purdie
cf37ca58c2 runqemu: Mention snapshot in the help output
This is a useful option but not documented in the help text.

(From OE-Core rev: 95bad67a802f956082bd0af5615c1dbaae01be0f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Oleksandr Kravchuk
2625e2d914 python3-dbus: update to 1.2.12
(From OE-Core rev: f53dda53067ba7d17317e54cdec7b07f693158bd)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Andrew F. Davis
0e599227ee libepoxy: Disable x11 when not building for x11
Although glx support is turned off, the build still tries to pull in some
x11 components, disable x11 explicitly.

(From OE-Core rev: a96272dc0b5b6b76a4858981461f3bd126dc99b3)

Signed-off-by: Andrew F. Davis <afd@ti.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Andre McCurdy
6133a8ef25 libunwind: apply configure over-ride to both big and little endian ARM
(From OE-Core rev: d55fc868f3fef206628b7c353737aa666baf8c95)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Andre McCurdy
3db7ba108e initscripts: enable alignment.sh init script for big endian ARM
(From OE-Core rev: 2e00755bf231f1de5ab96ee5de0859cb0930d544)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Andre McCurdy
172557016f libwebp: apply ARM specific config options to big endian ARM
(From OE-Core rev: ec28979f473896a06620dc1a76898e52136c4b44)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Andre McCurdy
06f3ae673b ffmpeg: add PACKAGECONFIG controls for alsa and zlib (enable by default)
Also move the libogg dependency to the theora PACKAGECONFIG, since
according to the configure script, theora is the specific component
which requires it.

(From OE-Core rev: 7ddfb9374f493bb1cc42a204c80e783baa288152)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Andre McCurdy
8f38568a64 busybox: rcS and rcK should not be writeable by everyone
(From OE-Core rev: 917789ab3c61784ca7b3cdef6b76ff091abcf8c1)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Andre McCurdy
f2b682e001 base-files: drop legacy empty file /etc/default/usbd
Doesn't seem to be referenced by anything in oe-core any more.

(From OE-Core rev: 526188096bc37af3140c9210ece92ed94c3bdfe0)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-18 12:09:02 +01:00
Richard Purdie
f025010ee0 bitbake: runqueue/siggen: Optimise hash equiv queries
We only have hash equivalence for setscene tasks so only query the server
for those, reducing the number of connections needed.

(Bitbake rev: 22082c7b3ca0cffcedb7d1d8c6681d35286376db)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Martin Jansa
85f8e4c04a bitbake: Revert "bitbake: cooker: Ensure bbappends are found in stable order"
This reverts commit 94c0c7f15c7a6244a8576ed948ffc21afb96ba82.

This ignores the layer priority, making the issue much worse.
E.g. I'm seeing a lot of failures caused by missing users, because
base-passwd bbappends applied in unexpected order caused different
passwd.master to be found in re-ordered FILESPATH.

(Bitbake rev: 2dc862237dba82da37c8ac9289e0a21409b1305c)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Yi Zhao
48c9259eae grub: remove diffutils and freetype runtime dependencies
The diffutils runtime dependency was introduced from legacy grub since
the script grub-install invokes cmp command which is from diffutils
package. But in Grub2 the grub-install has been rewritten with C
language. So this package isn't needed anymore.

The freetype runtime dependency is for grub-mkfont but we have
explicitly disabled grub-mkfont build. It is safe to remove it.

(From OE-Core rev: 56e4e05417f8ddba60a8b76fa4c8834aa8ea4692)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Mikko Rapeli
224355418b busybox.inc: handle empty DEBUG_PREFIX_MAP
DEBUG_PREFIX_MAP can be empty if e.g. old clang
toolchain doesn't support the default poky values for gcc.

Fixes build failure:

ERROR: Logfile of failure stored in: /home/builder/src/base/build/tmp/work/aarch64-poky-linux/busybox/1.31.0-r
0/temp/log.do_configure.14451
Log data follows:
| DEBUG: Executing shell function do_configure
| sed: -e expression #1, char 0: no previous regular expression
| WARNING: exit code 1 from a shell command.
| ERROR: Execution of '/home/builder/src/base/build/tmp/work/aarch64-poky-linux/busybox/1.31.0-r0/temp/run.do_configure.14451' failed with exit code 1:
| sed: -e expression #1, char 0: no previous regular expression
| WARNING: exit code 1 from a shell command.
|

This log entry is really useless for debugging problems so
add "set -x" to the configure script so that details can be seen
if something isn't working.

(From OE-Core rev: 20f1a454317ddff8a2e321c1fe55d086ff6fa286)

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Adrian Bunk
2c6b9b918c openssl: Upgrade 1.1.1c -> 1.1.1d
Backported patches removed.

(From OE-Core rev: 24174c6dafefec4ff3bd79b3c871b17cbfa3e840)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Changqing Li
da61ee5541 classextend.py: don't extend file for file dependency
Fix error like:
lib32-e2fsprogs-1.45.3-r0 do_package_qa: QA Issue: /usr/sbin/e2scrub_all
contained in package lib32-e2fsprogs-e2scrub requires /bin/bash,
but no providers found in RDEPENDS_lib32-e2fsprogs-e2scrub

For some lib32 packages(eg: lib32-bash, lib32-sed) which probvides files,
extend is not needed

Eg: RPROVIDES of lib32-bash expects to have /bin/bash, with original
extend, it will become lib32-/bin/bash, then will cause above error

Fix by don't extend file dependency, and skip multilib check for file dependency
in do_package_qa to avoid error like:
WARNING: lib32-bash-5.0-r0 do_package: QA Issue: lib32-bash package lib32-bash
 - suspicious values '/bin/bash /bin/sh' in RPROVIDES [multilib]

(From OE-Core rev: a9163120ed52534e7dbf4db50dc2b03bbf69f06b)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Oleksandr Kravchuk
0b7320b4d3 curl: update to 7.66.0
(From OE-Core rev: dec1616af9c2709c2ad78722cc4075b765de332d)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Scott Murray
2e79c06bea systemd: upgrade to 243
PATCH REBASED:
==============
0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch
0001-do-not-disable-buffer-in-writing-files.patch
0002-use-lnr-wrapper-instead-of-looking-for-relative-opti.patch
0004-add-fallback-parse_printf_format-implementation.patch
0004-rules-whitelist-hd-devices.patch
0005-rules-watch-metadata-changes-in-ide-devices.patch
0005-src-basic-missing.h-check-for-missing-strndupa.patch
0006-Include-netinet-if_ether.h.patch
0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not.patch
0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch

PATCH DROPPED:
==============
0001-Replace-the-legacy-ULONG_LONG_MAX-with-the-C99-ULLON.patch
0001-src-udev-udev-event.c-must-include-sys-wait.h.patch
0023-socket-util.h-include-string.h.patch
0025-fs-utilh-add-missing-sys-stat-include.patch

PATCH ADDED:
============
0002-src-login-brightness.c-include-sys-wait.h.patch
0003-src-basic-copy.c-include-signal.h.patch
0004-src-shared-cpu-set-util.h-add-__cpu_mask-definition.patch

Also applied libc-glibc over-ride to pkg_postinst and pkg_prerm function
definitions, as musl does not provide nsswitch.conf.

(From OE-Core rev: cd735ab1df78f7d21b6bb18bdf4707aec68a0295)

Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Khem Raj
d84e9f446a nativesdk.bbclass: Clear out LIBCEXTENSION and ABIEXTENSION
These variables dont make sense for nativesdk targets which essentially
are target only properties, this helps in avoiding recompile of
nativesdk-libgcc-initial when switch libcs. nativesdk targets are glibc
only for OE

(From OE-Core rev: aff2d1264030a8061fc1b31dae0f369bfd76826b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Tim Blechmann
d9efbd2c3c icecc: blacklist pixman
pixman declares prng_state as `omp threadprivate`, causing linker errors:
prng_state: TLS reference mismatches non-TLS reference

(From OE-Core rev: a95953fccc7c05650710e45103c3e9fa06d1ff4d)

Signed-off-by: Tim Blechmann <tim@klingt.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Khem Raj
610056167b populate_sdk_base.bbclass: nativesdk-glibc-locale is required on musl too
musl based extensible sdk fails to install

ERROR:  OE-core's config sanity checker detected a potential misconfiguration.
    Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).
    Following is the list of potential problems / advisories:

    Your system needs to support the en_US.UTF-8 locale.

The real reason is that its missing locale-archive in buildtools-tarball
hence python3 from buildtools-tarball fails to run bitbake when
installing esdk

(From OE-Core rev: c6e8e13f910544b2a4435d8b9e6dbc65847ef182)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Khem Raj
d2096315b6 glibc: Move DISTRO_FEATURE specific do_install code for target recipe only
nativesdk-glibc should be spared of recompile when the distro features
are changed e.g. ldconfig is not in
DISTRO_FEATURES, this happens when sdk with musl and another one with
glibc is built

Fixes
Variable do_install value changed:
...
-DISTRO_FEATURES{ldconfig} = Set
+DISTRO_FEATURES{ldconfig} = Unset

(From OE-Core rev: e7af0204e6051489ef5646fbca2509a42e04bb72)

Signed-off-by: Khem Raj <raj.khem@gmail.com>

s

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Oleksandr Kravchuk
ded579aeb6 expat: update to 2.2.8
(From OE-Core rev: a5cc0a051b5a7871ab646c055883167315a32417)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Ross Burton
1cab88782d oeqa/selftest/imagefeatures: dump the JSON if it can't be parsed
(From OE-Core rev: 4f7c840349f576f3edb68b16f9bcc9d88bc73b36)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Ross Burton
eed89d027d oeqa/selftest/wic: improve assert messages in test_fixed_size
(From OE-Core rev: ff4e6c71ac415de93b3abaa4e7f1727d72cd2971)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Khem Raj
d7d9dd56b4 musl: Update to latest master
* Added copy_file_range posix_spawn_file_actions_add[f]chdir API
* optreset is added to getopt
* pthread fixes
* Conditionally add legacy long definition of wchar_t

Details [1]

[1] https://git.musl-libc.org/cgit/musl/log/?qt=range&q=6ad514e4e278f0c3b18eb2db1d45638c9af1c07f..1f0e9f9cc2e3fa354f94e18b3b362de5f1ec7272

(From OE-Core rev: 030b44af19268ae4a72bb25aa77526f7e39bd4a3)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Ross Burton
7981d54fe6 adwaita-icon-theme: fix rare install race
There have been rare errors during the build of adwaita-icon-theme, such as:

Exception: bb.process.ExecutionError: Execution of '.../temp/run.sysroot_stage_all.45186' failed with exit code 2:
cpio: ./icons/Adwaita/32x32/legacy/_inst.34160_: Cannot stat: No such file or directory
cpio: ./icons/Adwaita/32x32/legacy/_inst.33428_: Cannot stat: No such file or directory
cpio: ./icons/Adwaita/32x32/legacy/_inst.35421_: Cannot stat: No such file or directory
cpio: ./icons/Adwaita/32x32/legacy/_inst.34533_: Cannot stat: No such file or directory
cpio: ./icons/Adwaita/32x32/legacy/_inst.35366_: Cannot stat: No such file or directory

The problem was that a previous optimisation (oe-core cd9af17028) to massively
increase the install speed (by parallelling the hundreds of installs) was subtly
wrong.  It was essentially doing this:

  for i in list; do
    install i &
  done
  wait

In pure shell this does parallelise the install commands and then wait for them
all to finish before exiting, but in Makefiles *each line in a separate shell*.  The actual Makefile is closer to this:

  for i in list; do \
    install i & \
  done
  wait

The backslashes are required to write a multi-line for loop in a Makefile, but
note that when the loop ends the shell exits and all of the install processes
that are still running are disowned.  The wait command then executes in a new
shell, and there are no childen to wait for.

The fix is trivial: add more backslashes so that the wait is part of the same
shell.

(From OE-Core rev: f969a8ff160390726565421d4c9b367e49172487)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Martin Jansa
92469aad50 perf: fix build on kernels which don't have ${S}/tools/include/linux/bits.h
* tools/include/linux/bits.h was added in v4.20-rc1 with this commit:
  commit ba4aa02b417f08a0bee5e7b8ed70cac788a7c854
  Author: Arnaldo Carvalho de Melo <acme@redhat.com>
  Date:   Tue Sep 25 10:55:59 2018 -0300

    tools include: Adopt linux/bits.h

* also if you're building for such older kernel you will probably see
  do_compile failing with:
  | config/Makefile:448: Missing perl devel files. Disabling perl scripting support, please install perl-ExtUtils-Embed/libperl-dev
  | config/Makefile:495: Python 3 is not yet supported; please set
  | config/Makefile:496: PYTHON and/or PYTHON_CONFIG appropriately.

  easiest work around is to disable scripting PACKAGECONFIG, because
  since oe-core commit:

  commit 584af667e0000129bcb5c9e8108485f2f6590eaf
  Author: Bruce Ashfield <bruce.ashfield@gmail.com>
  Date:   Wed Aug 28 22:14:41 2019 -0400

    perf: change dependencies on python to python3

    The upstream kernel can now handle python3 for the perf scripts, coupled
    with the impending EOL of python2, we switch the dependencies in perf
    (scripting) to python3.

  it now uses python3, but the support for that was added in kernel
  v4.17-rc1 with:

  commit 66dfdff03d196e51322c6a85c0d8db8bb2bdd655
  Author: Jaroslav Skarvada <jskarvad@redhat.com>
  Date:   Fri Jan 19 21:56:41 2018 +0100

    perf tools: Add Python 3 support

    Added Python 3 support while keeping Python 2.7 compatibility.

  if you really need scripting support than either backport the kernel
  patch to your kernel or undo the perf recipe changes.

(From OE-Core rev: d6ee3d3bdf183a9060b5b0c25b97688a4b9d40dc)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Maxime Roussin-Bélanger
680af4cb94 meta: add missing descriptions and homepage in bsp
(From OE-Core rev: ec4fdfcc7bcbc9bb92e2f33b37cc8c99bf1b6822)

Signed-off-by: Maxime Roussin-Bélanger <maxime.roussinbelanger@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Andre McCurdy
8202a9ac6a busybox-inittab: minor formatting tweaks
Add an empty line to inittab before the line(s) which start getty.

Also cleanup indent in recipe do_install().

(From OE-Core rev: d1955596080f8261efe3b21c5df005648ce207c9)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Andre McCurdy
24264cefad busybox: drop inittab from SRC_URI ( now moved to busybox-inittab )
The reference to inittab should have been removed from busybox
SRC_URI when the file was moved into the busybox-inittab recipe:

  http://git.openembedded.org/openembedded-core/commit/?id=afb09abd2f0f7555ba156260a87fd3867f591310

(From OE-Core rev: 1840523749ae7cbc39d89363662641fdda15d7d4)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:45 +01:00
Andre McCurdy
f6158dcd88 busybox: drop unused mount.busybox and umount.busybox wrappers
(From OE-Core rev: 7e999dce323a97a3924cb10158d5151ea43e777a)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Oleksandr Kravchuk
c19ba131cf font-util: update to 1.3.2
(From OE-Core rev: 04e2b1cc2ae66402a8fca723cec57220cddd07e6)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Daniel Gomez
f81cdf4588 lttng-modules: Add missing SRCREV_FORMAT
When using devupstream class the SRCREV_FORMAT variable must be set.

(From OE-Core rev: 5d27db85d269f576929fd3c81f94e54d894cdf69)

Signed-off-by: Daniel Gomez <daniel@qtec.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Nathan Rossi
9654327307 glibc-testsuite: SkipRecipe if libc is not glibc
To prevent issues with parsing or dependencies, limit this recipe to use
only when the libc is glibc (and libc-locale is glibc-locale).

(From OE-Core rev: 88849a0652f1a9cffd5c1b5caae2878b3a438273)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Jack Mitchell
bc66b2f45a iptables: add systemd helper unit to load/restore rules
There is currently no way to automatically load iptables rules in OE.
Add a systemd unit file to automatically load rules on network
connection. This is cribbed from the way ArchLinux handles iptables with
some minor modifications for OE.
New rules can be generated directly on the target using:
# iptables-save -f /etc/iptables/iptables.rules
Good documentation for writing rules offline is lacking, but the basics
are explained here:
https://unix.stackexchange.com/q/400163/49405

(From OE-Core rev: 76d3574d17c38d93ba4660bdae5730ac222994d4)

Signed-off-by: Jack Mitchell <jack@embed.me.uk>
Signed-off-by: Diego Rondini <diego.rondini@kynetics.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Limeng
1edc497a80 tune-cortexa57-cortexa53: add tunes for ARM Cortex-A53-Cortex-A57
commit 3613b2780a6b5d5d70ea6802be5060a8214cbdb5 from
git://github.com/renesas-rcar/meta-renesas

The renesas rcar SoC H3/M3 is big.LITTLE architecture(cortex-a57.cortex-a53).
In order to optimize the performance of the code running on SoC H3/M3,
add a tune file for ARM Cortex-A53-Cortex-A57.
Create this tune file by refering GCC doc, 3.18.5 ARM Options.

(From OE-Core rev: 7e0c9290a9971b92bcb313742f126ca7488d91c3)

Signed-off-by: Meng Li <Meng.Li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Robert Yang
6606a86979 conf/multilib.conf: Add ovmf to NON_MULTILIB_RECIPES
Fixed:
MACHINE = "qemux86-64"
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"

$ bitbake ovmf lib32-ovmf
[snip]
ERROR: ovmf-edk2-stable201905-r0 do_deploy_setscene: The recipe ovmf is trying to install files into a shared area when those files already exist.
 Those files and their manifest location are:
  /buildarea1/lyang1/rebase-work/test_cc/tmp-glibc/deploy/images/qemux86-64/OvmfPkKek1.key
    (matched in manifest-qemux86_64-lib32-ovmf.deploy)
[snip]

Add it NON_MULTILIB_RECIPES to fix the problem since it is a firmware, build
multilib for it doens't make much sense.

(From OE-Core rev: 5c685f55ccba9d47a79e8798903b30b90bdf03c6)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Alexander Kanavin
63f08ef496 runqemu: decouple gtk and gl options
This will allow not having to multiply these options for the sdl
frontend, instead combining them as needed.

(From OE-Core rev: 922eb5012364b1603338cfa617712b941e892bbf)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Khem Raj
f461ae8b4d cogl: Do not depend PN-dev on empty PN
Fixes image build error e.g.

 - nothing provides cogl-1.0 = 1.22.4-r0.2 needed by cogl-1.0-dev-1.22.4-r0.2.core2-64

(From OE-Core rev: 70cb0c87a9e1d1001320d771fb84b5d8541591a3)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Oleksandr Kravchuk
4c1946e3cf python3-pygobject: update to 3.34.0
(From OE-Core rev: b9280a3055fba5567f670e6c3190771bd4c5fe64)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Randy MacLeod
09cfb218cb valgrind: disable 256 ptests for aarch64
On qemuarm64 systems, about half of the valgrind tests fail and
often result in defunct processes, eg:
   root       819   818 25 00:12 pts/0    00:01:52 /usr/bin/valgrind --command-line-only=yes --memcheck:leak-check=no --tool=memcheck -q --track-origins=
   root       861   420  0 00:13 pts/0    00:00:00 [sh] <defunct>
Eventually these processes use so much memory that the
out of memory killer runs.

Hide the tests that fail as a horrid work-around until the
root cause has been resolved since this at least allows the
ptest run to complete. This work-around is done in the run-ptest
script using a sorted list of tests so that they can be easily
restored one by one without a rebuild during testing.

With core-image-minimal on qemuarm64:
Recipe         | Passed      | Failed   | Skipped   | Time(s)
valgrind       | 333         | 49       | 17        | 7637

(From OE-Core rev: 208023f8fcbf4aee34544a80f962ae25f25ffb8d)

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Randy MacLeod
997d91f608 valgrind: ptest improvements to run-ptest and more
Make some changes to the run-ptest script:
  - after main tests run integrity check like the pkg Makefile.
  - aesthetic and ordering changes

Add the .in_place directory and its contents which allows valgrind
to be run in-place thereby enabling the gdbserver_tests to
complete rather than hang. Unfortunately directory paths embedded
in binaries still cause many of these test to fail.

Add the exp-sgcheck tests.

With core-image-minimal on qemux86-64/kvm:
Recipe         | Passed      | Failed   | Skipped   | Time(s)
before         | 648         | 12       | 60        | 1541
after          | 662         | 20       | 38        | 1429
ppc-no-gdbserv | 415         | 196      | 34        | 10689

Since fewer tests timeout, the overall time has decreased.
With core-image-sato on qemux86-64/kvm the results are now
the same as core-image-minimal.

qemuppc/arm64 runs result in the oom-killer eventually running since
some processes do not terminate properly and accumulate as defunct
processes in memory. Without the gdbserver_tests, the tests
complete without defunct process or the oom-killer running for
ppc but not for arm64.

(From OE-Core rev: 6dbaaeec17eae8329031188b688b33306a871870)

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Randy MacLeod
3b83ad5830 valgrind: make a few more ptests pass
Adjust two memcheck vgtest files to deal with relative paths
that are in test executables when cross-compiling.
Add libgomp to enable OpenMP tests.
Add the bz2 executable for memcheck/tests/vcpu_bz2.

(From OE-Core rev: f75792b28e39e4c393c0a00369d5417e3af75b36)

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Randy MacLeod
ecb8b17efc valgrind: enable ~500 more ptests
Add valgrind's top level config.h to the ptest package since
it is used by several scripts to determine which tests to run.

Drop the removal of:
   none/tests/shell,
the content was already moved to:
   none/tests/scripts/shell
so the filter useless and the files no longer cause a problem.

Add a few more test directories that had been omitted.
Add perf/bigcode for test: none/tests/bigcode

Leave .c, .h, .S files in the ptest image since several of them are
needed to run the tests. The overhead is ~13 MB which is high but
keeping all test code is easier than figuring out which source files
are needed and the entire valgrind-ptest package is ~115 MB so in
this context it's an acceptable trade-off.

Add bash dependency for ptest for none/tests/scripts/shell

With core-image-minimal on qemux86-64/kvm:
Recipe         | Passed      | Failed   | Skipped   | Time(s)
before         | 149         | 1        | 9         | 663
after          | 648         | 12       | 60        | 1541

(From OE-Core rev: 083a5dd27d305ecd12214f2665460dbe06b96c2a)

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Li Zhou
fb5556a4b6 qemu: Security Advisory - qemu - CVE-2019-15890
Backporting patch from
https://gitlab.freedesktop.org/slirp/libslirp/commit/c5927943
to solve CVE-2019-15890.

(From OE-Core rev: 2cccc685cc6359595ef3e943cd03290d8c8866f0)

Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Alistair Francis
1e1ad26a55 gdb: Mark gdbserver as ALLOW_EMPTY for riscv32
riscv64 already has gdbserver set as ALLOW_EMPTY, so let's set it for
riscv32 as well.

(From OE-Core rev: 21e748d620022a75c0c2d0ab4a763a5992e8f154)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Jiang Lu
64afc8935f libsoup:enable libsoup build as native package
Enable libsoup build as a native package, for it may invoked by
other native package, such as ostree.

(From OE-Core rev: 86e654ce051d4067d1601d68ad5f4729ab3d462f)

Signed-off-by: Jiang Lu <lu.jiang@windriver.com>
Signed-off-by: Liwei Song <liwei.song@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Jiang Lu
b161ac6c6c glib-networking:enable glib-networking build as native package
Enable glib-networking build as a native package, for it is depended
by libsoup.

(From OE-Core rev: bfcc9680fbc8a79f114fd66b8a6f9befb4676817)

Signed-off-by: Jiang Lu <lu.jiang@windriver.com>
Signed-off-by: Liwei Song <liwei.song@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Jason Wessel
7ae68c580c gnupg: Extend -native wrapper to fix gpgme-native's gpgconf problems
The gpg commit signing in ostree-native doesn't work properly when
running from sstate.  The ostree-native is linked with gpgme-native's
libraries, which have calls into gpg.

Ultimately it turned out the problem was that gpgme calls gpgconf and
some of the other gnupg-native binaries directly.  Not all the
binaries have a wrapper which sets the environment variable GNUPG_BIN.
Without this wrapper these binaries it gets the path assignment from
the original compilation which causes a fault when running from sstate
in a new tmp directory because these paths will not exist.

(From OE-Core rev: f93bf3bd051923618ce3949d5686fdb8cf998645)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Yi Zhao
100bf17470 nfs-utils: fix nfs mount error on 32bit nfs server
There is a client side error "Stale file handle" when mounting from a
nfs server running on 32bit arch.

Steps to reproduce:
1. $ MACHINE=qemux86 bitbake core-image-sato
2. $ runqemu qemux86 kvm nographic qemuparams="-m 1024"
3. $ echo "/nfs_root *(insecure,rw,async,no_root_squash,no_subtree_check)" \
     >> /etc/exports
   $ /etc/init.d/nfsserver restart

  root@qemux86:~# mount -t nfs 127.0.0.1:/nfs_root /mnt
  mount: mounting 127.0.0.1:/nfs_root on /mnt failed: Stale file handle

Backport a patch to fix this issue.

(From OE-Core rev: 727e6ce1f904abf1a1059fde759c3aaea37de199)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Zang Ruochen
631f3dc9be timezone:upgrade 2019b -> 2019c
-tzdata : upgrade from 2019b to 2019c.

-tzcode-native : upgrade from 2019b to 2019c.

-tzdata.bb and tzcode-native.bb require timezone.inc.

(From OE-Core rev: c5a382429d18642d35d40a4df6a58b971c724603)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Ross Burton
2a9a95fd7b mesa: no need to depend on target python3
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Ross Burton
d5a00f509a python3: handle STAGING_LIBDIR/INCDIR being unset
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Kai Kang
f58498f668 systemd: provides ${base_sbindir}/udevadm
In some udev rules files such as 97-hid2hci.rules from bluez5, it calls
/sbin/udevadm in a rule. eudev provides /usr/bin/udevadm and
/sbin/udevadm which is a link to /usr/bin/udevadm. But systemd only
provides /bin/udevadm. It is not convenient to update the rule file that
udevadm reside in different directories for eudev and system.

So create link file ${base_sbindir}/udevadm in systemd just the same as
eudev to fix such kind of issues.

(From OE-Core rev: c8bf23349af4972a76cb4b13179dac844812d75f)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Chen Qi
1dc518776a python-numpy: fix build for libn32
Fix do_compile failure for libn32. To reproduce, use the following config.

  MACHINE = "qemumips64"
  require conf/multilib.conf
  MULTILIB_GLOBAL_VARIANTS_append = " libn32"
  MULTILIBS ?= "multilib:lib32 multilib:libn32"
  DEFAULTTUNE_virtclass-multilib-lib32 ?= "mips"
  DEFAULTTUNE_virtclass-multilib-libn32 ?= "mips64-n32"

The error message is as following.

  numpy/core/include/numpy/npy_common.h:206:10: error: #error Unsupported size for type off_t

(From OE-Core rev: b659b6dcb6be203e8c7bc678c902d4a31ce9fe70)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Stefan Ghinea
7f87451e6e ghostscript: CVE-2019-14811, CVE-2019-14817
A flaw was found in, ghostscript versions prior to 9.28,
in the .pdf_hook_DSC_Creator procedure where it did not
properly secure its privileged calls, enabling scripts to
bypass `-dSAFER` restrictions. A specially crafted PostScript
file could disable security protection and then have access
to the file system, or execute arbitrary commands.

A flaw was found in, ghostscript versions prior to 9.28,
in the .pdfexectoken and other procedures where it did not
properly secure its privileged calls, enabling scripts to
bypass `-dSAFER` restrictions. A specially crafted PostScript
file could disable security protection and then have access
to the file system, or execute arbitrary commands.

References:
https://nvd.nist.gov/vuln/detail/CVE-2019-14811
https://nvd.nist.gov/vuln/detail/CVE-2019-14817

Upstream patches:
http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=885444fcbe10dc42787ecb76686c8ee4dd33bf33
http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=cd1b1cacadac2479e291efe611979bdc1b3bdb19

(From OE-Core rev: 1533b92848ea73d6fe6ba22d87d7b6749b47842c)

Signed-off-by: Stefan Ghinea <stefan.ghinea@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Otavio Salvador
7920994ba8 mesa: Upgrade 19.1.1 -> 19.1.6
- Add python3 to DEPENDS: mesa commit cb3072488c changed function
    that verifies python installation and to this new function works
    we need to have Python3 in DEPENDS.

This is a bugfix only set of releases. Check following links for the
relevant release notes:

  - https://www.mesa3d.org/relnotes/19.1.2.html
  - https://www.mesa3d.org/relnotes/19.1.3.html
  - https://www.mesa3d.org/relnotes/19.1.4.html
  - https://www.mesa3d.org/relnotes/19.1.5.html
  - https://www.mesa3d.org/relnotes/19.1.6.html

(From OE-Core rev: a870ce9261fffc2e4772e55bd2e727aa27172846)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Ross Burton
955381c286 gstreamer1.0-libav: enable gtk-doc again
Remove the broken piece of the API documentation template so the documentation
can be generated again.

(From OE-Core rev: 25a0d1b0b14a4fcd41ca08084a2f22db54dec58e)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Henning Schild
4b0bf01c14 oe-git-proxy: fix dash "Bad substitution"
The script claims it works with dash, make sure that is actually the
case.

(From OE-Core rev: cb373201464f4a0a90482f62a24a4043abe73fd6)

Signed-off-by: Henning Schild <henning.schild@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Henning Schild
7ffd9ee9c3 oe-git-proxy: NO_PROXY suffix matching without wildcard for match_host
NO_PROXY can also contain just suffixes that do not start with a "*". We
failed to match those so far. Just add an extra "*" to also match those
suffixes. If one was there we get "**" which does not hurt.

(From OE-Core rev: 12f0cc209aaba48f846c62663e0b9e5efd253d71)

Signed-off-by: Henning Schild <henning.schild@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Henning Schild
1b970e222e oe-git-proxy: disable shell pathname expansion for the whole script
This truly fixes the issue that cbc148d5d9
wanted to solve, without breaking the iteration over multiple entries.

(From OE-Core rev: 477ee7e673684db988c66a75b6400e33509730b4)

Signed-off-by: Henning Schild <henning.schild@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Henning Schild
f107c9f815 Revert "oe-git-proxy: Avoid resolving NO_PROXY against local files"
This reverts commit cbc148d5d9.

The quoting causes H to be one string with spaces, so looping over
multiple entries does not work anymore.

(From OE-Core rev: 0fdc12dac6244be135ea519fe9c39109e7cfc6d6)

Signed-off-by: Henning Schild <henning.schild@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:44 +01:00
Henning Schild
7efdf528ac oeqa: add case for oe-git-proxy
The escaping, splitting and matching of NO_PROXY in oe-git-proxy
deserves its own testcase, add it.

(From OE-Core rev: c07134711f97c966d70aaf2798800214d5426005)

Signed-off-by: Henning Schild <henning.schild@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:43 +01:00
Henning Schild
49bb6cefb5 oe-git-proxy: allow setting SOCAT from outside
This allows to write selftests where we can mock the real socat.

(From OE-Core rev: ea2690e867ff11250d3dd143184432dd03909910)

Signed-off-by: Henning Schild <henning.schild@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:43 +01:00
Ross Burton
b598c08489 libtasn1: fix build with api-documentation enabled
(From OE-Core rev: 698efe108de724d9129ca938151ab7c7d3cb34cc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:43 +01:00
Khem Raj
a1a46e85a8 elfutils: Fix build on ppc/musl
musl relies on the pt_regs definitions from kernel ptrace headers

(From OE-Core rev: 7df9aa52446a031c10e84f321733a0e56f563e85)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:43 +01:00
Zang Ruochen
c4baf59897 btrfs-tools:upgrade 5.2.1 -> 5.2.2
(From OE-Core rev: 53a7c9c6da894848cba0c3bf2ed93b7b268497ac)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:43 +01:00
Khem Raj
114f2cb80d ptrace: Drop ptrace aid for musl/ppc
This has been fixed and is no longer needed

(From OE-Core rev: 74ea0264cc5ba27dd37053f79301d18c8f1b6e7d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:43 +01:00
Hongxu Jia
cc5d6ca85a elfutils: 0.176 -> 0.177
- Update Debian patches
  http://ftp.de.debian.org/debian/pool/main/e/elfutils/elfutils_0.176-1.debian.tar.xz

- Rebase Debian patches to 0.177
  debian/hppa_backend.diff
  debian/mips_backend.diff
  debian/arm_backend.diff
  debian/mips_readelf_w.patch
  debian/testsuite-ignore-elflint.diff
  debian/mips_cfi.patch

- Fix build failure while applying debian patches
  0001-fix-compile-failure-with-debian-patches.patch

- Rebase musl patches

(From OE-Core rev: 35143611034758cc670e9d88bc93f97fe33c52fc)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:43 +01:00
Yi Zhao
5b1e999c41 screen: add /etc/screenrc as global config file
(From OE-Core rev: 15fdf699179038f4b636b9310bb31583a76c8a29)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:43 +01:00
Changhyeok Bae
e5bf273190 iw: upgrade to 5.3
Separated build dir doesn't work because Makefile points out source dir.

(From OE-Core rev: fef943ab63d30bd1d6f9be00b0976000a55cca0e)

Signed-off-by: Changhyeok Bae <changhyeok.bae@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:43 +01:00
Nathan Rossi
6c7d657aae oeqa/selftest: Rework toolchain tests to use OEPTestResultTestCase
Use OEPTestResultTestCase to collect results and add logfile collection
and compression.

(From OE-Core rev: b75aced558013a459f29617b53cf477cb9b387ac)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:43 +01:00
Nathan Rossi
e08f657220 oeqa/core/case.py: Add OEPTestResultTestCase for ptestresult helpers
Add the OEPTestResultTestCase class as a mix-in class to provide helper
functions for interacting with ptestresults within the extraresults
object generated by the test case.

This class also provides default compression of log text and log files.

Also add support to resulttool for decoding/decompressing log files
embedded in the test results.

(From OE-Core rev: 06cba9883a5964320969301fd05eeb6bec3e786d)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:43 +01:00
Nathan Rossi
0c19c09335 gcc-cross.inc: Process binaries in build dir to be relocatable
Process binaries within the build directory before stashing to be
relocatable with ORIGIN relative rpaths. This corrects issues with
rpaths being invalid when trying to use the binaries from an unstashed
build directory (e.g. gcc-runtime).

(From OE-Core rev: 34d9f60a8c2e98fdacbb799af11ec015bc5700f4)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:43 +01:00
Nathan Rossi
05e583ae84 resulttool: Handle multiple series containing ptestresults
Handle multiple results series having ptestresults content. The contents
are merged on a per-result basis where duplicates are ignored (with a
warning message printed). The 'ptestresults.sections' collection is also
merged on a per-suite basis.

(From OE-Core rev: 47edd51970ed0c33edbe04fd72abd1cfc6ecd3d1)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-16 23:02:43 +01:00
Trevor Gamblin
745e38ff0f libevent: don't treat test stats line as pass/fail in ptest
Supplemental to commit fb17b46e2. The libevent "regress" test
outputs its own pass/fail results, e.g.
"2/300 TESTS FAILED. (31 skipped)", which will be miscounted
as an extra test fail in the ptest log. Fixed this to ignore
the libevent results line when counting actual pass/fail
results.

Also removed the for loop in run-ptest and targeted only the
libevent "regress" test, as the other tests being run were
related to performance and did not provide a relevant pass/fail
output.

(From OE-Core rev: 86b8a1d534bfcd70775c6e2b59eabe10de29f526)

Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-11 07:30:13 +01:00
Nathan Rossi
5f79ad273e chrpath.bbclass: Add break_hardlinks kwarg to allow breaking hardlinks
Add the break_hardlinks kwarg to break hardlinks when modifying files.
This uses the bb.utils.break_hardlinks function to break hardlinks. The
default is to maintain existing behaviour and leave hardlinks in place.

(From OE-Core rev: 7628f6bdb5704c018d83e284364994b72557eaa5)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-11 07:30:13 +01:00
Nathan Rossi
4a10fa34ca oeqa/selftest/context.py: For -t/-T use append argparse action
Use the 'append' action of argparse instead of nargs. This changes the
behaviour of the option from "-t foo bar -r" to "-t foo -t bar -r".

Additionally rename the long form options to be consistent with
behaviour, such that they specifying a single tag at a time.

(From OE-Core rev: ffe9e4303fa9799d2e8af9188853a262e15af226)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-11 07:30:13 +01:00
Jacob Kroon
4abf4125f0 bitbake: bitbake-user-manual: key-expansion: Don't refer to overrides
Nowadays bitbake applies overrides dynamically, not at a single
specific point in time during parsing.

(Bitbake rev: 218431b0f7c97764cb2c0b79a3aadfe2007f490b)

Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-10 15:18:06 +01:00
Jacob Kroon
504fa7ee15 bitbake: bitbake-user-manual: Correct description for _append/_prepend/_remove
The effects of _append/_prepend/_remove are applied when a variable
is expanded, not after parsing has completed.

(Bitbake rev: f9b67433cb4fe5132ab2cf4a9c6bc078b42e1960)

Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-10 15:18:06 +01:00
Adrian Bunk
3b87508a9a ref-manual: Remove documentation for the removed gnome class
When removed all it did was
  inherit gnomebase gtk-icon-cache gconf mime
which would also be the most trivial replacement.

Most of the time not all of these classes were needed,
and it is recommended to use only the ones actually required.

(From yocto-docs rev: a0a3a8318a1488ad2fb00b29f1cf26a9d6701be2)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-10 11:21:55 +01:00
Ross Burton
320fd9e28f ref-system-requirements: add Debian 10 to supported distribution list
Debian 10 is a supported distribution now, so add it to the documentation.

(From yocto-docs rev: 77ff109cf7dbe1858e9959c4b9f1225d0a1c5e32)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-10 11:21:55 +01:00
Adrian Bunk
b5b5f90a79 ref-manual: Remove documentation for the removed bluez5 distro feature
bluez4 was removed even from meta-oe 2 years ago,
which made made the bluez5 feature for selecting between
bluez4 and bluez5 mandatory for using the bluetooth feature.

The backfilled bluez5 feature has been removed,
including the bluetooth class that helped recipes
for selecting between bluez4/bluez5.
Recipes can replace ${BLUEZ} with bluez5.

(From yocto-docs rev: 025e2b5797b987b0260d7410e2e6d7283f5a7e91)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-10 11:21:55 +01:00
Richard Purdie
d7441ddb0c oeqa/selftest: Tweak binutils tests tags as toolchain/user and system
This matches the other toolchain tests.

(From OE-Core rev: d41606244c170fd547496e5df9e3d28ce2d2af68)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
2ae6a072ca oeqa/selftest/cases/glibc.py: Rework and tag with toolchain-user/system
Rework the glibc execution into a common base class. Additionally tag
the tests with "toolchain-user" and "toolchain-system".

(From OE-Core rev: 94bf24268108774e022ad247c647e48a781debbb)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
fdb2bfa0b7 oeqa/selftest/cases/gcc.py: Split into classes for parallelism
Split the gcc selftest cases into multiple classes one for each test.
This is done in order to make it easy to execute multiple gcc tests in
parallel when using oe-selftest with the '-j' arg.

Additionally tag the user tests with "toolchain-user" and the system
emulation (qemu system) tests with "toolchain-system".

(From OE-Core rev: 7b2f03eff9fc9b4ce48d5ea7e54faa114a6cdcae)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
dcb84e42e5 oeqa/core/decorator: Fix super class modifying subclass tags
(From OE-Core rev: ba35bead1108c7d8480b785b2e59f40ea77b5549)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
405d98e2bd oeqa/selftest/context.py: Change -t/-T args to be optional
Change the -t/-T args to be optional so that they can be used together
with the existing -r/-a/... args to run a more flexible filtering of
test tags.

(From OE-Core rev: 55ee27bb07113a45da18711b5509764f62be4d75)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
db1cc0b533 oeqa/selftest: Use extraresults on self instead of self.tc
In order to take advantage of multiprocess execution of tests the
extraresults must be passed through the TestResult. With changes to how
oeqa/core handles test cases the extraresults attribute of the testcase
is passed to the TestResult, with passing across process boundaries
handled automatically.

(From OE-Core rev: 6a1b0c2003a0b4a1983f9494440e6ea02dc25585)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
074388daf5 oeqa/selftest: Toolchain tests suffix "-user" for qemu usermode results
Suffix the ptestresults suite with "-user" for tests that are executing
against usermode qemu.

(From OE-Core rev: 0becf9c1fabb080a2481ebdacef6221f52301621)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
219c199d34 oeqa/selftest: For toolchain tests do not fail if a test failed
Do not fail the running selftest test case if the test suite has a
failed test case. Currently toolchain tests suites (binutils, gcc,
glibc) fail but this does not indicate failure to execute the tests.

Also remove the logging of each test that failed.

(From OE-Core rev: 073575ff9c06b2791cc2bd88063d815d2220f038)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
2b67b9dfad oeqa/selftest/cases/glibc.py: Don't install python3 and pexpect
When running the system emulation test case, do not include python3 or
pexpect in the image. The test cases that use these also need gdb (with
python configured).

(From OE-Core rev: 7e5be0803ea0cbfd8e5b052e43b54e16ab3230ed)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
9b1fc81947 oeqa/selftest/glibc: Create selftest case for glibc test suite
Create a oeqa selftest test case to execute the glibc test suite and
report the results. The results are populated into the extraresults
variable of the test case which are written to testresults.json for
resulttool to analyse.

An additional subclass is created to separate the execution with qemu
linux-user and qemu system. The GlibcSelfTestSystemEmulated test case
handles setup of the target image, setup of and NFS server as well as
execution with runqemu.

(From OE-Core rev: 730832ebcca305477e1c13248cd35eea095b35c6)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
60b2e6acad oeqa/selftest/gcc: Create selftest case for gcc test suite
Create a oeqa selftest test case to execute the gcc test suites and
report the results. The results are populated into the extraresults
variable of the test case which are written to testresults.json for
resulttool to analyse.

An additional subclass is created to separate the execution with qemu
linux-user and qemu system. The GccSelfTestSystemEmulated test case
handles setup of the target image as well as execution with runqemu.

(From OE-Core rev: 2c86a25f8992243311e7fa1a8654b41f12b749de)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
d8f39cc971 oeqa/selftest/binutils: Create selftest case for binutils test suite
Create a oeqa selftest test case to execute the binutils test suites and
report the results. The results are populated into the extraresults
variable of the test case which are written to testresults.json for
resulttool to analyse.

(From OE-Core rev: e5629aa4bd939072208f6eb5b30a98e17eb6a8ae)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Richard Purdie
db62562db5 oeqa/selftest: Markup 'machine' specific test cases
These test cases are run by the autobuilder on a machine specific basis.
Add tags to these classes so they can be controlled by the metadata rather
than hardcoded in the autobuilder config.

(From OE-Core rev: de0b761b550d591f301ee5e9c232e0d5bd1342f2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
13f1a9231d oeqa/core/runner.py: Fix OETestTag listing
Use the __oeqa_testtags attribute added by OETestTag and display no, one
or more tags separated by a comma. Also change the formatting of the
output so that the list of tests is formatted as "<test> (<tags>)" and
remove the table header for "id" (it is no longer available).

(From OE-Core rev: d62e577a4e1a5f6accbce9f7bff7317a1162d72d)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
d4dd54fa50 oeqa/selftest: Add test run filtering based on test tags
Add '--run-only-tags' for running tests which match any of the provided
tags, and '--run-exclude-tags' for running all tests except those that
have any of the provided tags.

(From OE-Core rev: 0dc3caf21c4519ef16c2ac99b93c03e23aab61d9)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
c3625e141d oeqa/core: Rework OETestTag and remove unused OETestFilter
Rework OETestTag so that it does not rely on the existing decorator code
base and instead inserts the tags into an attribute on the decorated
target (e.g. class/type or method). This allows the use of OETestTag on
classes and method.

In order to filter tagged tests rework the loaders filtering code,
removing the generic-ness (with validation and attributes/etc.) and
replace it with a "tags_filter" parameter which is a function that
filters a test based on the tags it has. This allows the loader user to
filter on tags in more specific ways (e.g. include all untagged tests
and any tests tagged with foo). Plumb all this through the context code
and testing code.

Update the associated tests to pass correctly with the changes.

(From OE-Core rev: b8a4a4c2de68110d74607cb9807c9e741ca9441c)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Nathan Rossi
1220faf665 oeqa/core: Implement proper extra result collection and serialization
Implement handling of extra result (e.g. ptestresult) collection with
the addition of a "extraresults" extraction function in OETestResult. In
order to be able to serialize and deserialize the extraresults data,
allow OETestResult add* calls to take a details kwarg. The subunit
module can handle cross-process transfer of binary data for the details
kwarg. With a TestResult proxy class to sit inbetween to encode and
decode to and from json.

(From OE-Core rev: b0831d43606415807af80e2aa1d0566d0b8c209c)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:56:43 +01:00
Khem Raj
52ba1a3d44 python3-manifest.json: Fix typo in summary
(From OE-Core rev: 15c279da465323cab86635e5b5cdb46bf254fa66)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 21:44:32 +01:00
Martin Jansa
f388dd4828 bitbake: bitbake-user-manual: Improve the example for Removal (Override Style Syntax)
* to better show how it works with spaces and multiple values

(Bitbake rev: 89dd570ebd7046f5bce4a8b7f3b2b50b1cf65589)

Signed-off-by: Herb Kuta <herb.kuta@lge.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 13:08:54 +01:00
Wes Lindauer
f73db27088 bitbake: bitbake: cooker: Ensure bbappends are found in stable order
Thanks to wildcards in bbappend filenames, it's possible to have
multiple bbappends that apply to the same recipe in the same directory.
In order to get sstate hits between different workspaces, we want to
apply those bbappend files in a consistent order.  Since readdir()
returns files in a non-deterministic order between workspaces (based on
inode number and/or time of creation), we'll need to sort its result in
order to have any consistency.

(Bitbake rev: 94c0c7f15c7a6244a8576ed948ffc21afb96ba82)

Signed-off-by: Wes Lindauer <wesley.lindauer@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 13:08:54 +01:00
Bruce Ashfield
01bf7f5279 linux-yocto: drop 5.0 recipes
The 5.2 reference kernels replace the EOL 5.0 series. So we drop
the named recipes.

(From OE-Core rev: 868e84c57e6725591fa1e93f5ea0a308d49e13f1)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 13:08:34 +01:00
Trevor Gamblin
473f170eff libevent: add granularity to ptest log
The libevent ptest used to report only a global pass or a fail result.
Count individual PASS, FAIL, SKIP results. The SKIP results now
include tests that are disabled in the libevent code.

libevent's ptest output did not comply with the automake-style output
"result: testname", and reported a FAIL status at the end of the test
run if any of the libevent tests failed. This patch makes the log
consistent with the automake style:

    PASS: http/cancel_by_host_no_ns
    PASS: http/cancel_inactive_server
    PASS: http/cancel_by_host_no_ns_inactive_server
    SKIPPED: http/cancel_by_host_server_timeout
    SKIPPED: http/cancel_server_timeout

and provides a summary as follows:

    === Test Summary ===
    TOTAL: 316
    PASSED: 300
    FAILED: 0
    SKIPPED: 16
    DURATION: 87
    END: /usr/lib/libevent/ptest

(From OE-Core rev: fb17b46e202cc08277d3eeb34872067c73a6bfbc)

Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 13:08:34 +01:00
Peiran Hong
0eb98c9d53 diffutils: Added perl to support ptest & Skipped one test case
Added perl to the run-time dependency of the recipe for diffutils since
it is required by the test "large-subpot".
The test "strip-trailing-cr" is skipped since it requires valgrind to
work, but valgrind is considered too heavy-weight for diffutils package.

(From OE-Core rev: 802c67c7c27011812d690c41347b38481cdab2e9)

Signed-off-by: Peiran Hong <peiran.hong@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 13:08:34 +01:00
Khem Raj
8753c00f7a oeqa: Recognise svlogd as another logger
This is provided by runit which another init system like systemd,
sysvinit, this lets oeqa run on systems which are using runit

(From OE-Core rev: e4eb3ca113985ab2be123eb5b5ea76764761df88)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 13:08:34 +01:00
Oleksandr Kravchuk
0a16f83d93 libxcrypt: update to 4.4.8
LICENSE file checksum changed because few contributors were mentioned
(see @edbdbbc50beced9c723e7405334583c60a702796).

(From OE-Core rev: 06eb03ad1c0357731496531b290a0a2fdfd10f48)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 07:47:24 +01:00
Andre McCurdy
a18b799d67 dropbear: don't create invalid symlinks if ssh, scp, etc are disabled
(From OE-Core rev: 703e3faaec8c5a22fe3bc9a2a040c960862136c7)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 07:47:24 +01:00
Andre McCurdy
71fbb20771 feature-arm-thumb.inc: fix ARM_THUMB_SUFFIX
Since TUNE_FEATURES now either contains a CPU or an architecture (but
not both) we can't rely on finding the architecture in TUNE_FEATURES.
Use architecture specific over-rides instead.

(From OE-Core rev: 805dd4807d322dc70cef97edd68fdb3142b60fb1)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 07:47:24 +01:00
Alex Kiernan
fa3d3c4a17 iputils: Set prefix correctly for usrmerge
Fix build with usrmerge enabled:

  WARNING: iputils-s20190709-r0 do_package: iputils: alternative target (/usr/bin/ping or /usr/bin/ping.iputils) does not exist, skipping...
  WARNING: iputils-s20190709-r0 do_package: iputils: NOT adding alternative provide /usr/bin/ping: /usr/bin/ping.iputils does not exist
  ERROR: iputils-s20190709-r0 do_package: QA Issue: iputils: Files/directories were installed but not shipped in any package:
    /bin/tftpd
    /bin/tracepath
    /bin/arping
    /bin/clockdiff
    /bin/ping
    /bin/traceroute6
    /sbin/rarpd
    /sbin/ninfod
    /sbin/rdisc
  Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
  iputils: 9 installed and not shipped files. [installed-vs-shipped]
  WARNING: iputils-s20190709-r0 do_package: iputils: alt_link == alt_target: /usr/bin/ping == /usr/bin/ping

(From OE-Core rev: 4b2322e90f6a3a4d2c44145aa85b688f28edddaa)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 07:47:24 +01:00
Changqing Li
da0bcb4062 man-db: support usrmerge
(From OE-Core rev: 69ab2da830a758d6289a6e33209e74222bfedea0)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 07:47:24 +01:00
Changqing Li
46448785a4 dnf.py: installroot support usrmerge
(From OE-Core rev: 65f8dfd81abcf48d472ee28c2cdae819fd87ef32)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 07:47:24 +01:00
Kai Kang
19086789d9 sysstat: 12.1.3 -> 12.1.6
Update sysstat from 12.1.3 to 12.1.6.

* make sa_lib_dir refer to ${libexecdir}/sa to fix conflictions when
  multilib is enabled

(From OE-Core rev: 8862f21eeb814c64b8b9e662b093ed39474cd55b)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 07:47:24 +01:00
Kai Kang
8c93226dce texinfo: fix multilib file confliction
Inherit multilib_script to fix file confliction when mutlilib enabled.

| Error: Transaction check error:
|   file /usr/bin/texi2any conflicts between attempted installs of
    lib32-texinfo-6.5-r0.core2_32 and texinfo-6.5-r0.core2_64

(From OE-Core rev: 08b6a12e674f7a202bb29fbb465997e8303ccb5d)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 07:47:24 +01:00
Kai Kang
944a5b054c cups: redefine CUPS_SERVERBIN
Redefine CUPS_SERVERBIN to "$libexecdir/cups" for cups which solves file
confliction when multilib is enabled.

| Error: Transaction check error:
|   file /lib/systemd/system/org.cups.cups-lpd@.service conflicts between
    attempted installs of cups-2.2.11-r0.core2_64 and lib32-cups-2.2.11-r0.core2_32

(From OE-Core rev: 274bed042b9c2b50a8bdd11b42f1a62405fb5b11)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 07:47:24 +01:00
Khem Raj
7379b6347b python3native, pythonnative: export PYTHON_LIBRARY and PYTHON_INCLUDE_DIR
packages can use

find_package(PythonInterp REQUIRED)
find_package(PythonLibs REQUIRED)

while we control PYTHON pointing to native py3 the libs and include
directories will then point to build host version, which can result in
unexpected combination and if we are lucky we get errors if its quite
different e.g. py2 libs/includes and py3 executable

This variable can be then used to export PYTHON_LIBRARY and
PYTHON_INCLUDE_DIR so that above find_packages can work correctly

see [1] for how it happens in cmake

LLDB uses it see [2]

[1] https://github.com/Kitware/CMake/blob/master/Modules/FindPythonLibs.cmake
[2] https://github.com/llvm/llvm-project/blob/master/lldb/cmake/modules/LLDBConfig.cmake#L226

(From OE-Core rev: e45c06fe6f9a21c2cd06ae003cb112556382f81e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 07:47:24 +01:00
Chen Qi
4349b933ad python3: make misc package rdepend on pydoc and pickle modules
The cgitb module in misc package requires pydoc. And the trace
module in misc package requires pickle.

(From OE-Core rev: f7f04c4436f414ab1e57e7fc93349ac77ecf37be)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 07:47:24 +01:00
Changqing Li
d7a16809f6 mdadm: skip timeout testcase 11spare-migration
[YOCTO #13368]

(From OE-Core rev: 47c4ad9bd43d3b0539a19691bd4deb19ea63c3a7)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 07:47:24 +01:00
Changqing Li
4157600d31 bootchart2: switch to add patch from change source in do_install
it is not proper change source in do_install, it will make
source not updated even local.conf have change the DISTRO_FEATURES

[YOCTO #13493]

(From OE-Core rev: c8b049f43931ac7581b6f57d03e4d1838d394e1f)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-07 07:47:24 +01:00
Jason Wessel
c143a3c4ea Revert "kernel.bbclass: adjust a condition checking"
This reverts commit 6676411fccff2d331878e4ca1f9411aafb056a80.

This revert restores the original code and adds a comment.  The commit
that was reverted broke a number of wic templates and tools which rely
on the initramfs creation dependency and the case where the
INITRAMFS_IMAGE_BUNDLE is not set.

If an end user does not want the INITRAMFS_IMAGE generated, it should
be set to "".

[ Issue: LIN1019-1791 ]

(From OE-Core rev: ab61a11623ac0a25ba1c98d686c79815abab573f)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Zang Ruochen
13d9021a7e meson:upgrade 0.51.1 -> 0.51.2
-meson/0001-Fix-missing-return-statements-that-are-seen-with-Wer.patch
Removed since this is included in 0.51.2.

(From OE-Core rev: 62ea5c31be4a1a5eaba83f81d09b36553febb647)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Ming Liu
45b12bdcb3 weston: uprev to 7.0.0
- Adjust patches to comply with weston-7.0.0.
- Also drop the obsolete patch 0001-make-error-portable.patch.

(From OE-Core rev: 1b0ce3ec1d3254afa2cf3ac7ecfd736124d711cc)

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Ross Burton
e77c32d164 systemd: ensure reproducible builds by clearly exposing the time epoch support
systemd has the ability to check the time on boot and if it's earlier than an
epoch determined at build time, set the time to that epoch.  This is useful for
systems where the system time is January 1st 1970 (because the unix timestamp
was 0 at boot) as then at least the time is reset to something approximating the
right year at least.

By default systemd uses the mtime of the NEWS file, which is static for tarballs
and corresponds to the time the release was made, but for git checkouts this is
simply the time do_unpack() was executed.  Thus, rebuilding systemd will cause
this embedded timestamp to change.

Remove the PACKAGECONFIG time-epoch which has the logic reversed: enabling
time-epoch will set the epoch to the unix timestamp 0).  Replace with
set-time-epoch with the following semantics:

- When disabled, the time epoch is set to 0 (1st January 1970), so there is no
  time manipulation on boot.

- When enabled, if reproducible builds are configured by setting
  SOURCE_DATE_EPOCH then that timestamp is used for the time epoch.  If
  reproducible builds are not configured then the timestamp of NEWS (thus the
  build time) is used.

The set-time-epoch flag is enabled by default.

[ YOCTO #13473 ]

(From OE-Core rev: 29afbd4f02354de7103ee3a88f4ce5336b95b88a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Oleksandr Kravchuk
b03278ba4c python3-git: update to 3.0.2
(From OE-Core rev: 1ce8a78e59e472d80a85667916af23c7d64bb99f)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Oleksandr Kravchuk
cc90f61d23 python3-pbr: update to 5.4.3
(From OE-Core rev: d03ec080b0bcf31ab8272961372f1e662060e21e)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Joshua Watt
bff47225c6 resulttool: Add reproducible log extraction
Adds an argument to the log subcommand to extract the raw logs from the
reproducible selftest.

To prevent ambiguity, the "--raw" argument has been renamed
"--raw-ptest", although the old "--raw" argument is kept around for
compatibility.

[YOCTO #13324]

(From OE-Core rev: 7a4ebb361ff1efc22e7dafadfa60c98bc8a79ed4)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Oleksandr Kravchuk
921d669f0f libsecret: 0.19.0
(From OE-Core rev: 94cd73f7295dda8a0828bcd7159bbe54263c55ae)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Dan Callaghan
25ed4f7073 autotools: always include config_site.d files in CONFIG_SITE
Fixes: https://bugzilla.yoctoproject.org/show_bug.cgi?id=13375

(From OE-Core rev: e60c170b451a4aa561d08bfce97dca05508c2106)

Signed-off-by: Dan Callaghan <dan.callaghan@opengear.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Zang Ruochen
96357a78f4 python3-dbus:upgrade 1.2.8 -> 1.2.10
(From OE-Core rev: fb7f9becfdd7a7657b69e7bde472f3b8569eff63)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Alexander Kanavin
fe029a11bc package.bbclass: allow shell-style wildcards in PRIVATE_LIBS
PRIVATE_LIBS is used to exclude 'private' libraries from getting added to
automatic runtime dependency resolution. This variable currently has to list
all libraries by name, which becomes a maintenance issue if the list
of such libraries frequently changes, or is very large.

This change allows using shell-style wildcards in the variable, similar
to how FILES lists what gets packaged.

(From OE-Core rev: 732db32714c208d8eeeb90308926dc886ef7b791)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Anuj Mittal
4efd32b3ec libjpeg-turbo: upgrade 2.0.2 -> 2.0.3
Bug fix release. Release notes:

https://github.com/libjpeg-turbo/libjpeg-turbo/releases

(From OE-Core rev: 86a8caa604bfafa7a03420e94276a3e98e2957db)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Zang Ruochen
11f90f9a0f dtc:upgrade 1.5.0 -> 1.5.1
-License-Update:
-file://GPL : Updated mailing address.
-file://libfdt/libfdt.h : Removed part of the copyright description of this file.

(From OE-Core rev: ada36d3e39aba9afec2d5438a80f0b35610ce15d)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Zang Ruochen
306fe8fd2c libogg:upgrade 1.3.3 -> 1.3.4
(From OE-Core rev: 7e9fda9b8a9243091db212dc4c541cb2088a4d7d)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Khem Raj
4bed6fe63d gcc-9.2: Fix risc-v dynamic linker relocation
Accidentally dropped in 9.2 update

Reported-by: Ricardo Salveti <ricardo@foundries.io>
(From OE-Core rev: bd21f36faeceb83ab629bd34a4e53a6947d6a469)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Ross Burton
57428a8f14 harfbuzz: upgrade to 2.6.1
Add a (disabled) PACKAGECONFIG for Graphite2.

Update the license checksum for hb-ucd.cc, which for some reason was
checksumming the entire file and not just the license header.

(From OE-Core rev: 6e097c853f17ec76b61440bb868371ddf6a8e977)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Ross Burton
3c42048c20 pango: add PACKAGECONFIG for libthai support
(From OE-Core rev: 7aca6c182df25b867b6b9a58c3bf90112bb4aaaa)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Ross Burton
9b92d24b6d pango: 1.44.6 upgrade
(From OE-Core rev: 3673003485d0effdc036c9164bf7a30621960ea4)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Drew Moseley
7ded301c3c runqemu: Fix typo in help text.
(From OE-Core rev: c745185b0c112530d1a3d1c57feea0754d68ebb2)

Signed-off-by: Drew Moseley <drew.moseley@northern.tech>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:10 +01:00
Khem Raj
c5d7c65c9e musl: Update to latest master
sys/user.h related API fixed on ppc/ppc64

Detailed log [1]

https://git.musl-libc.org/cgit/musl/log/?qt=range&q=29e8737f81ccc9fbadcf61a75318aa3d0516aafa..6ad514e4e278f0c3b18eb2db1d45638c9af1c07f

(From OE-Core rev: 961312512fa80622143c35c4edaa19287be01bbb)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:09 +01:00
Vijai Kumar K
550d3541ae lib/oe/gpg_sign.py: Remove unwanted import
Remove unwanted import of oe.utils.

(From OE-Core rev: 42e9de68384fb24d5c9a5f161810be90c45942d2)

Signed-off-by: Vijai Kumar K <Vijaikumar_Kanagarajan@mentor.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:09 +01:00
Denys Zagorui
05a1020680 gzip: add nativesdk support
(From OE-Core rev: 9b2d7219e4cb2701f4252fbb98e6ecaab3221107)

Signed-off-by: Denys Zagorui <dzagorui@cisco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:09 +01:00
Ross Burton
6dd03197a5 patch: add CVE tags to patches
These patches improve CVE fixes but trip up patch status sanity checks, so add
CVE tags to them.

(From OE-Core rev: b30e060639d99849e27e5136c33c52d27e3288dc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:09 +01:00
He Zhe
6870d68d2b qemu: Fix dependency of PACKAGECONFIG libcurl
When PACKAGECONFIG libcurl is enabled, we would get the following build failure.
ERROR: Nothing PROVIDES 'libcurl' (but perf.bb DEPENDS on or otherwise requires it). Close matches:

The dependency should be curl.

(From OE-Core rev: 531bf25c4e9dda4938f1de6bf7f929ca9d639114)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:09 +01:00
He Zhe
f2713fc631 qemu: Add pkg-config handling for libgcrypt
When PACKAGECONFIG libgcrypt is enabled, we would get the following error.

ERROR: /usr/bin/libgcrypt-config should not be used, use an alternative such as pkg-config

In oe-core, libgcrypt has been turned to be configured with pkg-config instead
of libgcrypt-config, but qemu configure script does not contain pkg-config
related part for libgcrypt to handle it.

(From OE-Core rev: 37bec7c4ea3ebd17366fbd2ec719de401ec36275)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:09 +01:00
Khem Raj
a6c071c3ab libgpg-error: Fix build with gawk 5.x
(From OE-Core rev: 1418581aa22f37c5d7d9a686c1c387149954e9b2)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:09 +01:00
Robert Yang
35c8b87b1c build-compare: 2015.02.10 -> 2019.08.14
* Removed the following patches which are already merged by upstream:
  0001-Add-support-for-deb-and-ipk-packaging.patch
  Rename-rpm-check.sh-to-pkg-diff.sh.patch
  functions.sh-improve-deb-and-ipk-checking.patch
  functions.sh-remove-space-at-head.patch
  functions.sh-run-rpm-once-to-make-it-faster.patch
  pkg-diff.sh-check-for-fifo-named-pipe.patch
  pkg-diff.sh-check_single_file-return-at-once-when-sa.patch
  pkg-diff.sh-remove-space-in-the-end-for-ftype.patch

* Rebased Ignore-DWARF-sections.patch

This version is very outstanding when compare binary packages, e.g.:
PRSERV_HOST = "localhost:0"
INHERIT += "packagefeed-stability"
PACKAGE_CLASSES = "package_ipk
$ bitbake opkg
$ find tmp/deploy/ipk >/tmp/ipk_1

Add a "bbnote 'hello'" to autotools.bbclass' autotools_do_configure.

* BEFORE the upgrading, the result is:
$ diff /tmp/ipk_1  /tmp/ipk_2 -Nur | diffstat
 ipk_2 | 1570 +++++++++++++++++++++++++++++++++---------------------------------
 1 file changed, 785 insertions(+), 785 deletions(-)

* AFTER the upgrading, the result is:
$ bitbake opkg
$ find tmp/deploy/ipk >/tmp/ipk_2
$ diff /tmp/ipk_1 /tmp/ipk_2 -Nur
No output

And if we really modifed a recipe such as opkg, then it would show that it is
changed.

For a full world build AFTER the upgrading:
$ diff /tmp/ipk_6 /tmp/ipk_7 -Nur | diffstat
 ipk_7 | 2090 +++++++++++++++++++++++++++++++++---------------------------------
 1 file changed, 1045 insertions(+), 1045 deletions(-)

There are 10968 packages in totall, 1045 ones have been changed, so we can still
improve it in the future.

(From OE-Core rev: 4c77fdfc0b3b31105a4dfd1a4634f8464b52d933)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:58:09 +01:00
Richard Purdie
2cd5daffe0 poky-tiny/poky-altcfg: Use busybox-mdev and systemd
(From meta-yocto rev: a058af8c82738620c9aab784118fd9680abfcf55)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 14:48:28 +01:00
Armin Kuster
0c8397aa68 gcc-8.3: remove 8.3 from zeus
warrior only had one gcc so lets be consistent.

This will also reduce our maintenance overhead and we don't build this either

(From OE-Core rev: fa4ecadd980eff95eacd840ba0259f6272daa9aa)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 12:45:47 +01:00
Richard Purdie
4aa7e00724 systemtap: Drop patches merged upstream
Several of our patches were merged upstream just beyond our current version.
Update to that version and drop them.

(From OE-Core rev: 815a956f7bf4de031b7764f27f3eac005a15b5ce)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 12:45:47 +01:00
Nathan Rossi
7289dccd09 archiver.bbclass: Do not archive srpm's if there are no package tasks
Do not attempt to archive recipes which have no packaging tasks (e.g.
inherits nopackages).

(From OE-Core rev: 8618425e3f5a095a4fd409029c46e770c9526eee)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 12:45:47 +01:00
Nathan Rossi
e5fe46c4c0 security_flags.inc: Add overrides for glibc-testsuite to match glibc
Ensure glibc-testsuite has the same flags as glibc.

(From OE-Core rev: f8ab08441f90eb75295304c57746c6e5f907ca64)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 12:45:47 +01:00
Nathan Rossi
568130c122 gcc-testsuite.inc: Fix ssh.exp, ensure multilib_flags are populated
The 'process_multilib_options' function of dejagnu also populates the
'multilib_flags' content from the '--target_board=' arguments. The
'ssh.exp' generated is missing this call ('user.exp' includes it).

(From OE-Core rev: 4d3d7cac012a1f53c61a997615a761a7f25dd33f)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 12:45:47 +01:00
Richard Purdie
ac5479a3a3 binutils/glibc-testsuite: inherit nopackages to fix world builds
These recipes don't need to generate packages but did contain the packaging tasks which
would be triggered by a world build. They showed warnings or errors. Simplest fix
is to remove the unneeded tasks with the nopackages class.

Also don't attempt stash_locales task

(From OE-Core rev: a34420e1bdb9a695fe7abd3b26426d7ae6113349)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 12:45:47 +01:00
Nathan Rossi
182267b305 glibc-testsuite: Create a recipe to implement glibc test suite
A recipe needs to be created for the test suite due to the dependency
chain between libgcc -> glibc -> libgcc-initial, and the requirements of
the test suite to have libgcc for compilation and execution.

The glibc test suite does not use dejagnu like the gcc test suites do.
Instead a test wrapper script is used along with the assumed dependency
of having the same filesystem available on build host and target. For
qemu linux-user the same filesystem is inherently available, for remote
targets NFS is used. Separate test wrapper scripts are created for qemu
linux-user or ssh targets, with the same TOOLCHAIN_TEST_* variables used for
configuration.

(From OE-Core rev: 6c4d581c35ebd51c4b080ac38175d93f0480f97d)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 12:45:47 +01:00
Nathan Rossi
6ccf0746cf gcc-runtime: Add do_check task for executing gcc test suites
Add a do_check task to implement execution of the gcc component test
suites. The component test suites require execution of compiled programs
on the target.

The implementation provided allows for execution testing against a host
via SSH or within the local build environment using qemu linux-user
execution. The selection of execution is done via the
TOOLCHAIN_TEST_TARGET variable, and configuration of the remote host is
done with the TOOLCHAIN_TEST_HOST, TOOLCHAIN_TEST_HOST_USER and
TOOLCHAIN_TEST_HOST_PORT variables.

By default the do_check task will execute all check targets, this can be
changed by setting MAKE_CHECK_TARGETS to the desired test suite target
(e.g. check-gcc or check-target-libatomic).

(From OE-Core rev: 9d5d680baa91b34dc97641f98856a51d1bb060c1)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 12:45:47 +01:00
Nathan Rossi
9d00c56d5b binutils-cross-testsuite: Create recipe for test suite execution
Create the do_check task in a new recipe 'binutils-cross-testsuite'.
This recipe is built within a target recipe (not -cross) to ensure
correct testing against target specific libraries/etc. The do_check task
is used to execute the binutils test suite for the cross target
binutils. By default this executes tests for binutils, gas and ld. This
can however be changed by setting CHECK_TARGETS to the desired test
suite target (e.g. 'gas').

The binutils test suites do not require any target execution, as such
the check task can be run without QEMU or a target device. However
since the binutils tests do rely on a C compiler there is dependence on
both gcc and libc in order to run the tests.

(From OE-Core rev: 1fb98bfdccb82474176fe8fca616aea84475942e)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 12:45:47 +01:00
Nathan Rossi
f7194f29ce dejagnu: Add dejagnu for binutils/gcc test suites
The binutils and gcc test suites use dejagnu for execution. Copy the
dejagnu recipe from meta-oe, and update it to 1.6.2.

(From OE-Core rev: 72692268b0c578450b568cfc2527098673c1dbe0)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 12:45:47 +01:00
Joshua Watt
c4569ec7ba oeqa: reproducible: Preserve sstate mirror for first build
Preserves the SSTATE_MIRROR variable for the first build in the
reproducible test. This patch is intended to test the theory that using
the Yocto autobuilder sstate mirror will still be reproducible. The
autobuilder always does clean builds and never rebuilds recipes that
were built previously, thus building with the mirror but not
sharing tmpdir and sstate with previous builds should be reproducible.

There is no guarantee that all sstate caches are populated from clean
builds so this patch cannot be submitted to master, and I'm not
bothering sending it to the mailing list.

(From OE-Core rev: 6b8e0077339a89cb01aa40c1b367a4e41a638892)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 12:45:46 +01:00
Scott Rifenbark
196561b696 ref-manual: sync list of image types with source
(From yocto-docs rev: fc2817a4ca75efcb556c84ba5c6edcb4d703a78f)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 11:59:45 +01:00
Scott Rifenbark
36500d9d87 poky-end: Added "pylint3" package to Ubuntu essentials.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 11:59:45 +01:00
Adrian Bunk
7b989f563f Update to KERNEL_DEVICETREE variable.
Corrected the requirements for the KERNEL_DEVCIETREE
variable example.

(From yocto-docs rev: 0502910c81f4d669457155ed5f52d5fa775d8d6d)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 11:59:45 +01:00
Scott Rifenbark
7f04f85f71 dev-manual: Updated "Creating a Team Development Environment"
This section needed the wording updated.

(From yocto-docs rev: dd9e09273e9e5d5b6b43bf508f50d4d57e0dc569)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 11:59:45 +01:00
Scott Rifenbark
01a4b3f0a0 ref-manual: Updates to "Building Your Recipe"
(From yocto-docs rev: 6aa1fe818c284c1d740ce8063d58c664e73d380d)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 11:59:45 +01:00
Scott Rifenbark
cfa0507589 ref-manual: Updated the "AS" variable
(From yocto-docs rev: ebd659999da3c465e1dbe3fb07d5eedbb6ff4c8f)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 11:59:45 +01:00
Richard Purdie
f399b2d73b poky: Use 5.2 kernel by default
(From meta-yocto rev: 7bab9fe27ff6ed67c2f7dfbfe939527f1a6a4430)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:25:29 +01:00
Alexander Kanavin
48945dfca3 local.conf.sample: add a commented-out option to enable the gtk UI qemu frontend
Gtk is disabled by default as SDL is somewhat quicker to build.

(From meta-yocto rev: d48f63bba98c94171db5da826c35c50ff638d2fb)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:25:29 +01:00
Kevin Hao
49f24df065 meta-yocto-bsp: Bump to the v5.2 kernel
Boot test for all the supported boards. Also drop the v5.0 bbappend
since we no plan to support it anymore. There are some
kernel_configcheck warning when building some boards, the patches [1]
for them have been sent to kernel-meta for merging.

[1] https://lists.yoctoproject.org/pipermail/linux-yocto/2019-August/007908.html

(From meta-yocto rev: c6e974e12c1d7fe0d155b6cf1bc0c1f4a6ee69d0)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:25:29 +01:00
Richard Purdie
3f8d0969d1 gcc-cross: Fix header file corruption problems
gcc's makefile can move files, replacing with the contents "timestamp". This
corrupts the headers and breaks things like the gcc testsuite.

Add in a fix to ensure the headers are not corrupted through their hardlink copies.

(From OE-Core rev: 7e75ed5aec86b94fe7fadbed606619f84a2e58e7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:24:41 +01:00
Richard Purdie
646c754b53 systemtap: Use latest and greatest git version for 5.2 kernel support
Systemtap has issues with the 5.2 kernel which are fixed in master, we helped
debug and submitted some of the patches. Update to a git version which includes
all the fixes.

(From OE-Core rev: 7054ec111c7a011adb8a39b3a70292b29470e2aa)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:24:41 +01:00
Ross Burton
4738a499ae core-image-sato: don't use 512MB in qemumips
qemumips doesn't appear to work well with 512MB of RAM and randomly hangs.  As
the bump to 512MB was primarily motivated by the memory needs of virtualised GL
which doesn't work in qemumips currently, drop the memory back to 256MB for
qemumips.

(From OE-Core rev: 499a31cf06c934b40b5866d5eb77c9ad20c9a15f)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Adrian Bunk
31f5a835f5 Remove leftovers from the eglinfo removal
(From OE-Core rev: 8d692de6a13f881e92c254fa60b18d8fe59be830)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Adrian Bunk
49224db935 systemd: Update to the latest 242 branch
Remove patch for issue fixed upstream.

(From OE-Core rev: 8f06385bb4a8244ca51daeef0018bfbdd0a93161)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Nathan Rossi
4364a26db1 oe-selftest: Implement console 'keepalive' output
Similar to bitbake, implement a 'keepalive' output to the console to
ensure CI systems do not kill the process. The default timeout for
bitbake is 5000s.

(From OE-Core rev: 77939cca96fa5467c88eafa3ac0db2db4aef09d6)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Bruce Ashfield
ecfa7aaea3 linux-yocto/5.2: config tweaks and kallsyms fix
Integrating some 5.2 configuration changes (for new board supprt), and
the following fix:

 kallsyms: Don't let kallsyms_lookup_size_offset() fail on retrieving the first symbol

With this fix, we no longer see:

   [    0.032677] kprobes: failed to populate blacklist: -22

during boot on arm/mips

(From OE-Core rev: 2dc78e805d80bdba8710a6a417fc139e884b9ea9)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Nathan Rossi
1c115da446 Clean up remnants of glibc-initial
Remove remnants of the glibc-initial recipe.

(From OE-Core rev: 332b1e21db3e0cbeeb14f12dd6aeedb89b76d761)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Nathan Rossi
aaa6e45a28 oeqa/core/tests: Fix test_data module tests
These two tests relied on the context containing the results information.
This was moved into the OETestResults class.

(From OE-Core rev: ddad00bfec3b10b5a15a2a8eb57612bb5968f51f)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Nathan Rossi
273d72bbe8 oeqa/core/tests: Skip test_fail_duplicated_module
At some point the modules in tests/cases/loader/invalid/ were removed,
this test relied on having tests/cases/loader/invalid/oetag.py to
trigger a ImportError in the loader module. Skip this test.

(From OE-Core rev: cf79aa6383e2a2773e53d5b3082154777646cda4)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Nathan Rossi
7108fa48b7 gcc-common.inc: Process staging fixme with correct target/native sysroot
Correct the 'staging_processfixme' call so that target sysroot and
native sysroot paths are corrected when extracting the stashed build
directory. This is required for 'make check' to work correctly due paths
used in configuration and scripts which point at the native sysroot.

(From OE-Core rev: 2c47ffb65ec16af50112f9c388dc85439c069848)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Ross Burton
efafb13e2e systemd: explicitly set the path to nologin
Set the path to nologin as with sulogin etc so we don't try to execute binaries
from the build path on the target (as the build finds a nologin in the sysroot
at build time).

(From OE-Core rev: 15d57de00a5c2763cc9ddb71d3e6b52a57f3fcd1)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Chen Qi
1a4eb65982 python-numpy: rdepend on multiprocessing module
`import numpy.distutils' gives people the following error.

  ModuleNotFoundError: No module named 'multiprocessing'

Fix it by adding multiprocessing dependency.

(From OE-Core rev: 08198d658b3617ba5e124f82540eba5e41fdad6c)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Zang Ruochen
f1c4a5a9d1 logrotate:upgrade 3.15.0 -> 3.15.1
(From OE-Core rev: 9a430fefb6e5e9bffa84eb64eb053542e6aaa74c)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Chen Qi
6926af57a2 python-testtools: rdepend on doctest module
`import testtools' will give people error for lacking of
doctest module. Add it to RDEPENDS to solve the issue.

(From OE-Core rev: eecde5b90fd8b0315e5f3540b861265fabaf1e73)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Armin Kuster
e674655bdf gcc-8.3: Security fix for CVE-2019-14250
Affects < 9.2

(From OE-Core rev: c608f32995c6f067c4f56e46c527e8e9c79e2295)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Ross Burton
906bb51677 libnl: don't patch libnl-3.0.pc
This patch originally came from oe-classic in 2010 with the comment "fix pc file
so that it actually links to the support libraries".  If an application wants to
link to the support libraries then it should be using the relevant .pc files to
do so.

oe-core builds successfully with this patch removed and other distributions
don't carry it, so drop the patch.

(From OE-Core rev: f4a544f46e2a58e64e90d92855d1d85966eefa10)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Ross Burton
3417dcede5 libnl: upgrade to 3.5.0
Drop the musl workaround, as upstream has solved this correctly now.

(From OE-Core rev: 6f777c872064cada250043da60d24295153642b6)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Ross Burton
afc4d8b9d4 libedit: remove FETCHCMD append
This dates from when upstream was for some reason refusing the wget user agent,
but this isn't the case anymore:

$ wget http://www.thrysoee.dk/editline/libedit-20190324-3.1.tar.gz
...
HTTP request sent, awaiting response... 200 OK
Length: 521999 (510K) [application/x-gzip]
Saving to: ‘libedit-20190324-3.1.tar.gz’
2019-09-03 11:53:20 (1.22 MB/s) - ‘libedit-20190324-3.1.tar.gz’ saved [521999/521999]

(From OE-Core rev: 491aff847714464f1edf79968d3684e07764636a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
He Zhe
40afea45e2 ltp: syscalls: rt_sigwaitinfo01: Fix failure for MIPS arches
Backport a patch to fix the following failure.
rt_sigtimedwait01    1  TFAIL  :  .../sigwaitinfo01.c:58: test_empty_set
(.../sigwaitinfo01.c: 148): Unexpected failure:
TEST_ERRNO=EINVAL(22): Invalid argument

(From OE-Core rev: 26f9a7401f6379056e0a29f45e3817dee0d56e40)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Mark Asselstine
f24aedeff8 sdkext: use simpler kernel module for devtool test
The current devtool test for the building of an out-of-tree kernel
module uses something which requires several "high order" kconfigs to
be set. This results in the test failing, not for expected reasons,
but rather because it depends on specific kernel configuration.

You will get error messages such as

  ERROR: "video_ioctl2"
  [.../1.0-r5/testsdkext/workspace/sources/v4l2loopback-driver/v4l2loopback.ko]
  undefined!
  ERROR: "video_unregister_device"
  [.../1.0-r5/testsdkext/workspace/sources/v4l2loopback-driver/v4l2loopback.ko]
  undefined!

Using a simpler hello-world kernel module example will only require
that CONFIG_MODULE is enabled, thus avoiding a false positive.

(From OE-Core rev: 48ad9cffa5f9412a8225c61be7e3528e2bdad095)

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-06 08:15:45 +01:00
Martin Jansa
bf2e0b039a bitbake: fetch2: show warning when renaming the archive with bad checksum failed
* noticed on read-only sshfs premirror
* it was showing the warning about renaming the file:
  WARNING: laser-geometry-1.6.4-r0 do_fetch: Renaming /jenkins/mjansa/sshfs/webos-ose-thud/downloads/laser_geometry-1.6.4.tar.gz to /jenkins/mjansa/sshfs/webos-ose-thud/downloads/laser_geometry-1.6.4.tar.gz_bad-checksum_1ee7479b8c5914b4ffae996945121441

  and then failed because of movefile() issue with python3 (fixed in previous commit):
  ERROR: laser-geometry-1.6.4-r0 do_fetch: Error executing a python function in exec_python_func() autogenerated:

  with movefile() fixed, it let do_fetch continue and re-fetch locally with the right
  checksum, but still the renamed file didn't exist, because of movefile failure - add
  another warning when the movefile fails - for whatever reason - unfortunately movefile
  prints error messages with just print() so the real error is hidden only in log.do_fetch
  in this case:
  movefile: Failed to move /jenkins/mjansa/sshfs/webos-ose-thud/downloads/laser_geometry-1.6.4.tar.gz to /jenkins/mjansa/sshfs/webos-ose-thud/downloads/laser_geometry-1.6.4.tar.gz_bad-checksum_1ee7479b8c5914b4ffae996945121441 [Errno 30] Read-only file system: '/jenkins/mjansa/sshfs/webos-ose-thud/downloads/laser_geometry-1.6.4.tar.gz' -> '/jenkins/mjansa/sshfs/webos-ose-thud/downloads/laser_geometry-1.6.4.tar.gz_bad-checksum_1ee7479b8c5914b4ffae996945121441'

(Bitbake rev: 9a1bf4ba9ec00c2a222d820f8f83d1f056b021d6)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 10:18:58 +01:00
Martin Jansa
3e21648723 bitbake: utils: Fix movefile() exception handling with python3
* with python3 this fails with:
  File: 'bitbake/lib/bb/utils.py', lineno: 799, function: movefile
       0795:        try:
       0796:            os.rename(src, destpath)
       0797:            renamefailed = 0
       0798:        except Exception as e:
   *** 0799:            if e[0] != errno.EXDEV:
       0800:                # Some random error.
       0801:                print("movefile: Failed to move", src, "to", dest, e)
       0802:                return None
       0803:            # Invalid cross-device-link 'bind' mounted or actually Cross-Device
  Exception: TypeError: 'OSError' object is not subscriptable

(Bitbake rev: d6e43c443ddbbe467c4380c48d2bc28ae18504a1)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 10:18:58 +01:00
Alexander Kanavin
88a49ffbd8 eglinfo: remove the recipe
Last commit upstream was in Sep 2014; pull requests have been ignored since.

I believe eglinfo from mesa-demos is an adequate and maintained alternative.

Also this recipe was using an ugly waf blob placed directly into oe-core, which
was also dependent on python 2.

(From OE-Core rev: aa36510ebea93c1f6f327152e5aa63beccad0275)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 09:55:50 +01:00
Alistair Francis
b8c2575002 qemuriscv: Generate a wic rootFS with a larger filesystem
This allows us to generate a rootFS with a large filesystem for use with
QEMU.

(From OE-Core rev: e06439200e44999c1e2f88d7d6c651da13698ca7)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 09:55:50 +01:00
Armin Kuster
b8ce258f15 gcc-9.2: Security fix for CVE-2019-14250
Affects: <= 9.2

(From OE-Core rev: af761de211ecdcb358c6412f9e7e3398b7525cf2)

Signed-off-by: Armin Kuster <Akuster@mvista.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 09:55:50 +01:00
Khem Raj
6b3e91fe1a libgpg-error: Fix build with gawk 5.x
(From OE-Core rev: 11f4bf5ace2e6c0baf0eebbab128d4867139249d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 09:55:50 +01:00
Khem Raj
a4b6d8b7eb gcc: Fix ldbl-128 support for musl
Let the patch trigger based on target triplet instead of passing via
configure, this lets gcc compile for 64bit otherwise it ends up with
libgcc  build errors

error: unable to emulate 'TF'

(From OE-Core rev: 2259bf5366a9ff654dfaf15baa5df2d943383ce6)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 09:55:50 +01:00
Khem Raj
3a207a2a5c gcc: Move STANDARD_STARTFILE_PREFIX_1 and STANDARD_STARTFILE_PREFIX_2 back to gcc.c
when compiling for ppc64, build emits additional
STANDARD_STARTFILE_PREFIX_1 and STANDARD_STARTFILE_PREFIX_2 into
gcc/defaults.h which is not conditional because it really want to
override others with this new value, but it ends up with two definitions
since it gets emitted _after_ the definition this patch moves to
default.h and ends up in duplicate defines.

(From OE-Core rev: 2ad649ee9027011ae7bf6fd95417237b86e394e5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 09:55:50 +01:00
Khem Raj
6e3fac8de6 tune-riscv: Drop littleendian and introduce bigendian tune
Default riscv is little-endian moreover most of other arches define
bigendian as tune and treats absense as litteendian, this make risc-v
fall in line

(From OE-Core rev: cd6f377591a7bd7b3c61ce580f997aaeffab3df3)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 09:55:50 +01:00
Khem Raj
2bdb7ad840 powerpc-tunes: Introduce bigendian tune
This helps in defining LE tunes and at the same time specifies
endianness on compiler cmdline clearly, clang e.g. defaults to
little-endian always, so unless specified with -mbig-endian won't
compile the code right

(From OE-Core rev: e0fd699d398f0e88fb208970dea7b74e6e9431fe)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 09:55:50 +01:00
Jacob Kroon
c89b16aa09 rm_work: Remove redundant 'after' in addtask statement
Introduced in commit b3de5d5795767a4b8c331fa5040166e7e410eeec.

(From OE-Core rev: bad3918467cc979f278a70a00e828704ef885fd4)

Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 09:55:50 +01:00
Alexander Kanavin
52dfaad0a2 libepoxy: enable x11 PACKAGECONFIG for native/nativesdk
This is needed to enable virgl support in qemu with SDL frontend

(From OE-Core rev: 92d9f9a6f6f3e8630fadeee5921126dfd9be147a)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 09:55:50 +01:00
Alexander Kanavin
02bf8eefa5 default-providers.inc: set mesa as the provider for native(sdk) virtual/libgl
native/nativesdk libepoxy and libsdl2 require this to be set, when they
have the respective opengl features enabled.

(From OE-Core rev: 83432f576731a614385c1c6bae6a0cec5d25c59b)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-03 09:55:50 +01:00
Kai Kang
16405efb85 avahi: launch avahi-daemon after connman
When connman installed to image, /etc/resolv.conf is link to
/etc/resolv-conf.connman. So launch avahi-daemon after connman too
just same as after systemd-resolved.service.

(From OE-Core rev: b4673b5befa339b2ffc3c274b105ab96d730ea2d)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:08 +01:00
Adrian Bunk
c4f07b04f6 libxcrypt: Fix the build with -Os
| In file included from ../git/lib/alg-des.c:66:
| ../git/lib/alg-des.c: In function '_crypt_des_set_key':
| ../git/lib/byteorder.h:24:1: error: inlining failed in call to 'be32_to_cpu': call is unlikely and code size would grow [-Werror=inline]
|  be32_to_cpu (const unsigned char *buf)
|  ^~~~~~~~~~~
| ../git/lib/alg-des.c:81:13: note: called from here
|    rawkey1 = be32_to_cpu (&key[4]);
|              ^~~~~~~~~~~~~~~~~~~~~

(From OE-Core rev: 5d4720dfc8ec29ff3f487f84c5c874678ba20851)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:08 +01:00
Jacob Kroon
0458fa6b83 btrfs-tools: Add PACKAGECONFIG knob for controlling python support
(From OE-Core rev: 823c04c455e921aaed2d5edf064d82c6a4938c64)

Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:08 +01:00
Jason Wessel
eddbd0c314 serial-getty@.service: Allow device to fast fail if it does not exist
Some BSPs use a USB serial port which may or may not actually be
plugged all the time.  It is quite useful to have a USB serial port
have a getty running but it does not make sense to wait for it for 90
seconds before completing the system startup if it might never get
plugged in.  The typical example is that a USB serial device might
only need to be plugged in when debugging, upgrading, or initially
configuring a device.

This change is somewhat subtle.  Systemd uses the "BindsTo" directive
to ensure existence of the device in order to start the service as
well as to terminate the service if the device goes away.  The "After"
directive makes that same relationship stronger.  When used together
this has the undesired side effect that systemd will wait until its
internal time out value of 90 seconds for the device to come on line
before executing a fail operation or letting other tasks and groups
continue.  This is certainly the kind of behavior we want for a disk,
but not for serial ports in general.

The "BindsTo" directive is replaced by the combination of the "PartOf"
and the "ConditionPathExists" directives.  The "After" directive is
unchanged because that will wait for the udev rules to process.  The
"PartOf" directive will issue a stop to the getty service if the
device goes away, similar to the "BindsTo" directive.  The
"ConditionPathExists" is what allows the service to fail fast vs
waiting for the timeout.  When a USB device is not plugged in at boot
you would find a message in the system journal like:

    systemd[1]: Condition check resulted in Serial Getty on \
                 ttyUSB0 being skipped.

If you want to observe the problem with qemu, it is easy to replicate.
Simply add the following line to your local.conf for a x86-64 qemu
build.

    SERIAL_CONSOLES="115200;ttyS0 115200;ttyUSB0"

Login right after the system boots and observe:

   root@qemux86-64:~# systemctl list-jobs |cat
   JOB UNIT                                 TYPE  STATE
     1 multi-user.target                    start waiting
    69 serial-getty@ttyUSB0.service         start waiting
    64 getty.target                         start waiting
    71 dev-ttyUSB0.device                   start running
    62 systemd-update-utmp-runlevel.service start waiting

   5 jobs listed.

You can see above that the dev-ttyUSB0.device will block for 1min 30
seconds.  While that might not be a problem for this reference build.
It is certainly a problem for images that have software watchdogs that
verify the system booted up all the way to systemd completion in less
than 90 seconds.

This other nice effect of this change is that the fast fail device
extend to additional serial ports that may not exist on ARM BSPs or
that might be configured in or out by the dtb files on different
boards.

(From OE-Core rev: f0f359ec9210759f6b4dbfb35d3fba8af208c43a)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:08 +01:00
Oleksandr Kravchuk
8c16b4a8f1 go-dep: update to 0.5.4
(From OE-Core rev: 7a3b36401f86afa13426b302ce31bbd20dd871be)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:08 +01:00
Oleksandr Kravchuk
118fb26ac9 ell: update to 0.22
Changelog:
- Fix issue with DHCP and T1 timeout handling.
- Fix issue with escape characters in peer identity string.
- Add support for setting peer certificate's subject CN mask.

(From OE-Core rev: cbf84908716c867b8bf530460a4eb0dff81da9f4)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:08 +01:00
Oleksandr Kravchuk
e1f4543f64 libevdev: update to 1.8.0
(From OE-Core rev: 11f4f699a99b59f536cd72e0aa9c0751fc886e7b)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:08 +01:00
Oleksandr Kravchuk
3d4e1ceeaa libsolv: update to 0.7.6
(From OE-Core rev: f649bad65202730ac235f99609f51956a7451683)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:08 +01:00
Peter Kjellerstedt
397d1432cb devtool: Avoid failure for recipes with S == WORKDIR and no local files
When extracting the sources for a recipe that has S == WORKDIR and no
local files in the SRC_URI (which, e.g., can happen for a recipe with
a URI that has the unpack=false attribute), the extraction fails with
the following backtrace:

  Traceback (most recent call last):
    File ".../scripts/devtool", line 344, in <module>
      ret = main()
    File ".../scripts/devtool", line 331, in main
      ret = args.func(args, config, basepath, workspace)
    File ".../poky/scripts/lib/devtool/standard.py", line 762, in
    modify
      initial_rev, _ = _extract_source(srctree, args.keep_temp,
      args.branch, False, config, basepath, workspace,
      args.fixed_setup, rd, tinfoil, no_overrides=args.no_overrides)
    File ".../poky/scripts/lib/devtool/standard.py", line 647, in
    _extract_source
      bb.process.run('git %s commit -a -m "Committing local file
      symlinks\n\n%s"' % (' '.join(useroptions),
      oe.patch.GitApplyTree.ignore_commit_prefix), cwd=srctree)
    File ".../poky/bitbake/lib/bb/process.py", line 178, in run
      raise ExecutionError(cmd, pipe.returncode, stdout, stderr)
  bb.process.ExecutionError: Execution of 'git commit -a -m
  "Committing local file symlinks

  %% ignore"' failed with exit code 1:
  On branch devtool
  nothing to commit, working tree clean

This is because no files were found in the oe-local-files directory
and consequently no symbolic links were added using `git add`, but the
`git commit` command was still executed.

(From OE-Core rev: 3fdf304e72a1fb5de8bf9bc21e5b598fefb08648)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:08 +01:00
Yi Zhao
dfe57de912 libbsd: upgrade 0.9.1 -> 0.10.0
License-Update: copyright years updated.

Drop the backport patch.

(From OE-Core rev: 88fb1140f4b65ed33cdd4152ef506461a33371a5)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Changqing Li
f05aaad27b systemd-bootchart: support usrmerge
(From OE-Core rev: 9f0d3f2817d7a9c536e4ab8977c7ad99a5426097)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Changqing Li
afea3c7d65 bootchart2: support usrmerge
(From OE-Core rev: 291ec69e421984e8658bb4c83537e998b0dbc9b1)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Changqing Li
f46768df79 avahi-ui: support usrmerge
(From OE-Core rev: 6e1fc83e7d7285211ae24e38b8fa7fbe7112d126)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Daniel Klauer
fd55f5e425 image.bbclass: Fix debug output for rootfs size
The debug output showed the wrong variable.

(From OE-Core rev: 9b404c24ddc6212576b78c9fc56c57baa0fb3745)

Signed-off-by: Daniel Klauer <daniel.klauer@gin.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Yuan Chao
270bc1fda5 man-db: upgrade 2.8.6.1 -> 2.8.7
(From OE-Core rev: cc557447ca07d99f0c45ba72edde957c2eec208a)

Signed-off-by: Yuan Chao <yuanc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Neil Armstrong
00aa6a4890 mesa: Add support for the panfrost PACKAGECONFIG
Add support to enable the Panfrost Gallium driver in PACKAGECONFIG

(From OE-Core rev: 1685af76eb5d504e085a6e15fb16b902b89d857b)

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Alexander Kanavin
4c45bdff80 webkitgtk: update 2.24.3 -> 2.24.4
In particular this brings an important fix for builds with py3:
"Fix build issue which would cause media controls to disappear when Python 3.x was used during the build process."

https://webkitgtk.org/2019/08/28/webkitgtk2.24.4-released.html

(From OE-Core rev: 62c1a8ead15d58fb1f159dc6cd6cf22fa8183426)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Alexander Kanavin
14a0d1cc90 webkitgtk: use Python 3 for builds
(From OE-Core rev: e7c544f80859d532c64dd6b1988c762bdd09dbbf)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Alexander Kanavin
b67cd613ed virglrenderer: update 0.7.0 -> 0.8.0
This also allows building virglrenderer without python 2.x

(From OE-Core rev: ac1eab26a422136ab12733856de61ce46ca1cdea)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Alexander Kanavin
8099ad5a21 llvm: use python 3 during builds
(From OE-Core rev: 13f9182e7235843290809027b4456ad2fe5e4c40)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Alexander Kanavin
98da689bce pseudo: use python 3 during builds
(From OE-Core rev: 7c2acbd4dff976e8def1e16c6631f9ab74503cae)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Alexander Kanavin
779e1ba408 libpsl: use python 3 during builds
(From OE-Core rev: 3818536b556afab04f2f7d9b9e1028d498cb3926)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Alexander Kanavin
2100fbe529 ca-certificates: use python 3 for builds
(From OE-Core rev: 8157c6d32e2af67211eb8fcd048a0771f10f7b26)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Alexander Kanavin
58e85c60cd qemu: switch to '-vga std' emulated hardware from vmware/cirrus for x86/mips
This is the qemu default since qemu 2.2, is generally supported better,
and is recommended by upstream. It also has already been in use for arm/risc
and ovmf.

Additional information:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=13466
https://www.kraxel.org/blog/2014/10/qemu-using-cirrus-considered-harmful/

'-vga virtio' emulated hardware remains in use when virgl is enabled via a runqemu override.

Also, adjust the error whitelist, as there is a number of new messages
coming from the drivers that are not actual errors.

(From OE-Core rev: 73cb104f3307736f4922f2e0c9648f9b2d3b3b6b)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Alistair Francis
6883a66796 linux-yocto-dev: Mark qemuriscv64 as compatible
(From OE-Core rev: a951900ed4dfcc336439d090137ab64850f6137a)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Alexander Kanavin
db503d411b libffi: fix upstream version check
As there is no version newer than 3.3-rc0 yet, an exception
from the check is needed.

(From OE-Core rev: 5850d42187de00db4b0c01ba97fe41aaec3f6613)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Alexander Kanavin
8d76bfaf22 lsb-release: fix upstream version check
With the new recipe matching the tarbal version, there is
no need for an exception from the check.

(From OE-Core rev: 382bd74e69b7824deb5bb08f8559d22bce272bac)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Bruce Ashfield
a4d8307268 linux-yocto/5.2: update qemuriscv64 SRCREV
The scripts that update my SRCREVs were missing the qemuriscv64. This
SRCREV bump moves it to match the rest of the 5.2 qemu BSPs.

(From OE-Core rev: f6c1b338778e9cb692bd9edf65214f7c355ed6be)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Bruce Ashfield
456a92116a qemu: bump linux-yocto preferred version to 5.2
(From OE-Core rev: 0504760978b65627bb265503896bc2dfb0709475)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Bruce Ashfield
636188943d linux-yocto: introduce 5.2 recipes
Introducing the 5.2 linux-yocto reference kernels. 5.0 is EOL and will
be removed, leaving 4.19 (LTS) and 5.2 as the reference kernels.

This has been build/boot tested on all qemu architectures for
core-image-kernel-dev, and graphics tesed via core-image-sato. No
blocking issues have been found.

(From OE-Core rev: 14472621e4a0d3d3cf4c0bc43a8b7344c10008e3)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Bruce Ashfield
8352682c3b linux-libc-headers: update to v5.2 headers
We drop the patch 0001-arm64-sve-uapi-asm-ptrace.h-should-not-depend-on-uap.patch
since it was a backport and is already part of the 5.2 headers

(From OE-Core rev: c436abca9832f1aa93f30c8d6ff36471d7bc4ca9)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Richard Purdie
77a8ddd87c gcc-cross: Clean up fixed-includes
We had interesting failures where building gcc-cross-powerpc with 5.0 kernel
headers, then building eudev after moving to 5.2 headers failed.

gcc-cross doesn't rebuild when linux-libc-headers changes due to its
listing in SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS. This shouldn't matter but
fixincludes as adding asm-generic/socket.h to its filtered list which
was then replacing the real header with an older version. This mismatch
lead to build failures.

We trust the Linux kernel headers to be ANSI safe so lets just clear out
any headers and trust the originals to be correct.

(From OE-Core rev: f0fcaa88b7b2977c2cb35b060747442ee9ff3dcd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:33:07 +01:00
Armin Kuster
963faf7a7f bitbake: tests/fetch: Resolve fetch error in bitbake-selftest
FAIL: test_wget_latest_versionstring (bb.tests.fetch.FetchLatestVersionTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/pokybuild/yocto-worker/oe-selftest/build/bitbake/lib/bb/tests/fetch.py", line 1229, in test_wget_latest_versionstring
      self.assertTrue(verstring, msg="Could not find upstream version for %s" % k[0])
      AssertionError: '' is not true : Could not find upstream version for db

[YOCTO #13496]

The Oracle UPSTREAM_CHECK_URI used changed and does not work with logic in wget.

Update UPSTREAM_CHECK_URI and UPSTREAM_CHECK_REGEX to match the ones used in the
recipe. Also change the version being checked.

(Bitbake rev: 4cf5bb761c561ddea86f2875be35d05abc8486e1)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-09-01 22:30:42 +01:00
Alexander Kanavin
e47e266916 ltp: move from python 2.x to python 3.x
(From OE-Core rev: e3c32de13e37b674ee8efb585337d57de8c555fd)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Mark Hatle
b4932a18ab yocto-check-layer: Allow any case for README file detection
It's become more commone for files to be named "readme" or "Readme" on github servers
in recent time.  So adjust the scanning to allow any mix of case.

(From OE-Core rev: afe46eca15b6ddfa15c75cb7b707d6dd9aae3eae)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Chen Qi
a0542cf593 bind: fix build with python3 PACKAGECONFIG enabled
If the PACKAGECONFIG item, python3, is enabled, we get the following
QA issue when multilib is enabled.

  ERROR: bind-9.11.5-P4-r0 do_package: QA Issue: bind: Files/directories were installed but not shipped in any package:
  /usr/lib
  /usr/lib/python3.7
  /usr/lib/python3.7/site-packages
  /usr/lib/python3.7/site-packages/isc-2.0-py3.7.egg-info
  /usr/lib/python3.7/site-packages/isc
  /usr/lib/python3.7/site-packages/isc/policy.py
  [snip]

The thing is, when --with-python is specified with a path instead of 'yes',
the --with-python-install-dir is in fact ignored.

Fix this issue by specifying the correct arguments.

(From OE-Core rev: 2c36b3e5c7caae07ffe0cfb816d37fad52d69fc9)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Bruce Ashfield
45e3d3431b devsrc: update arm64 scripts/prepare for kernels 5.3+
We need to include a few more small files for on target module
builds for 5.3+ kernels.

(From OE-Core rev: 9b3134995cf054679d573f28f916a629332ce126)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Bruce Ashfield
d7a0fdf133 perf: v5.3+ build fixes
In the 5.3+ perf builds, there are multiple unistd.h files that need
to be kept in sync. So not only do we update one, we update both to
ensure that libc-headers and the perf build are in sync.

perf checks some key files itself to be sure they are in sync, and
bits.h can be out of sync. There's no build error that results with
bits.h at the moment, but we still make sure they are in sync to
avoid the configure/compile warning.

(From OE-Core rev: b850ee597e7116cc2a7546853f2b976c891196ef)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Bruce Ashfield
e66d183b9e perf: change dependencies on python to python3
The upstream kernel can now handle python3 for the perf scripts, coupled
with the impending EOL of python2, we switch the dependencies in perf
(scripting) to python3.

Outside of dependency changes, we also pass the following two variables
to the perf build: PYTHON=python3 PYTHON_CONFIG=python3-config. To
ensure that our python3 components are used.

For configurations that disable perf scripting, there is no change in
behaviour.

[YOCTO #13358]

(From OE-Core rev: 584af667e0000129bcb5c9e8108485f2f6590eaf)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Bruce Ashfield
4c62122ecb kernel-devsrc: remove python2 dependency
Witht the approaching EOL of python2, the kernel packages need to
be updated to depend on python3.

The core kernel scripts are now python3 safe, making the RDEPENDS
change relatively simple.

but

There are some scripts that are captured in the devsrc files that
are not used, but reference /usr/bin/python. The python3 package
does not provide /usr/bin/python so any package managers with
automatic dependency detection will fail to assemble a rootfs due
to the missing intepreter.

We could drop the scripts from the source capture, but that
risks dropping something that we need in certain operations and
we'd miss when they are updated in tree to explicitly call python3
(since they won't be revisited often). Light testing shows that the
scripts do run with python3, so rather than removing them, we change
the interpreter once they are copied, and automatic dependency
detection won't cause us rootfs assembly issues.

(From OE-Core rev: 6745088b6c9e5c70df59d667347ede470df9a91d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Bruce Ashfield
c5a7f3eac6 bluez5: fix build against libc-headers 5.2+
Backporting the following upstream commit to fix the build against
kernel 5.2+ headers:

[
   Subject: [PATCH] tools: Fix build after y2038 changes in glibc

   The 32-bit SIOCGSTAMP has been deprecated. Use the deprecated name
   to fix the build.
]

Upstream-Status: backport commit f36f71f60b1e68c0f12e615b9b128d089ec3dd19

(From OE-Core rev: b4731a1202cfa45c7e1f635552398b89a37f2eeb)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Joshua Watt
7e01f2fdad oeqa: reproducible: Do two clean builds
Perform two clean builds without sstate instead of one partial rebuild
with sstate and one clean build without. There are some classes of
reproducibility issues that this solves, and while we would like to
resolve them in the long term the direction to do so is not currently
clear.

(From OE-Core rev: e97c529bfa4e1d0038ea44f15ee3298003daf981)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Joshua Watt
dc04d6cdc2 oeqa: Enable reproducible build test
[YOCTO #13323]

(From OE-Core rev: 3fc08155b72f711c48f9a667539305eea869b5e9)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Joshua Watt
977aee76cf oeqa: reproducible: Record packages in test results
Records the results of the reproducibility analysis in the JSON test
results file. This makes it easier to do post-test analysis on the
packages.

[YOCTO #13324]

(From OE-Core rev: 6c357c8eee322163da96df676a54ff70a0bdc911)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Joshua Watt
a0ce9a8bbc oeqa: Set LD_LIBRARY_PATH when executing native commands
Some commands like to look for libraries at runtime manually (e.g.
Python's ctype.utils.find_library() function). For this to work
properly, the libraries in the native sysroot must be findable. To
accomplish this, set LD_LIBRARY_PATH to search library paths in the
native sysroot.

(From OE-Core rev: 3a7305bdfded3c8988484c3f430110cc121123b5)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Joshua Watt
569687083f oeqa: reproducible: Use subTest for packages
Runs each package class reproducibility test in a separate sub-test.
This allows the other sub tests to still run in the event that one
fails.

(From OE-Core rev: f0095e6c1b915e1e6ded111f4bf77fff0362e29a)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Joshua Watt
8282ec4bd0 oeqa: reproducible: Cleanup reproducible build
Cleans up the output from the reproducible build before building to
ensure consistent results. Note that the output put is purposely left
after around after the build so that non-reproducible packages can be
diffed.

(From OE-Core rev: f67bb34c8e7950779920b696f8502dbaed9eded5)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
He Zhe
4e1ea3e9c9 ltp: cve/meltdown.c: Fix kernel symbol finding
Backport a patch to fix the following error.
safe_file_ops.c:219: BROK: Expected 3 conversions got 2 at meltdown.c:272

(From OE-Core rev: 372a211657bfddd7f32f30043ec06198f8c27101)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Christophe PRIOUZEAU
026f53d977 common-licenses: update BSD-2-CLAUSE license text
Using the generic BSD-2-CLAUSE license as specified on
https://opensource.org/licenses/BSD-2-Clause

(From OE-Core rev: d532d19d35e19beb8d80ee38429562aa08cc9039)

Signed-off-by: Christophe Priouzeau <christophe.priouzeau@st.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Robert Yang
19985178e7 nfs-utils: 2.3.3 -> 2.4.1
- Remove 0001-Do-not-pass-null-pointer-to-freeaddrinfo.patch, the new api
  can check the pointer before free it.

- Rmove 0001-makefile.am-update-the-path-of-libnfs.a.patch, it is already in
  the source.

- Rmove nfs-utils-musl-limits.patch, it is already fixed.

-  Rebased the following patches:
   0001-Makefile.am-fix-undefined-function-for-libnsm.a.patch
   0001-configure.ac-Do-not-fatalize-Wmissing-prototypes.patch
   bugfix-adjust-statd-service-name.patch
   nfs-utils-musl-res_querydomain.patch

(From OE-Core rev: 5601523e16ebd35d7de8d22ec5590618ea9f7ffb)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Robert Yang
d6094e1e4e ccache: 3.7.1 -> 3.7.3
(From OE-Core rev: 891f69f0fea7376b6fe5de95af2b32219bfe6e31)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Alexander Kanavin
f32128bda2 mesa: disable gallium swrast driver on x86 x32
It was found to crash the X server on startup under qemu.

(From OE-Core rev: 045011ed29c0ab45892ad0881a4a8987f2adc977)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Alexander Kanavin
b0bad37101 qemu: set default RAM to 256M for all machines
There was a discussion about what amount of RAM is appropriate for a
default; the outcome was that for now it is still 256M. Some qemu machine
definitions have however set this to 512M so for the sake of
treating all architectures fairly, they are reset back to 256M.

Also runqemu is adjusted to use 256M if QB_MEM is not set at all.

http://lists.openembedded.org/pipermail/openembedded-core/2019-August/285900.html

(From OE-Core rev: 04c01b6cc5be3e6d45d0e04571640648a5655a8b)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Alexander Kanavin
51baa9a3b4 rpm: resolve a host contamination issue for mono packaging
This is perhaps not the most elegant patch but it be dropped
once rpm is updated to the soon-to-be-released version 4.15
where upstream has removed mono dependency resolution altogether.

(From OE-Core rev: c829e89f99c973787f31422b4c32eeebe8c383d3)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-30 17:10:28 +01:00
Richard Purdie
ba6a568512 ca-certificates: Fix reproducibilty and multilib issue
This command was dependent on the order of files on the disk and for multilib builds
could result in:

Error: Transaction check error:
  file /etc/ca-certificates.conf conflicts between attempted installs of ca-certificates-20190110-r0.core2_32 and lib64-ca-certificates-20190110-r0.x86_64

Sorting the file makes things deterministic.

(From OE-Core rev: c8f329fc562c9eecdcc1cb10d2c7661f44110fb4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-29 17:12:34 +01:00
Richard Purdie
a91448bf73 poky-altcfg: Replace poky-lsb with poky-altcfg
LSB has been removed, replace poky-lsb with poky-altcfg, a place
where we can test different configurations on the autobuilder as well
as showing an example of how to subclass a distro configuration.

(From meta-yocto rev: 00fdefff55717331a220fe624f29c387970d31d7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-29 14:05:12 +01:00
Adrian Bunk
66dba02728 Remove LSB support bits
LSB as a standard isn't current and isn't well suited to embedded
anyway. Its putting artifical constraints on the system and with modern
layer technology, would now be better off as its own layer. As such
its time to split it out.

(From meta-yocto rev: 8bb0237a74c2b66d0d0f19e600a5fb39df67894f)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-29 14:05:12 +01:00
Alexander Kanavin
f7298d88ea beaglebone: use the default of 256M rather than 512M
This is done for the sake of using the same default
everywhere; see here for details:
http://lists.openembedded.org/pipermail/openembedded-core/2019-August/285900.html

(From meta-yocto rev: f4ba98ed3c866ec3db90404f894d5aeaa5d79dfd)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-29 14:05:12 +01:00
Adrian Bunk
bac4bc9aa6 Remove LSB support
LSB as a standard isn't current and isn't well suited to embedded
anyway. Its putting artifical constraints on the system and with modern
layer technology, would now be better off as its own layer. As such
its time to split it out.

The only part with some (marginal) usage is lsb_release,
which is split from the lsb package into an own lsb-release
package.

(From OE-Core rev: fb064356af615d67d85b65942103bf943d84d290)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-29 14:05:12 +01:00
Chen Qi
1af3e4bea6 bitbake: cooker.py: remove generation of recipe-depends.dot
The information of recipe-depends.dot is misleading.

e.g.
$ grep xz recipe-depends.dot | grep bzip2
"bzip2" -> "xz"
"xz" -> "bzip2"

Users would wonder why they get some circular dependency.

The information is derived from removing the task names
of task-depends.dot. It's not giving people any additonal
information, and it's misleading.

So we remove the generation of this file.

(Bitbake rev: 4c484cc01e3eee7ab2ab0359fd680b4dbd31dc30)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 16:44:09 +01:00
Joshua Watt
46a71949de bitbake: bitbake: respect force flag in runall and runonly
Specifying the force flag will now cause runall and runonly to
invalidate the tasks before running them. This allows a --runall or
--runonly to force the tasks to run, even if they would have otherwise
been skipped, e.g.:

 bitbake -f --runall fetch

Will run all do_fetch tasks even if they wouldn't be necessary (for
example, skipped by setscene)

(Bitbake rev: 71e52d3822016027106f2a2e74b8dfdf20f5dc1e)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 16:44:09 +01:00
Nathan Rossi
6e48f9aa23 scripts/lib/resulttool/report.py: Add more result types
Add additional result types into the dictionary to handle dejagnu style
test results. These include PASS, FAIL, XPASS, XFAIL, UNSUPPORTED,
UNTESTED, UNRESOLVED and ERROR.

(From OE-Core rev: 684fc36402a23760b203f4761f284043031c799c)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 16:44:09 +01:00
Nathan Rossi
98e5273971 oeqa/utils/nfs: Add unfs_server function to setup a userspace NFS server
Add a nfs module into oeqa utils. This module provides unfs_server which
allows a test case to build unfs3-native and setup the unfs server on a
target directory of the host. This directory is then shared and can be
mounted by the host or a target device attached to the host (e.g. qemu
via tap or slirp). The nfs server is setup over UDP and automatically
assigns user privileged ports. The function provides the UDP ports for
the server as part of a returned python contextmanager which handles
cleanup of the server process on completion or exception.

Also add a 'udp' arg to get_free_port to get a free UDP port.

Note: unfs3 still requires the host to have rpcbind or portmap running.

(From OE-Core rev: c754fd85be85ad0a381b642365eca17cea8eb627)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 16:44:09 +01:00
Nathan Rossi
b88477d069 binutils: Fix mips patch which changes default emulation
The patch incorrectly removes 'mips_elf32_ntrad_le_vec' from the
'targ_selvecs' replacing it with duplicate entries for
'mips_elf32_ntrad_be_vec'. Correct this so that the default binutils can
still handle 'mips_elf32_ntrad_le_vec' binaries.

(From OE-Core rev: cdd499f23c129306da879b6f614ca1b720724300)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 16:44:09 +01:00
Chen Qi
ca2207f418 commands.py: fix typo
(From OE-Core rev: 9b1c150573ffd0e68d37772d5f47482d86ddde6d)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Changqing Li
12bca525d5 libedit: fix failed to get history
Reproduce steps:
run fileman under examples, history command not work,
nothing is output.

Fix by increase history_offset when add history, if not,
it will make current history event not align with offset,
and cannot get history correctly.

(From OE-Core rev: a1ff64bee270c151532e68a5151e622de71b5321)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Chen Qi
e97ed8dcaa bbtests.py: remove recipe-depends.dot
This file is giving misleading information. There's a patch
for bitbake to remove the generation of this file. Remove
it from OEQA as well.

(From OE-Core rev: 691a45265a6a451c4bc7720ef39d99b84342822a)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Peter Kjellerstedt
bc1cedc3ea libffi: Make it build for MIPS o32
This solves the following errors:

  src/mips/o32.S: Assembler messages:
  src/mips/o32.S:286: Error: opcode not supported on this processor:
    mips32r2 (mips32r2) `s.d $f12,((16*4)-10*4)($fp)'
  src/mips/o32.S:287: Error: opcode not supported on this processor:
    mips32r2 (mips32r2) `s.d $f14,((16*4)-8*4)($fp)'

(From OE-Core rev: 250d85144c0118aebfce105f02425c25cb028087)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Adrian Bunk
7e158306e6 systemd: Update to the latest 242 branch
Remove backported patches applied upstream.

(From OE-Core rev: 5919729f1bd21ba8bf08ce02edb7cc3624c5d4b9)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Adrian Bunk
bcff4d74a1 linux-dtb.inc: Remove
It only printed a warning since Yocto 2.4,
documented to be removed in a future release.

(From OE-Core rev: 8976319d5ba0c9d4dbcee9b5226c105df30a2166)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Adrian Bunk
e886473bd4 systemd: Print a buildtime warning about the status with musl
It is possible if a user really has to use it, but not recommended.

(From OE-Core rev: 10c1a27501a32740a03c3c6c0684c7d24374af08)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Andre McCurdy
082e31ce2f sqlite3: explicitly set target endian-ness
Unless SQLITE_BYTEORDER is predefined, the code falls back to build
time huristics - which are not always correct (e.g. in sqlite 3.28.0
big-endian ARM is mis-detected).

(From OE-Core rev: c0fc43c228acd44499d9a1c257ec5e4cf42ed050)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Andre McCurdy
429f2e933e sqlite3: make CFLAGS consistent across native, nativesdk and target cases
The previous simplification:

  https://git.openembedded.org/openembedded-core/commit/?id=604777acfc54d285f315b622bd147ed02d55d6fd

looked OK but didn't actually work as expected. The native and
nativesdk classes re-set CFLAGS after the += has been applied and
so any modifications made via += are lost. Use _append instead.

(From OE-Core rev: b02d83f7ffc72b96799a7964a90709eef02aa29d)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Andre McCurdy
b054f8d3ba base-files: nsswitch.conf is glibc specific
(From OE-Core rev: e9f751a6fd6a4fc1cfac74202e1b71291aade705)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Andre McCurdy
ba6898d1b2 rootfs-postcommands.bbclass: add inittab tweak to read_only_rootfs_hook()
It's not clear that we actually need to call mount -o remount,XX from
the busybox-inittab inittab at all, but as we currently do, let's
respect read-only-rootfs in IMAGE_FEATURES and not remount / as rw.

(From OE-Core rev: 8840a831d47a94f36bb2e173164dbaf9b955e809)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Andre McCurdy
cfbd8247a6 packagegroup-core-boot: drop duplicate MACHINE_ESSENTIAL_EXTRA_RDEPENDS, etc
Default values for MACHINE_ESSENTIAL_EXTRA_RDEPENDS and
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS are set from bitbake.conf and so
don't need to be duplicated in the packagegroup-core-boot recipe.

(From OE-Core rev: 82983c94da2446ab86b189a0278156ee884d0976)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Andre McCurdy
2c7e401a1e tune-ep9312.inc: fix TUNEVALID description
(From OE-Core rev: 62afb4e79f3f8e491db290e5932a54f3dc3f962a)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Andre McCurdy
a1a16df6ac tune-arm1176jz-s.inc: add support for arm1176jz-s CPU specific tuning
(From OE-Core rev: 95823b7eab141f8969367c4f9b76b73bf2e664dc)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:22 +01:00
Andre McCurdy
8c6004341e tune-arm1136jf-s.inc: add hardfloat support
(From OE-Core rev: 6e057cc367ab9cf82901ba8c7c3cfab35c4cb9ab)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Andre McCurdy
b259bd31eb bitbake.conf: drop FETCHCMD, GITDIR, etc fetcher over-rides
This completes cleanup originally proposed in 2012:

  http://lists.openembedded.org/pipermail/openembedded-core/2012-July/064224.html

Current versions of bitbake have "sane" default fetcher commands
so it's no longer necessary for bitbake.conf to over-ride them.

(From OE-Core rev: 4ff058226cfc3e7d5bf9a873d1de4475f65ef2f2)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Adrian Bunk
4265f8f99c python: Remove PYTHONLSBOPTS that hasn't been set for some time
(From OE-Core rev: 26f086834c05f97cbfd17fd16e003a89753dc995)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Adrian Bunk
ccc19f8dd4 meta/recipes.txt: Stop documenting the long removed recipes-lsb4
(From OE-Core rev: 0d7d2afdad9f0a04c2090367107aa81e636a54b2)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Changhyeok Bae
0abaeab83f iputils: upgrade to s20190709
build system is changed to meson.

(From OE-Core rev: 3d2085642a8b4058ded6ab0c426feefc097f85c1)

Signed-off-by: Changhyeok Bae <changhyeok.bae@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Zang Ruochen
99e652fa88 python3-pip:upgrade 19.2.2 -> 19.2.3
(From OE-Core rev: f8901d9c2a019e37357e8d82e483948a1bdc7f5a)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Mazliana
1b376420f6 oeqa/kerneldevelopment: Able to apply a single patch to the Linux kernel source
Purpose of kernel development is basically to customize our
own recipes kernel by reused existing recipes.
 
This is an initiative of automating manual kernel development
test cases. Applying a single patch to the Linux kernel source
is one of the manual test cases of kernel development.

Objective of this test is as a developer we can make changes of
a file in kernel source and able to apply a single patch to
the kernel source.
 
ref:https://wiki.yoctoproject.org/wiki/Kernel_Development_Test_Cases

(From OE-Core rev: 00a5df641b94ef47eec36e742630db7b659102a4)

Signed-off-by: Mazliana <mazliana.mohamad@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Adrian Bunk
ed929bed4c world-broken.inc: Remove
Move still required entries as COMPATIBLE_HOST_libc-musl = 'null'
to individual recipes.

This also gives users a proper error message when trying to build
a known non-building package.

(From OE-Core rev: 8bbb17d2dcafa9b4e26941a55932f4be2782e1d1)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Adrian Bunk
b0efa1952c subversion: Upgrade 1.12.0 -> 1.12.2
Remove backported patch.

(From OE-Core rev: 947828b8e9c4f332533d1d6bd0750ff018d51295)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Adrian Bunk
18176f5cc2 flac: Upgrade 1.3.2 -> 1.3.3
Remove backported patch.

(From OE-Core rev: 16a2f41a29d80647bf60bff1391f015ad2d652f8)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Adrian Bunk
3c15c31cce glib-networking: Upgrade 2.60.2 -> 2.60.3
(From OE-Core rev: d0dcbf1f52e5754dfa3c17e132c6354d730a5e75)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Adrian Bunk
6919f53728 help2man: Upgrade 1.47.10 -> 1.47.11
(From OE-Core rev: 4f25d705d70fc533f4b14999cf48480eed3a6212)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Zang Ruochen
662c64166f libarchive:upgrade 3.3.3 -> 3.4.0
-libarchive/CVE-2018-1000877.patch
-libarchive/CVE-2018-1000878.patch
-libarchive/CVE-2018-1000879.patch
-libarchive/CVE-2018-1000880.patch
-libarchive/CVE-2019-1000019.patch
-libarchive/CVE-2019-1000020.patch
-libarchive/bug1066.patch
-libarchive/non-recursive-extract-and-list.patch
 Removed since these are included in 3.4.0.

-License-Update: Copyright year updated to 2018.

(From OE-Core rev: 4f8fa80b6c57f29c68678cabcac5d114d1ff0500)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Khem Raj
deafb85ecd go-1.12: update to 1.12.9 minor release
(From OE-Core rev: e8482da4543841899f7ed9091c87dd3e0f23bfd9)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Alexander Kanavin
270a33863e boost: update to 1.71.0
Some notes:
- bjam bootstrap scripts were changed, and the patch for that had to be
  adjusted. tools/build/src/engine/build.sh now supports an --debug option
  which the bjam-native recipe can use to get the debug build of b2.
- a related patch was added to address a speed regression with the debug
  version of bjam
- gcc.jam patch had to be refreshed because boost added more "cpu-flags"
  lines.
- since 1.70.0, boost includes new cmake config files which are packaged
  in ${PN}-dev now so they make it into the SDK. (although 1.71.0 is needed
  to fix some bugs in them)

(From OE-Core rev: 810aded01fc2ae2c27c2573135c20947453e50c6)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Tim Blechmann
601c222f86 icecc: blacklist systemtap
compiling systemtap with icecc causes the following build failure

> build/tmp/work/silvermont-64-poky-linux/systemtap/4.0-r0/recipe-sysroot/usr/include/python3.7m/modsupport.h:120:66: note: in definition of macro 'PyModule_AddIntMacro'
> HelperSDT/_HelperSDT.c:145:34: error: 'PyTrace_RETURN' undeclared (first use in this function); did you mean 'PyTrace_C_RETURN'?

(From OE-Core rev: 66719424096eb0d3470647579364efe1556dc7b6)

Signed-off-by: Tim Blechmann <tim@klingt.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Martin Hundebøll
4cac7b1553 initscripts: remove warnings on read-only-rootfs (again)
When the populate-volatile.sh initscript tests if a configured symlink
is already in place, it uses readlink with the '-f' (follow) option:

> [ "$(readlink -f $source)" = "$dest" ]

If the test fails, it proceeds to delete the exisiting folder/file, and
create the configured symlink.

However, the '-f' option to readlink makes it follow symlinks pointing
at symlinks. If the $dest argument is a symlink, the above test fails,
and warnings are printed due to changing a read-only rootfs.

This is the case for /tmp, and /etc/resolv.conf:
> /tmp -> /var/tmp -> /var/volatile/tmp
> /etc/resolv.conf -> /var/run/resolv.conf -> /run/resolv.conf

Fix the warnings by removing the '-f' option, so that the test matches
the configuration.

[ YOCTO #10814 ]

(From OE-Core rev: fb028a0a25c02ab56ad262afd8e6e9495a44673d)

Signed-off-by: Martin Hundebøll <martin@geanix.com>
Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Alexander Kanavin
3f5c70649a images: use 512M of RAM in qemu if 'opengl" is in DISTRO_FEATURES
256M was found to be no longer sufficient, as the X server fails to
start with the modesetting driver and 3D enabled.

Only images that actually include X11 are adjusted.

(From OE-Core rev: 9dd0812acc73287287b48d28e0935baf7f545b58)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Trevor Gamblin
1ff7748a61 lighttpd: drop hard-coded lua version in PACKAGECONFIG
When building lighttpd with PACKAGECONFIG_append_pn-lighttpd = "lua" in local.conf,
bitbake gives the following error:

ERROR: Nothing PROVIDES 'lua5.1' (but /home/tgamblin/build/oe-core/meta/recipes-extended/lighttpd/lighttpd_1.4.54.bb DEPENDS on or otherwise requires it)
NOTE: Runtime target 'lighttpd' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['lighttpd', 'lua5.1']

Removing the "5.1" from the PACKAGECONFIG line in lighttpd_1.4.54.bb fixes the issue.

(From OE-Core rev: 5ee9be17407ae0c23dc056c98b4a6818d2a845d6)

Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Alexander Kanavin
ab840563bc python3-numpy: update to 1.17.0
Rebase files/0001-Don-t-search-usr-and-so-on-for-libraries-by-default-.patch

License-Update: clarified license for numpy/core/src/multiarray/dragon4.c (it is MIT)
(From OE-Core rev: e11982182acc65913c6e3438304e8a15fe3792a2)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-28 11:31:21 +01:00
Trevor Gamblin
c17113f1e2 quilt: added less to RDEPENDS list
The quilt "series" option relies on "less -R" but, since that
option is not enabled by busybox in oe-core by default,
hard-code the dependency on 'less'.

>From 'man less':
   -r or --raw-control-chars
      Causes "raw" control characters to be displayed. ...
   -R or --RAW-CONTROL-CHARS
      Like -r, but only ANSI "color" escape sequences are
      output in "raw" form.  ...

In 2018, BusyBox's less added:
   8528d3d4f less: optional support of -R
but it is not enable by default for oe-core. While we could
enable the option, all known use-cases involve larger, more
developer-oriented recipes such as quilt or man pages.

(From OE-Core rev: 64f9fd2a1ebfad102140801f8be8b8be33082d61)

Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Trevor Gamblin
52748ecbbe quilt: Export QUILT_PC variable in ptest Makefile
The quilt ptest uses a custom Makefile to implement the
"make check" rule, but the ptest Makefile does not export
the variable QUILT_PC, which is user-settable and normally
defaults to ".pc". This causes failures e.g. import.test
with "rm -rf patches/ %{QUILT_PC}/", evaluating to
"rm -rf patches/ /" if the variable is not set by the
Makefile.

These ptests broke in:
  73d6034f6b quilt: update to 0.66
when the upstream quilt developers enabled users to specify
their own QUILT_PC string.

(From OE-Core rev: 7ef7923bd9161d562298ace68491a2230210c3e4)

Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Hongxu Jia
fc85db13d9 ncurses: upgrade 6.1+20181013 -> 6.1+20190803
(From OE-Core rev: 8c5dc072b24c1b82b9254a80efde91aff8e8fa76)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Hongxu Jia
7becded10e distcc: upgrade 3.3.2 -> 3.3.3
(From OE-Core rev: 43faa66ff746b60a1a845472e7a66ab204854c77)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Zang Ruochen
a44adae844 python3-pip:upgrade 19.2.1 -> 19.2.2
(From OE-Core rev: c4b5aecc691f3c58318964009928bc7f1acc8adb)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Zang Ruochen
fc3cc954db lz4:upgrade 1.9.1 -> 1.9.2
(From OE-Core rev: 4ee4e7a2a8eddfa2700ad7a289b58019a656d5ca)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Ross Burton
f40a5d240c pango: upgrade to 1.44.5
This release ships some files that were previously missing from git but needed
for the test suite.

Add RDEPENDS on locale-base-en-us as some of the tests explictly use it.

No need to depend on liberation-fonts, all of the tests use Cantarell.

With these changes, just one test fails (filed upstream as
https://gitlab.gnome.org/GNOME/pango/issues/405) and there are no skips.

(From OE-Core rev: 6db9109058be33b10d68949fe72273e8a92f9f12)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Alexander Kanavin
7143f6d5f6 createrepo-c: upgrade 0.14.3 -> 0.15.0
Disable delta-rpm, which oe-core does not use.

(From OE-Core rev: a9d8d8a52df0d713d9b2f87b1d0c8e5936512d81)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Alexander Kanavin
793640e07b libmodulemd: depend on target python at build time
meson build system is importing sysconfig, which requires
having a target confiuguration available.

(From OE-Core rev: 6763c89611f7cc4a1ba9098222069a58148d44d9)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Khem Raj
89a01ef7d3 libffi: Upgrade to 3.3-rc0
libffi 3.1 release has been a bit aged and new architectures, compilers
have since been come on stage to compile it, we have been carrying
patches, but its better to use the latest 3.3 rc0 which has lot of these
issues handled and is in good shape.

Use 3.3~rc0 for PV to keep room for upgrade path without PE bump

fix the multilib header conflict

file /usr/include/ffi.h from install of libffi-dev-3.2.1+3.3+rc0-r0.core2_32 conflicts with file from package lib64-libffi-dev-3.2.1+3.3+rc0-r0.x86_64

(From OE-Core rev: 06e731bdea527d5c42e99bbcef7f2835e158c0a0)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Khem Raj
6d935edee9 opensbi: Disable SECURITY_CFLAGS since it cant link with libssp
(From OE-Core rev: a0f5c84c393107e3d054a5804748f046dffef8b9)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Alexander Kanavin
1cff1bc3ed epiphany: upgrade 3.32.3 -> 3.32.4
(From OE-Core rev: c3503a76431dce33e63fefecd0b5e7d809705913)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Alexander Kanavin
c7f145af5e vala: upgrade 0.44.5 -> 0.44.7
(From OE-Core rev: 71e030b6dae891ea039f538a51c82ed3921dcea7)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Alexander Kanavin
b8c9cd7d96 rt-tests: exclude another development version
(From OE-Core rev: e23adb4901e261e8c80fce92d4eca1c74b3c049c)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Alexander Kanavin
3f307c4708 libdazzle: upgrade 3.32.2 -> 3.32.3
(From OE-Core rev: 5bf5fdd60e079d8fac0f8d7a34a41ce185761c8a)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Alexander Kanavin
9e6f0433aa desktop-file-utils: upgrade 0.23 -> 0.24
(From OE-Core rev: 4c7860eb21281c250ccfa8311754bd6ad3e0a0b3)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:27 +01:00
Alexander Kanavin
1bab9aa31e gtk-doc: upgrade 1.30 -> 1.31
Drop backported patch.

(From OE-Core rev: bf9cff0177aad35efe58276e1dd65b47872dc6d5)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:26 +01:00
Yuan Chao
4e4ebda479 libnss-nis: upgrade 3.0 -> 3.1
Remove patch 0001-nis-hosts-Remove-use-of-RES_USE_INET6.patch
since this is included in 3.1

(From OE-Core rev: dd6cdf637819933f5c9eb82298a0442826113234)

Signed-off-by: Yuan Chao <yuanc.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:26 +01:00
Changqing Li
4e7557640c qemumips/qemumips64: move QB_SYSTEM_NAME to corresponding conf
Configuration:
MACHINE = qemumips64

bitbake lib32-core-image-minimal
runqemu slirp nographic qemumips64 ext4

Error:
ERROR - Failed to run qemu: qemu-system-mips: unable to find CPU model 'MIPS64R2-generic'

Fixed by moving QB_SYSTEM_NAME to Respective configuration file

(From OE-Core rev: e724e8836ed614ff8eaa0d0d9c51d22ee62576b3)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:26 +01:00
Adrian Bunk
edc6e1458c btrfs-tools: Add a PACKAGECONFIG for zstd
(From OE-Core rev: 88e61a317f44dfc5e2f7a037353d500f80c75d02)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:26 +01:00
Anuj Mittal
f326d31c4e patch: backport fixes
The original fix for CVE-2018-1000156 was incomplete. Backport more
fixes done later for a complete fix.

Also see:
https://savannah.gnu.org/bugs/index.php?53820

(From OE-Core rev: 9ea833b7d1655e042a513ea2225468c84f1c8bfb)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:26 +01:00
Khem Raj
0f0c56c40c gcc: Search in OE specific target gcclibdir
We put gcclibir to be /usr/lib/<arch>/... and not default
usr/lib/gcc/<arch>, therefore make the include search path also look
into this directory, this should help in finding gcc headers like omp.h

(From OE-Core rev: 121ce09332099ab7ea695a3495daf4f904f69ae5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:26 +01:00
Hongxu Jia
0d5c966c30 nfs-utils: decrease RLIMIT_NOFILE to 4k for systemd
On systemd, it set RLIMIT_NOFILE to 512k, since do_testimage
for core-image-sato-sdk has memory limitation (256Mib) which
caused rpc.statd failed with out of memory.
[  531.306146] Out of memory: Kill process 193 (rpc.statd) score 200 or sacrifice child

The rpc.statd and rpc.mountd allocates memory according to
RLIMIT_NOFILE, so decrease it to 4k to keep sync with sysvinit

After applying the patch, the memory cost is the same with sysvinit:

root@qemux86-64:~# systemctl status nfs-statd
* nfs-statd.service - NFS status monitor for NFSv2/3 locking.
   Loaded: loaded (/lib/systemd/system/nfs-statd.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-08-20 03:16:18 UTC; 3min 26s ago
 Main PID: 343 (rpc.statd)
    Tasks: 1 (limit: 271)
   Memory: 1.0M

root@qemux86-64:~# systemctl status nfs-mountd
* nfs-mountd.service - NFS Mount Daemon
   Loaded: loaded (/etc/systemd/system/nfs-mountd.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-08-20 03:19:01 UTC; 1min 21s ago
 Main PID: 451 (rpc.mountd)
    Tasks: 1 (limit: 271)
   Memory: 736.0K

Suggested-by: Chen Qi <qi.chen@windriver.com>
(From OE-Core rev: 6d61cd2bdc9e326eaa59082b5dd7423e522b96d3)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:26 +01:00
Oleksandr Kravchuk
66990a7ac7 python-setuptools: update to 41.2.0
(From OE-Core rev: b9769fd1072426be2236bfc71db8e327fecda78d)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-22 22:48:26 +01:00
Alexander Kanavin
5040d131ca conf/conf-notes.txt: add a mention of common tools
They remain not as widely known as they should be;
perhaps mentioning them in the environment init banner could help.

(From meta-yocto rev: 66777ed9a12e6a651b95859ecc2919aa88c128ba)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:58:09 +01:00
Alexander Kanavin
a549868e3d conf/conf-notes.txt: add a mention of common tools
They remain not as widely known as they should be;
perhaps mentioning them in the environment init banner could help.

(From OE-Core rev: b19f8e9eb67894bbac145e807bf2e1b330dc1cd9)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:55:48 +01:00
Ross Burton
58ab85d3e0 systemd: add PACKAGECONFIG for gnu-efi
Add a PACKAGECONFIG for gnu-efi, by default the meson.build looks explicitly in
/usr/include and /usr/lib for gnu-efi, and if it is present on the host the
build will fail.

[ YOCTO #13487 ]

Original patch by Chin Huat Ang.

(From OE-Core rev: 050cda9f02c6a5c773edf092514b173839569a48)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Wes Lindauer
fbd9c8b427 libunwind: Fix MIT license file checksum
MIT license files must include the copyright notice.

(From OE-Core rev: 285b91a9b687be2ac6a398f66d7173384d8976af)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Wes Lindauer
370ae758d4 sudo: Fix BSD license file checksum
BSD license files must include the copyright notice.

(From OE-Core rev: f5cfcaa79fd3a2cfd9299f2c8e7686b502e52551)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Wes Lindauer
77be098e14 shadow: Fix BSD license file checksum
BSD license files must include the copyright notice.

(From OE-Core rev: b57f10c08bef1005b4bb195b84e39cab0e251420)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Wes Lindauer
c87115772d openssh: Update LICENSE field with missing values
The LICENSE file states that some code is licensed under BSD, some under
ISC, and some under MIT. The LICENSE field should reflect all of these.

(From OE-Core rev: 91096392cf46cae369849723cea14a9da1f3053b)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Wes Lindauer
3e8ea5a406 iw: Fix license field to BSD-2-Clause
Using just "BSD" license implies BSD-3-Clause and this recipe appears to
be closer to a BSD-2-Clause.

(From OE-Core rev: b90d9f0c2084cce8d245fe683b45fb344c6f1cb8)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Anuj Mittal
7ef44dbd3b binutils: fix CVE-2019-14250 CVE-2019-14444
(From OE-Core rev: abdc51527988afdcfd2db6dc08ebb6083a341be9)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Otavio Salvador
eaa58d850a kmscube: Bump revision to f632b23
This includes following changes:

f632b23 drm: Find a proper modeset device, is none is provided

(From OE-Core rev: 8b77262bdaa8cf825133171f898cc20e89909df7)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Oleksandr Kravchuk
71f9386801 git: update to 2.23.0
(From OE-Core rev: f70d00ff6120602d92fdb353231e763b23a3f42a)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Oleksandr Kravchuk
95af995462 cups: update to 2.2.12
(From OE-Core rev: 5d24e011d9c547ac6339bdc1d40e7a613692da30)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Zang Ruochen
cc87b0493a acpid: upgrade 2.0.31 -> 2.0.32
(From OE-Core rev: aaa5902921d91fb18e283e2e01feccd5cddb157f)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Otavio Salvador
3f0a05160b linux-firmware: Upgrade 20190618 -> 20190815
License-Update:
- WHENCE: New firmware files additions and version updates

(From OE-Core rev: b4c8f2f139d0eeb2ebef3dc5f8309486afdea3d4)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Mingli Yu
cd86f35cf4 python3: fix the test_locale output format
Before this patch:
 # python3 -m test -v test_locale
 [snip]
 test_getsetlocale_issue1813 (test.test_locale.TestMiscellaneous) ... testing with ('tr_TR', 'ISO8859-9') ok
 [snip]

 After this patch:
 # python3 -m test -v test_locale
 [snip]
 test_getsetlocale_issue1813 (test.test_locale.TestMiscellaneous) ... testing with ('tr_TR', 'ISO8859-9')... ok
 [snip]

Make the test ended with "... ok" is common in python
unittest world, we should make it keep consistent
with other test cases in case it may be ignored to
record in the report if we use the common filter
"... ok".

[YOCTO #13298]

(From OE-Core rev: 4e698cf8f3a9c661f5b67c6001ad4d92b574d136)

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Philippe Normand
0cec7b1d23 libtasn1: Enable nativesdk support
This is required before enabling p11-kit support by default in gnutls.

(From OE-Core rev: 2a35202dbffd31eac1c00c03497549805853ad6c)

Signed-off-by: Philippe Normand <philn@igalia.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Jaewon Lee
8f29534ccb devtool: build: Also run deploy for devtool build if applicable
Right now `devtool build` runs populate_sysroot and packagedata tasks.
Adding deploy to this list, if the recipe has the deploy task, so that
the newly built artifacts are available in the deploy directory.
Applicable only for packages with deploy task, such as kernel.

[YOCTO#13382]

(From OE-Core rev: b38a1328f0c7bc4b4102a05daee4058fd3214489)

Signed-off-by: Jaewon Lee <jaewon.lee@xilinx.com>
Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Lei Maohui
fe856ba7df at: fix a spelling mistake.
"account" not "acount".

(From OE-Core rev: ac379579c0e5883ec8a79244cd4036f2382b05d1)

Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Jon Mason
87138c4c2b resulttool: Prevent multiple results for the same test
Currently, if a test occurs multiple times over different series, the
code will sum these.  This can lead to confusion over the desired
results.  Change the code to report the redundant tests and skip adding
an additional values.

(From OE-Core rev: caeaa0648dff64c56a33f52e45e82bfab6719e3e)

Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Lei Maohui
12722ccf05 nativesdk-qemu: support aarch64_be.
Otherwise, there will be "no aarch64_be-softmmu" error.

(From OE-Core rev: 237b677f2501752d3ec339e87aa9f31fc6926afd)

Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Alexander Kanavin
04731f17e8 mesa: fix upstream version check
(From OE-Core rev: 6a33e35ad93b9023c15bdc3201b84c3ff98c750d)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Oleksandr Kravchuk
0e46416430 bitbake.conf: fix XORG_MIRROR URL
(From OE-Core rev: d69f67f5d8b90d7846425f0569e5c121e3bdd062)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Ricardo Ribalda Delgado
c6206c05fb packagegroup-core-base-utils: Make it machine specific
Recipe makes use of the variable MACHINE_FEATURES, which is machine
specific:

  ${@bb.utils.contains("MACHINE_FEATURES", "keyboard", "kbd", "", d)}

This patch avoids multiconfig errors such as:

ERROR: mc:qt5222:packagegroup-core-base-utils-1.0-r0 do_package_qa_setscene: 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_package_qa_setscene(d)
     0003:
File: '/workdir/repo/poky/meta/classes/insane.bbclass', lineno: 1026, function: do_package_qa_setscene
     1022:SSTATETASKS += "do_package_qa"
     1023:do_package_qa[sstate-inputdirs] = ""
     1024:do_package_qa[sstate-outputdirs] = ""
     1025:python do_package_qa_setscene () {
 *** 1026:    sstate_setscene(d)
     1027:}
     1028:addtask do_package_qa_setscene
     1029:
     1030:python do_qa_staging() {

(From OE-Core rev: 70234797b973046a6198bea684bdb757def2dce1)

(From OE-Core rev: 5e9185d34b3a45aadec96273a0570ec5f05f6aec)

Signed-off-by: Ricardo Ribalda Delgado <ricardo@ribalda.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 21:52:59 +01:00
Richard Purdie
bb1e701fb1 bitbake: runqueue: Optimise build_taskdepdata slightly
Rather than repeatedly calling mc_from_tid() do this in the parent,
removing around a million function calls. Takes time spent in this
function from 40s to 36s.

(Bitbake rev: 28b3f0d8867804799420689c314ac4a8f01efb8c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:30:13 +01:00
Richard Purdie
4cc3c0daed bitbake: runqueue: Further optimise holdoff tasks
There are other data structures which can be reprocessed at the same
time as holdoff_tasks, further improving build efficiency in various
places.

(Bitbake rev: 02090b3456b7a2de12e72dfeaabfd3b631609924)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:30:13 +01:00
Richard Purdie
fece8f4737 bitbake: runqueue: Optimise holdoff task handling
We don't need to process the holdoff task list until we're executing tasks
which saves some data manipulation, at the cost of some data structures
not being correct at all times. This saves significant amounts of time
in various profile charts of larger builds.

(Bitbake rev: 270f076111b12eab358417b0c4cf9c70d7cc787a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:30:13 +01:00
Richard Purdie
3afc48c38f bitbake: runqueue: Small but critical fix
We've observed do_package and do_package_setscene running in parallel. The
reason is that holdoff_tasks wasn't getting updated. Looking at the code, it
would seem the reason is that the task was in pending_migrations and hence
changed wasn't set and holdoff_tasks wasn't updated.

Fix this. It only affects builds with rehashing enabled.

(Bitbake rev: e26e61e84575669bd223f6ab316798097ed95ec8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:30:13 +01:00
Richard Purdie
e087855d48 bitbake: cookerdata: Delay the setup of the siggen slightly to allow metadata defined siggens
If we define a metadata siggen it can fail due to the early init here. Move
slightly later to avoid those failures which allows fixes in OE to the
check-layer script related to the hash equiv siggen.

(Bitbake rev: fdf5c341f3393173876a753c46c9bd067eb2b353)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:30:13 +01:00
Alistair Francis
dd6358438c qemuriscv64: Specify the firmware as a bios instead of kernel
Now that we have a -bios option for the RISC-V virt machine in QEMU we
can pass OpenSBI in via -bios and the kernel in via -kernel. We no
longer need to pass the kernel in via -device loader so let's remove
that.

(From OE-Core rev: 65e7f371f19e053d0bac7771a80615f6bada74c7)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:02 +01:00
Alistair Francis
23662395e2 scripts/runqemu: Add support for the BIOS variable
Add support for specifying a BIOS the same way that the KERNEL variable
is specified. This includes specifying a QB_DEFAULT_BIOS variable.

(From OE-Core rev: fc2a2260aa22a81da6619b4affaf8ae0b5556a34)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:02 +01:00
Alistair Francis
5a308c55a6 qemu: Upgrade to version 4.1
(From OE-Core rev: 50a7dec95618080962e56fd347f505e691b7ad6f)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:02 +01:00
Jason Wessel
8102c55bc1 libc-package.bbclass: Split locale hard link processing into two parts
The locale-processing in cross-localedef was proven to be unsafe to
run in parallel due to the way it tried to make hard links to files
that could disappear before the link operation was completed.

To avoid corruption of the pseudo database, and create a
deterministically generated link tree, the operation of the locale
generation and the hard link resolution have been split into two
separate parts.  A side effect of this change is that the do_package()
rule for glibc-locale will be slightly smaller because some of the
hard links were missed in the past, particularly if you had a lot of
cpus free to perform the work.

Before the patch:
% du -sk locale-tree
312524  locale-tree

With the patch:
% du -sk locale-tree
290772 locale-tree

A number of comparisons were performed such as diffing the output,
cross checking the link references using tar's listing output, and
comparing against the results with out a parallel build to ensure the
locale-tree is correct in its final form.

[YOCTO #11299]
[YOCTO #12434]

(From OE-Core rev: 93d935927dd0ec0fa6f0a80a71236a7b00a5d1a4)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:02 +01:00
Jason Wessel
fb20d73461 cross-localedef-native: Add hardlink resolver from util-linux
The hard link resolver that is built into localedef cannot be run in
parallel.  It will search sibling directories (which are be processed
in parallel) and perform a creation of a .tmp file and remove the
original and move the .tmp file in.  The problem is that if a probe
occurs a hard link can be requested to the file that is being removed.
This will lead to a stray copy or potentially, on a loaded system
cause race condition which pseudo cannot deal with, where it is left
with a hard link request to a file that no longer exists.  In this
situation psuedo will inherit the permissions of what ever the target
inode had to offer.

In short, there are two problems:

  1) You will be left with stray copies when using the hard link
     resolution that is built in while running in parallel with
     localedef.

  2) When running under pseudo the possibility exists for uid/gid
     leakage when the source file is removed before the hard link can
     be completed.

The solution is to call localedef with --no-hard-links and separately
process the hardlinks at a later point.  To do this requires the
inclusion of the hardlink utility found in modern versions of
util-linux.  Most host systems do not have this, so it will be
included with the cross-localedef binary.

There are two patches here.  The first imports the raw version of
hardlink.c and a couple of header files directly from util-linux. The
second patch applies the fix-ups to make it compile, along with a
change to recipe to package the new binary.

[YOCTO #11299]
[YOCTO #12434]

(From OE-Core rev: 57e2e498ffb675d274aa95b10c14bd81742d2761)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:02 +01:00
Adrian Bunk
10d40f5971 kmod: Replace dolt hacks with backport of upstream dolt removal
(From OE-Core rev: 66492f40c23778a5644bc4e7f4acf7e4ef16bf36)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:02 +01:00
Adrian Bunk
fe6d059212 shadow: musl now supports secure_getenv
This fixed a potential security vulnerability on musl and made
the patch obsolete.

(From OE-Core rev: 30b6ae3084f63df437a4d6dd859bca674ca01e12)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:02 +01:00
Kevin Hao
f45a48887f psplash: Avoid mount the psplash tmpfs twice
The /etc/init.d/psplash.sh will be invoked both in boot and
shutdown/reboot. And the psplash tmpfs will be mounted twice. This
will trigger a bug in umount and let the system hang when
shutdown/reboot. I already made a patch [1] to fix the issue in
umount, but there is no reason for the psplash to do the twice mount.
So also fix it.

[Yocto 13461]

[1] https://lore.kernel.org/util-linux/20190819083022.12289-1-kexin.hao@windriver.com/T/#u

(From OE-Core rev: 5cea0448c5c75b9defc5fc2582e9b0c14e26a4e9)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:02 +01:00
He Zhe
adac6e9cda ltp: Fix ustat02 failure
Backport a patch to fix the following failure.
ustat02.c:44: FAIL: ustat(2) failed to produce expected error; 14, errno: EFAULT: EINVAL

(From OE-Core rev: e05f5e1d44293827260541e301ce25d15eb405af)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:02 +01:00
He Zhe
f5a8ce775c ltp: Fix tgkill03 failure
Backport a patch to fix the followig failure.
tgkill03.c:94: FAIL: Defunct tid should have failed with ESRCH: SUCCESS

(From OE-Core rev: 92e873c63499850f1f9461d3babde13d44bc8f9c)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:02 +01:00
Richard Purdie
95c604953d package: Fix race between do_package and do_packagedata
do_package has PKGDESTWORK as a cleandir and do_packagedata has it as an sstate-input
dir. This means do_package wipes out the directory at both do_package and do_package_setscene.

do_package_setscene and do_packagedata_setscene can run in parallel when installing from
sstate which means they can wipe out parts of each other leading to interesting
build failures.

We therefore have to add in a hardlink copy so that the directories can work independently
of each other.

(From OE-Core rev: 692b2046bb60806ee6bbde6ba15bd1637b00efb1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:02 +01:00
Richard Purdie
d67fbf68f6 yocto-check-layer: Ensure we use OEBasicHash as the signature handler
The layer checks are designed to work with OEBasicHash so ensure that handler
is in use rather than the new hash equivalency one as an example.

(From OE-Core rev: a10bf92516a4771e2dc49ba9f74323d7a87a1619)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Oleksandr Kravchuk
b36c32ca2b ofono: update to 1.30
Removed upstreamed patches.

(From OE-Core rev: 79a14772ef2ab6c73bb438377cd259c484020818)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Chen Qi
779875ad69 target-sdk-provides-dummy: extend packages for multilib case
If we have installed some lib32 package which depends on perl/bash,
then populating sdk for that image would fail with the following error.

  Error:
  Problem: package lib32-libxml-namespacesupport-perl-1.12-r0.corei7_32 requires lib32-perl, but none of the providers can be installed

    package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target conflicts with /usr/bin/perl provided by lib32-perl-5.30.0-r0.corei7_32
    package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target conflicts with libperl.so.5 provided by lib32-perl-5.30.0-r0.corei7_32

This could be produced by the following steps:
1. IMAGE_INSTALL_append = " lib32-valgrind"
2. bitbake core-image-minimal -c populate_sdk

We need to extend all packages in DUMMYPROVIDES to avoid such problems.

(From OE-Core rev: 6a38c6aafc2956bb6f7824eff4ac0f630f02da75)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Changqing Li
04414b62a3 dbus: disable test-bus
test-bus take long time to finish, sometimes longer than ptest-runner's
timeout limit 300s, so skipped it for now

[YOCTO #13409]

(From OE-Core rev: 76caa7aece5cc8513989f77bb15944a22d17edf5)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Oleksandr Kravchuk
3127b3975c python3-scons: update to 3.1.1
(From OE-Core rev: ae2869c82af3a826c9eedf5207c5d6f61f0df5e8)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Oleksandr Kravchuk
0b2bc3b9fd python-setuptools: update to 41.1.0
(From OE-Core rev: 841d458f01c8c2d3e67775bad7d018b047604f75)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Oleksandr Kravchuk
93bbdd55bd ffmpeg: update to 4.2
(From OE-Core rev: 658e0831d55540ed5905902aacb269d3bc43653f)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Khem Raj
8e96692a59 gcc-9: Upgrade to 9.2
BugFix only release see [1] for details

[1] https://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&resolution=FIXED&target_milestone=9.2

(From OE-Core rev: d00fac5bb9c479b5709ce73ae7fc0a14474a69c9)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Khem Raj
b95140cad3 systemd: Refresh patch after removal of __secure_getenv patch
(From OE-Core rev: 5268ee5b0ae1a11bf3c6cf673c8c17932ba630d4)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Khem Raj
a02a5db446 systemd.bbclass: Limit rm_sysvinit_initddir and rm_systemd_unitdir to target alone
These postfuncs cause native recipes to rebuild when changing system
init provider between sysvinit and systemd. Some of these native recipes
are pretty early in dependency chain ( e.g. util-linux ) which can casue
rebuild of pretty much everything including compiler.

Found with bitbake-diffsigs

Hash for dependent task python/python3_3.7.4.bb:do_prepare_recipe_sysroot:virtual:native:/mnt/a/yoe/sources/openembedded-core/meta/recipes-devt
ools/python/python3_3.7.4.bb changed from 2a45fe0cd0d3640a88c4a5c8b1880c4e9a089cc7446a91d2a920c1cef6fa916a to bc2a0921cce50da1b7be3b59a3d8211ec
2a31262493ffa5909acbb7116fad3bf
    Hash for dependent task util-linux/util-linux_2.34.bb:do_populate_sysroot:virtual:native:/mnt/a/yoe/sources/openembedded-core/meta/recipes-
core/util-linux/util-linux_2.34.bb changed from 15d6e165f025f10c2c455df8a875cafe021eaed4214c793e708d4827a58ca89d to 54e542d5da99cacfc9290ef5d27
9de50bdcb9195f67ae6dfff59fe41d10f7bd2
        Hash for dependent task util-linux/util-linux_2.34.bb:do_install:virtual:native:/mnt/a/yoe/sources/openembedded-core/meta/recipes-core/
util-linux/util-linux_2.34.bb changed from e25b1119ce8dd7ca43fbd2db771e04fa6ff6b9d701fd78ac6c443224b036ed9f to bb5b172a83e7edd272402a9dcd80c4e1
29aa1ecb824c2cfa388086cfed24fef5
            basehash changed from 62df6610eab9c1b1a17d7132943507641c8538690f26186843c86144d4598e64 to 80471f7c0bded9d1b593da69708b0e0f10882db08
5e1bf769edb3018e6c744d0
            Variable rm_sysvinit_initddir value changed:
            @@ -11,4 +11,4 @@
                         shutil.rmtree(sysv_initddir)

             DISTRO_FEATURES{systemd} = Unset
            -DISTRO_FEATURES{sysvinit} = Set
            +DISTRO_FEATURES{sysvinit} = Unset

(From OE-Core rev: f2d60e0f6a8e93cb0779f4719e58b99ad01fb954)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Khem Raj
634b65b7ff util-linux: Make pam specific logic apply to target recipe alone
This helps with a case where a distro builds one image with systemd and
another with sysvinit, it ends up recompiling almost everything since
python3-native gets rebuilt and tracing dependencies with
bitbake-diffsigs shows that the chain ends at util-linux-native being
recompiled because distro features now does or does not have 'pam'

Hash for dependent task python/python3_3.7.4.bb:do_prepare_recipe_sysroot:virtual:native:/mnt/a/yoe/sources/openembedded-core/meta/recipes-devt
ools/python/python3_3.7.4.bb changed from 8befaac4f995aaff3f95d27c9caaf1006f86e1344b02c1ae82f5d12f885f2240 to 2a45fe0cd0d3640a88c4a5c8b1880c4e9
a089cc7446a91d2a920c1cef6fa916a
    Hash for dependent task util-linux/util-linux_2.34.bb:do_populate_sysroot:virtual:native:/mnt/a/yoe/sources/openembedded-core/meta/recipes-
core/util-linux/util-linux_2.34.bb changed from 0db292cb2e37d5788bdcf51038b2802d748b719d860aca3a26d7a793b0cf3905 to 15d6e165f025f10c2c455df8a87
5cafe021eaed4214c793e708d4827a58ca89d
        Hash for dependent task util-linux/util-linux_2.34.bb:do_install:virtual:native:/mnt/a/yoe/sources/openembedded-core/meta/recipes-core/util-linux/util-linux_2.34.bb changed from 54bb4ee6bdb5c7fc260dabddb4932cb0e554a62cd92aba080a18306291fb470b to e25b1119ce8dd7ca43fbd2db771e04fa
6ff6b9d701fd78ac6c443224b036ed9f                                                                                                                           basehash changed from 8e8687a866689a697001dedc0a43f478e68e6efe270bd77362f24c6000f9e882 to 62df6610eab9c1b1a17d7132943507641c8538690
f26186843c86144d4598e64
            Variable do_install value changed:

rm -f ${D}${bindir}/chkdupexe
-   if [ "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" ]; then
+   if [ "${@bb.utils.filter('PACKAGECONFIG', 'pam', d)}" ]; then
        install -d ${D}${sysconfdir}/pam.d
        install -m 0644 ${WORKDIR}/runuser.pamd ${D}${sysconfdir}/pam.d/runuser
        install -m 0644 ${WORKDIR}/runuser-l.pamd ${D}${sysconfdir}/pam.d/runuser-l
@@ -47,5 +47,4 @@
        rm -f ${D}${base_sbindir}/nologin
        rm -f ${D}${base_bindir}/kill

    -DISTRO_FEATURES{pam} = Unset
    PACKAGECONFIG{pam} = Unset

So far it seems this pam conditional code in util-linux is target
specific and would not apply to native or nativesdk recipes

(From OE-Core rev: a57f56576eda4b3ad5496e375b432e06e34ad8b9)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Khem Raj
a3cfd5c366 mesa: Add packageconfigs for vc4 and v3d
This helps in enabling them via packageconfig from SOC layers

(From OE-Core rev: 853179121e0f2149ca6365ac0b8ab5017079d5e6)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Khem Raj
01165b43ff systemd: Drop musl __secure_getenv patch
This API is now implemented in musl [1]

[1] https://git.musl-libc.org/cgit/musl/commit/?id=7844ecb590893f8344324837956718001402d297

(From OE-Core rev: 46e49b14b52ebc9c7076488ad858083f8270ce9f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Khem Raj
e3fa57021c musl: Update to latest tip
Fixes build regressions on risc-v
Detailed changelog is here [1]

[1] https://git.musl-libc.org/cgit/musl/log/?qt=range&q=d0b547dfb5f7678cab6bc39dd736ed6454357ca4..29e8737f81ccc9fbadcf61a75318aa3d0516aafa

(From OE-Core rev: 0e590898134e3a9ae971ab0c5c570c6de3e162bd)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Kai Kang
1072dae32e webkitgtk: disable gold on mipsn32
Using gold on mipsn32 still fails. It fails to run

$ bitbake webkitgtk -c configure

with configuration:

MACHINE ?= "qemumips"
DEFAULTTUNE = "mips64-n32"

(From OE-Core rev: d67417ec55f3f580159f2d05322a0444ca466872)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Alexander Kanavin
0e0589f81a linux-yocto: add drm-bochs support
This allows better modesetting support for the '-vga std'
emulated hardware provided by Qemu, which we want to
standardize on.

See here for background:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=13466

(From OE-Core rev: 569d3f5d0454ed31f2f6df29f1703246a3dcd715)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Bruce Ashfield
6390074c1b linux-yocto/4.19: make drm-bochs feature available
The other active kernel versions have this feature available. To
consistently enable the same video output for qemu, we can cherry
pick the feature to 4.19.

(From OE-Core rev: a777e0f34e106455f963bd58fd8728a16c588c4d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Mikko Rapeli
72641004f7 stress-ng: provide stress
Since stress-ng replaces and is compatible with stress,
provide stress to be compatible with the old recipe
and binary packages.

(From OE-Core rev: fd6cf57430b7c88525dc6711dadfbe8f02c44354)

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Bruce Ashfield
d9f05b40d3 kconf_check: tweak CONFIG_ regex
As reported in https://bugzilla.yoctoproject.org/show_bug.cgi?id=12563,
the regex that matches valid CONFIG_ options was missing some of the
ones in net/netfilter/ipvs/Kconfig, and hence triggering invalid
option warnings.

By dropping the trailing space on the regex, we'll cover all the cases
for valid option.

(From OE-Core rev: 461a2f54751ca18e17f897b10d6c3c47dab1733a)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Bruce Ashfield
abe7b8add8 kernel-yocto: import security fragments from meta-security
Adding the following fragments from meta-security to make them
centrally available and easier to maintain:

   283939d5c9e kernel-cache: add yama security fragments
   0b86f3fa241 kernel-cache: add ima fragments
   731b466654d kernel-cache: add smack
   813afe8ff47 kernel-cache: add apparmor fragments

(From OE-Core rev: 3063d64984e993d3e7dc2f4c80fb74005f5d6d7e)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Bruce Ashfield
00ad844fe9 linux-yocto: arch/x86/boot: use prefix map to avoid embedded paths
>From the kernel patch:

[
    It was observed that the kernel embeds the path in the x86 boot
    artifacts.

    From https://bugzilla.yoctoproject.org/show_bug.cgi?id=13458:

    [
       If you turn on the buildpaths QA test, or try a reproducible build, you
       discover that the kernel image contains build paths.

       $ strings bzImage-5.0.19-yocto-standard |grep tmp/
       out of pgt_buf in
       /data/poky-tmp/reproducible/tmp/work-shared/qemux86-64/kernel-source/arch/x86/boot/compressed/kaslr_64.c!?

       But what's this in the top-level Makefile:

       $ git grep prefix-map
       Makefile:KBUILD_CFLAGS  += $(call
       cc-option,-fmacro-prefix-map=$(srctree)/=)

       So the __FILE__ shouldn't be using the full path.  However
       arch/x86/boot/compressed/Makefile has this:

       KBUILD_CFLAGS := -m$(BITS) -O2

       So that clears KBUILD_FLAGS, removing the -fmacro-prefix-map option.
    ]

    Other architectures do not clear the flags, but instead prune before
    adding boot or specific options. There's no obvious reason why x86 isn't
    doing the same thing (pruning vs clearing) and no build or boot issues
    have been observed.

    So we make x86 can do the same thing, and we no longer have embedded paths.
]

This issue has been reported upstream, and a patch submission is
pending, but for now, we'll soak the proposed patch in linux-yocto to
see if any issues are found

[YOCTO: #13458]

(From OE-Core rev: 78b0ff5960814af935a8089ec49c51d76f148149)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Bruce Ashfield
ad525ae2dd kern-tools: Add SPDX license headers to source files
Integrating the following commit:

    Add SPDX license headers to source files

    Kconfiglib/* were under ISC license before they were imported
    here from https://github.com/ulfalizer/Kconfiglib
    Adjusting SPDX header to reflect that fact.

    tools/* all have some sort of GPLv2 headers; adding SPDX header
    to make it obvious.

    This address bug #13334 :
    https://bugzilla.yoctoproject.org/show_bug.cgi?id=13334

    Change-Id: I243f2dd266a398f982798b771e74a67be70ecb52
    Signed-off-by: William Bourque <wbourque@gmail.com>

(From OE-Core rev: eb60f1544fcafcfed7baecceec4549c4e86989a3)

Signed-off-by: William Bourque <wbourque@gmail.com>
Signen-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Bruce Ashfield
eb8a9e10ad kernel-devsrc: tweak for v5.3+
The 5.3 kernel has two changes that require tweaks to the minimal
kernel-devsrc package.

- 4ce97317f [x86/purgatory: Do not use __builtin_memcpy and __builtin_memset]

  This change removes the need for arch/x86/purgatory/string.c and
  instead reuses a copy in arch/x86/boot/compressed/, so we can't copy
  the file anymore. To support older kernels, we make the copy survive
  the non-existence of the file.

- b1663d7e [docs: Kbuild/Makefile: allow check for missing docs at build time]

  This change adds the sourceing of Documentation/Kbuild to the top
  level Kbuild file. So we now leave the copy of Documention/'s Kbuild
  in the devsrc.

(From OE-Core rev: 53e975c18a14ddb8ad7eab23c8e18e05517953cd)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-21 15:29:01 +01:00
Richard Purdie
20946c63c2 bitbake: runqueue: Ensure target_tids is filtered
bitbake <target> --runonly=fetch

failed as the target_tids list included entries which were no longer targeted
task ids. Fix this.

(Bitbake rev: 94e848ae6544e628a19cb97115279b0b1678967c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-16 10:05:33 +01:00
Richard Purdie
0b38a37e59 bitbake: hashserv: Ensure we don't accumulate sockets in TIME_WAIT state
This can cause a huge backlog of closing sockets on the server and
in our case we don't really want/need the protection TCP is trying to
give us so work around it.

(Bitbake rev: 7bc79fdf60519231da7c0c7b5b6143ce090ed830)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-16 10:05:32 +01:00
Robert Yang
2cb6a75b5a bitbake: bitbake: server/process: Handle BBHandledException to avoid unexpected exceptions
The parseBaseConfiguration() raises bb.BBHandledException(), but
BitBakeServer() didn't handle it, so we always got unexpected exceptions when
there were errors. For example:

=== Case 1:
* Add "print "hello"' in base.bbclass' def oe_import() function
def oe_import(d):
    print "hello"
[snip]

$ bitbake -p
ERROR: Unable to start bitbake server (None)
ERROR: Last 60 lines of server log for this session (/buildarea1/lyang1/test_hy/bitbake-cookerdaemon.log):
  File "/buildarea1/lyang1/poky/meta/classes/base.bbclass", line 21
    print "hello"
                ^
SyntaxError: Missing parentheses in call to 'print'

<The first exception>
During handling of the above exception, another exception occurred:
<Tracebacks>

<The second exception>
During handling of the above exception, another exception occurred:
<Tracebacks>

<The third exception>
During handling of the above exception, another exception occurred:
<Tracebacks>
[snip]

Now it looks like:
$ bitbake -p
ERROR: Unable to start bitbake server (None)
ERROR: Server log for this session (/buildarea1/lyang1/test_hy/bitbake-cookerdaemon.log):
ERROR: Error in compiling python function in /buildarea1/lyang1/poky/meta/classes/base.bbclass, line 21:

The code lines resulting in this error were:
     0001:def oe_import(d):
 *** 0002:    print "hello"
     0003:    import sys
     0004:
     0005:    bbpath = d.getVar("BBPATH").split(":")
     0006:    sys.path[0:0] = [os.path.join(dir, "lib") for dir in bbpath]
SyntaxError: Missing parentheses in call to 'print' (base.bbclass, line 21)

=== Case 2:
* Add 'HOSTTOOLS += "hello"' to conf/local.conf:
$ bitbake -p
ERROR: Unable to start bitbake server (None)
ERROR: Server log for this session (/buildarea1/lyang1/test_hy/bitbake-cookerdaemon.log):
<Tracebacks>
[snip]
During handling of the above exception, another exception occurred:
[snip]
<Tracebacks>
ERROR: The following required tools (as specified by HOSTTOOLS) appear to be unavailable in PATH, please install them in order to proceed:
  hello

The error message is printed by bb.fatal() which raises bb.BBHandledException(),
but BitBakeServer() doesn't handle it, so we got it.

Now it looks like:
ERROR: Unable to start bitbake server (None)
ERROR: Server log for this session (/buildarea1/lyang1/test_hy/bitbake-cookerdaemon.log):
ERROR: The following required tools (as specified by HOSTTOOLS) appear to be unavailable in PATH, please install them in order to proceed:
  hello

No unexpected exceptions anymore.

[YOCTO #13267]

(Bitbake rev: 6e6865e6371dbd31a136eae64cc5b1fa5f5bee33)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-16 10:05:32 +01:00
Richard Purdie
5f0d31ce46 bitbake: runqueue: Ensure data is handled correctly
This doesn't appear to have ill effects right now but there is a correctness
issue which this so fix it.

(Bitbake rev: a5e084a266f63c2fd370122327615e49beaeb94e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-15 13:32:06 +01:00
Richard Purdie
2fa5d98f52 bitbake: runqueue: Fix data corruption problem
This was overwriting data in the parent which caused all kinds of
odd/weird failures.

(Bitbake rev: 4c5aeb424247a9d0c907524ffacd9c61fcdc0852)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-15 13:32:06 +01:00
Richard Purdie
a3c53bff11 bitbake: tests/runqueue: Fix tests
There were paths being accidentally included in some of the hashserv tests. Remove
that and update the hashes so the tests work independently of paths.

(Bitbake rev: 6ddb9f09cb60c2354fa6a67cce412c4dc1e7dc2d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-15 08:43:22 +01:00
Oleksandr Kravchuk
209f89ab8e libevent: update to 2.1.11
(From OE-Core rev: 6b36db836547a23f43c5f97bf3706d7b210c209c)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Oleksandr Kravchuk
48ce05fba3 librepo: update to 1.10.5
Also cleanedup the recipe.

(From OE-Core rev: 565aae4b4c1302a8a962a9f444d5382ea1043f40)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Oleksandr Kravchuk
9addf1c351 python3-git: update to 3.0.0
(From OE-Core rev: 8b9ea2defbaf6c22058bd97bfea50360fdd3e3c8)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Oleksandr Kravchuk
f6f926daca xrandr: update to 1.5.1
SRC_URI was moved from xorg-app-common.inc, since it has hardcoded file
extension (tar.bz2), but upstream stopped publishing tar.bz2 archives
for newer versions of the packages.

(From OE-Core rev: 36fa73a1ab1b4954c962cf6f01bba698f4e7c2f8)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Oleksandr Kravchuk
e7c57f87ce git: update to 2.22.1
(From OE-Core rev: 5b6e7d98f0d1be392d6c1efe2c69fef296d960c0)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Will Page
62e5c0d3bc uboot: fixes to uboot-extlinux-config attribute values
The way this class uses overrides to support generation of multiple
sections is subject to two different issues: 1) labels that conflict
with existing override names causing the value for the conflicting label
to be set for all labels, and 2) reusing the override list through each
iteration, prepending each new label to the list of overrides makes
earlier labels' value take precedence over later labels, making later
labels virtually impossible to customize.

The first issue is resolved by removing all label names from overrides
before iterating over labels.  The second issue is resolved by
generating a fresh list of overrides with only the current label added.

The current label is also appended to the list of overrides instead of
prepended, which makes it the highest priority override.  This is
matches the behavior of devtool-source.bbclass, which similarly
monkey-patches overrides.

Closes https://bugzilla.yoctoproject.org/show_bug.cgi?id=13469 .

(From OE-Core rev: 42b44fdd9e63b8d39cf83baecec08328275558ff)

Signed-off-by: Will Page <wpage@polysync.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Khem Raj
8af4442174 musl: Delete GLIBC_LDSO before creating symlink with lnr
Fixes rebuild failures after say do_compile fails

| ./tools/install.sh -D -r /mnt/a/yoe/build/tmp/work/riscv64-yoe-linux-musl/musl/1.1.23+gitAUTOINC+d0b547dfb5-r0/image/usr/lib/libc.so /mnt/a/yoe/build/tmp/work/riscv64-yoe-linux-musl/musl/1.1.23+gitAUTOINC+d0b547dfb5-r0/image/lib/ld-musl-riscv64.so.1 || true
| Traceback (most recent call last):
|   File "/mnt/a/yoe/sources/openembedded-core/scripts/lnr", line 24, in <module>
|     os.symlink(target, linkname)
| FileExistsError: [Errno 17] File exists: 'image/usr/lib/libc.so' -> '/mnt/a/yoe/build/tmp/work/riscv64-yoe-linux-musl/musl/1.1.23+gitAUTOINC+d0b547dfb5-r0/imageNone'

(From OE-Core rev: 78a75d240083a80d624074e058c9a222a8a7b5e7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Khem Raj
c47b8300be linuxloader: Add entries for riscv64
(From OE-Core rev: 1cd6ffcabea2036fde6493f75687e546c6fe003c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Khem Raj
9e2c3395fe gdb: Do not set musl specific CFLAGS
These settings are no longer needed because we define
gl_cv_func_gettimeofday_clobber=no already and stat issue is alrwady
fixed via [1]

[1] https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=3c025cfe5efc44eb4dfb03b53dca28e75096dd1e

(From OE-Core rev: c3f04bd4df3c67fc6c840fe0dd8e194e6663b02c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Oleksandr Kravchuk
bb7326c9f8 xf86-input-libinput: update to 0.29.0
(From OE-Core rev: e0de5df49e1d69f973c61578e54aced50e3eedc6)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Alexander Kanavin
21b9552645 ovmf: fix upstream version check
(From OE-Core rev: 7ec9997c86df11a9a08e1531269435010b12e8da)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Alexander Kanavin
12ff29c36a sudo: correct SRC_URI
The old URI returns 404, and has an invalid TLS certificate.

(From OE-Core rev: 73ff6aba0a53ffc3ee0a5859a3ad4c8021be4de0)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Alexander Kanavin
b199dd0edf insane.bbclass: in file-rdeps do not look into RDEPENDS recursively
Recursive RDEPENDS resolution requires that all of the dependent
recipes' packaging has completed. There is no mechanism to ensure that
and therefore races were observed.

This change effectively requires recipes to list their runtime file
dependencies explicitly rather than have them pulled indirectly.
This may require a bit of fixing in layers, but should result
in a better definition of runtime file dependencies.

(From OE-Core rev: 08e2b5a31b23b98459479caf6ec5f5c6fc19d57a)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Richard Purdie
c56c9b7f2d gcc-cross-canadian: Drop obsolete shlibs exclusion
This is a very old change as and be inferred from the name in the comment.
We've since had many changes to pkgdata including separating it
to its own sysroot now so the reasons for this blanket exclusion are
likely long gone.

If the shlib provides were really the problem I'd much rather have
a dedicated variable for that too.

Removing this fixes missing dependencies on nativesdk-libc and other
libs which would then happen automatically.

(From OE-Core rev: 096fa15efbcb704451b2f38ceab36508ef64f07e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Khem Raj
1dc2823d62 gcc-runtime: Move content from gcclibdir into libdir
OE does not use the traditional /usr/lib/gcc prefix to store gcc-runtime
it basically is moved into libdir, however some newer files were
installed by newer versions of gcc especially libgomp ( omp.h openacc.h )
into gcclibdir, so we have content in both directories, this confuses
other tools which are trying to guess the gcc installation and its
runtime location, since now we have two directories, the tools either
choose one or other and we get inconsistent behavior, e.g. clang for
aarch64 uses /usr/lib but same clang for riscv64 chose /usr/lib/gcc

This change ensures that OE ends up with single valid location for gcc
runtime files

Move more common bits into common inc file

(From OE-Core rev: e9e5744ba8b0d43c8b874d365f83071ce20bf0a1)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Khem Raj
e64e8aa725 oeqa/parselogs: grep for exact errors list keywords
Given grep expression looks for error strings regardless of the
semantics and this ends up it flagging things like

***********************
Log: /mnt/a/yoe/build/tmp/work/raspberrypi3_64-yoe-linux-musl/yoe-qt5-wayland-image/1.0-r0/target_logs/weston.log
-----------------------
Central error:                EGL_KHR_create_context_no_error EGL_KHR_fence_sync
***********************

here EGL_KHR_create_context_no_error is an API, therefore the check
should be tightened a bit so explicitly look for error words so such
false positives don't show up

This helps in fixing wrong matches e.g. on rpi3 dmesg have strings like
above

(From OE-Core rev: e54ecea0a7d309533973b31bdbda178d9af92632)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Khem Raj
6456bec6ce oeqa/buildgalculator.py: Add dependency on gtk+3
This helps in skipping this test on images which are not using gtk and
as per the gcalculator website it needs gtk+3 or gtk+2 and libglade as
the build first looks for gtk+3

(From OE-Core rev: 2cdb4b3697e02947352803a9db013d61b812c4fd)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:49 +01:00
Oleksandr Kravchuk
9184b906a5 linux-firmware: add PE back
Add PE (package epoch) from the previous version of the recipe to avoid
problems with package upgrade due to changed versioning scheme.

See:
http://lists.openembedded.org/pipermail/openembedded-core/2019-August/285633.html

(From OE-Core rev: 8b6ec55da696087c8ea7bacc042307ee652afd9e)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:48 +01:00
Martin Jansa
1b57d8e43b meson: backport fix for builds with -Werror=return-type
(From OE-Core rev: de623085039111d9988918ae95e07e48108a9ff1)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:48 +01:00
Changqing Li
686cf796b9 go-runtime: remove conflict files from -dev packages
fix below error:
file /usr/lib64/go/src/cmd/cgo/zdefaultcc.go conflicts between attempted installs of go-dev-1.12.6-r0.core2_64 and go-runtime-dev-1.12.6-r0.core2_64
file /usr/lib64/go/src/cmd/go/internal/cfg/zdefaultcc.go conflicts between attempted installs of go-dev-1.12.6-r0.core2_64 and go-runtime-dev-1.12.6-r0.core2_64

these 2 files existed in both go-dev and go-runtime-dev
remove it from go-runtime-dev to fix the problem

(From OE-Core rev: 60dcae509a210f2cae8eda525a1b006663aef9bf)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:33:48 +01:00
Richard Purdie
d2093ecc22 poky: Retire opensuse 42.3 from SANITY_TESTED_DISTROS
Its now past EOL so retire it.

(From meta-yocto rev: 03046c2fe69c399173cf6303abb55264adaee2b9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:29:28 +01:00
Richard Purdie
93e4dc5f11 bitbake: runqueue: Ensure we clear the stamp cache
When the task hashes change we need to ensure the stampcache is cleared out
else tasks don't rerun when they should as we're basing decisions on stale
cache data.

(Bitbake rev: 08962092d3bb7887d82f97d442a6103c0677eae7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:28:23 +01:00
Richard Purdie
64d0493d97 bitbake: runqueue: Add missing setscene task corner case
We weren't marking this special case of setscene task as buildable leading to
runqueue task failures.

(Bitbake rev: 930efbc563443d82df8d692bb8ff172ca2bae192)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:28:23 +01:00
Richard Purdie
0993752e06 bitbake: runqueue: Add further debug information
Further testing shows we should test some extra datastructures to help pinpoint logic
errors more precisely. This adds some further data structure sanity checks.

(Bitbake rev: 83c4370b25c3a14cc946965c5c5f83ea28f488a1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:28:23 +01:00
Richard Purdie
0d73901c98 bitbake: runqueue: Drop debug statement causing performance issues
This debug statement could result in a long list of tasks which when
repeatedly sent over our IPC, slowed down the builds immensely. Remove
it in favour of other more targeted debugging added recently, bringing
back some lost performance, particularly on builds with large numbers
of tasks.

(Bitbake rev: 85fe627fdb6510f0942917964386fad9d8c479c8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:28:23 +01:00
Richard Purdie
977a293f2f bitbake: runqueue: Fix event timing race
The event from the task notifiing of hash equivalency should only be processed
when the task completes. This can otherwise result in a race where a dependent
task may run before the original task completes causing various failures.

To make this work reliably, the code had to be restructured quite a bit.

(Bitbake rev: 1bf5be46f92f125193638cf41ff207d68f592259)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:28:23 +01:00
Richard Purdie
3fb90d0fff bitbake: runqueue: Recompute holdoff tasks from scratch
The changed_setscene variable here is just odd and not needed. Worse,
it could prevent some tasks from being removed from the holdoff tasks
list. The list is being rebuilt and should work as intended just from
the other data, this is a leftover from previous versions of the code
as far as I can tell.

(Bitbake rev: 030b9f2b3ce6ed40e79304eb0ffee6c6613f43be)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:28:23 +01:00
Richard Purdie
de06716c76 bitbake: runqueue: Improve scenequeue debugging
Whilst we had good runqueue failure mode debug, it hadn't adapted to the
scenequeue changes. Run the scenequeue sanity tests at the end of
a build and output the results regardless of whether all setscene tasks
completed or not. This *massively* improves the ability to debug runqueue
problems.

(Bitbake rev: b9b2177473c0b95a23bd519a201e1d2ba101c6c1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:28:23 +01:00
Richard Purdie
d842d2507a bitbake: runqueue: Fix next_buildable_task performance problem
Looking at the profile information, a lot of time is being spent in
next_buildable_task. This is probably due to the generator expressions
not working well with the empty test.

The easiest way to improve things is to switch to using set manipulations.
We also don't need to update self.buildable the way the original code did
as we don't rely on that anywhere.

(Bitbake rev: 3bcf9ad4964b7e42d1a02ce231e9db42a81ead2a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:28:23 +01:00
Richard Purdie
99db00b836 bitbake: runqueue: Wait for covered tasks to complete before trying setscene
If tasks are in the covered list of tasks for a given setscene task,
it needs to wait for those to complete before we can start.

(Bitbake rev: fdee640c26750b852eb68f5c80437377aa300ed8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:28:23 +01:00
Richard Purdie
5f5bc81b3e bitbake: cooker: Improve hash server startup code to avoid exit tracebacks
At exit the hashserv code was causing tracebacks as join() wasn't
being called from the thread that started the process. Ensure that
the hashserver is started from the pre_serve hook which is the
final thread the cooker runs in. This avoids the traceback at the
expense of some horrific poking into data stores which will ultimately
need improving through a proper API.

(Bitbake rev: 05888700e5f6cba48a26c8a4c447634a28e3baa6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:28:23 +01:00
Richard Purdie
abda938d66 bitbake: tests/runqueue: Add further hash equivalence tests
Add some extra hash equivalence runqueue tests based on recent scenarios
that caused problems during testing.

(Bitbake rev: 373b085ead992a725b2230ededd992b4c61a1a05)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:28:23 +01:00
Richard Purdie
c86ae704d3 bitbake: runqueue: Improve setscene task handling logic
The previous tasks_covered and tasks_notcovered were basically unstable
data structures. We couldn't always tell whether tasks should be covered
or not when trying to repair the sturcture if sstate tasks reran.

In the end its simpler to throw the lists away and rebuild them based upon
current data rather than trying to patch it adhoc. This turns out to be
simpler and much more reliable and I've much more confidence in this code.

(Bitbake rev: 52ee2ba2c617d928569f5afa404925c8b6f317bc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:28:23 +01:00
Richard Purdie
18c109d6f5 bitbake: runqueue: Fix corruption issue
We need to copy this set, not modify the original else all kinds
of weird and bad things break, mostly from circular references.
We'll not go into how much sleep I lost tracking down the fallout
from this.

(Bitbake rev: 49927546d2b306830c98f6f9da4a6ad828f6a3a6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-14 17:28:23 +01:00
Mark Hatle
18b8e2e104 bitbake: layerindexlib: Fix parsing of recursive layer dependencies
[YOCTO #13447]

When running bitbake-layers layerindex-fetch from 'master', there is a
circular dependency between meta-oe and meta-python.  This triggered a maximum
recursion depth exception.

To fix the exception, as we walk down a branch (depth first search), we track
the layers we've already seen.  If we are about to recurse into a layer we've
already seen we report a warning and then stop recursion.

(Bitbake rev: d6155d095513be3f500d089c4ed4c4b89949d560)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-13 09:38:26 +01:00
Pascal Bach
0ec4c67e52 cmake: 3.15.1 -> 3.15.2
I rebuilt all cmake recipes from poky and meta-oe without issue.

(From OE-Core rev: b1ebf9122a5670044998adb83ca7a5a6c5454eaa)

Signed-off-by: Pascal Bach <pascal.bach@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-13 09:37:37 +01:00
Trevor Gamblin
6e5636d56b patch: fix CVE-2019-13638
(From OE-Core rev: b59b1222b3f73f982286222a583de09c661dc781)

Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-13 09:37:37 +01:00
Wenlin Kang
d5d9dde006 db: add switch for building database verification
Add switch for building database verification, enable
this, it will solve the following issue:

root@qemux86-64:~# db_verify /var/lib/rpm/Packages
db_verify: BDB0571 library build did not include support for database verification
BDB5105 Verification of /var/lib/rpm/Packages failed.

(From OE-Core rev: a785157c7d78bd4becdc03c93a21a5dba37015b9)

Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-13 09:37:37 +01:00
Zang Ruochen
d1100db5eb libnewt:upgrade 0.52.20 -> 0.52.21
-Refresh the following patch:
	files/pie-flags.patch

-files/fix_SHAREDDIR.patch
 Removed since this is included in 0.52.21.

(From OE-Core rev: 5b7fd7a945f8eeece51f01ad20a6de12fea89433)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-13 09:37:37 +01:00
Alexander Kanavin
d90fb2a87e mesa: enable glx-tls option in native and nativesdk builds
Before meson conversion this was always enabled; now it needs to
be explicitly switched on.

This un-breaks the virgl headless test in particular, which regressed
with the meson conversion (and the test is not currently run on AB
due to oudated graphics hardware in it).

(From OE-Core rev: 22d3f959e44b77cb6d7375a77cf028ceeb9d6cb4)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-13 09:37:37 +01:00
Alexander Kanavin
1371cff985 lib/oeqa/utils/qemurunner.py: add runqemuparams after kvm/nographic/snapshot/slirp
Previously, 'nographic' was set first, and was overriding anything set via runqemuparams.

Particularly, egl-headless from the virgl headless selftest was overriden,
which broke the test in non-X environments.

(From OE-Core rev: 344c55a58042ecd6ffed8b20add41b6b335c51bf)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-13 09:37:36 +01:00
Bedel, Alban
3276bded22 boost: Fix build and enable context and coroutines on aarch64
Like for ARM bjam need some hints about the ABI to properly build on
aarch64. While at it also enable context and coroutine as these are
supported on aarch64.

(From OE-Core rev: 5140e0a64aac8c621fe0d839dea41b7b43a96b4d)

Signed-off-by: Alban Bedel <alban.bedel@aerq.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-13 09:37:36 +01:00
Johann Fridriksson
619c7f7c22 ruby: Adding zlib-native to native dependencies
(From OE-Core rev: c558da63d6ec16a5b0c09a2e558ce72606b33436)

Signed-off-by: Jóhann Friðriksson <jofr@foss.dk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-13 09:37:36 +01:00
Martin Jansa
629b56cbee powertop: import a fix from buildroot
(From OE-Core rev: 1c86f513041ad3a6c05ed600de9e80d076f1149d)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-13 09:37:36 +01:00
Martin Jansa
5d652ffee3 icecc.bbclass: catch subprocess.CalledProcessError
* this might be related to:
  commit d2fcaeb153fdc3f8d7143ea823139f1537055ff1
  Author: Douglas Royds <douglas.royds@taitradio.com>
  Date:   Thu Dec 20 11:59:47 2018 +1300

    icecc: Don't generate recipe-sysroot symlinks at recipe-parsing time

* it's still a bit unclear when and why this happends, but I'm seeing
  random tasks sometimes failing with:

WARNING: Exception during build_dependencies for set_icecc_env
WARNING: Error during finalise of /build/meta-oe/meta-python/recipes-devtools/python/python-markupsafe_1.0.bb
ERROR: Traceback (most recent call last):
  File "/build/bitbake/lib/bb/data_smart.py", line 411, in expandWithRefs
    s = __expand_python_regexp__.sub(varparse.python_sub, s)
  File "/build/bitbake/lib/bb/data_smart.py", line 136, in python_sub
    value = utils.better_eval(codeobj, DataContext(self.d), {'d' : self.d})
  File "/build/bitbake/lib/bb/utils.py", line 421, in better_eval
    return eval(source, ctx, locals)
  File "Var <set_icecc_env>", line 1, in <module>
  File "/build/oe-core/meta/classes/icecc.bbclass", line 287, in icecc_get_and_check_tool
    link_path = icecc_get_tool_link(t, d)
  File "/build/oe-core/meta/classes/icecc.bbclass", line 246, in icecc_get_tool_link
    return subprocess.check_output("readlink -f %s" % tool, shell=True).decode("utf-8")[:-1]
  File "/usr/lib/python3.6/subprocess.py", line 336, in check_output
    **kwargs).stdout
  File "/usr/lib/python3.6/subprocess.py", line 418, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command 'readlink -f /build/BUILD/work/qemux86-oe-linux/python-markupsafe/1.0-r0/recipe-sysroot-native/usr/bin/x86_64-oe-linux/x86_64-oe-linux-g++' returned non-zero exit status 1.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/build/bitbake/bin/bitbake-worker", line 239, in child
    the_data = bb_cache.loadDataFull(fn, appends)
  File "/build/bitbake/lib/bb/cache.py", line 327, in loadDataFull
    bb_data = self.load_bbfile(virtualfn, appends, virtonly=True)
  File "/build/bitbake/lib/bb/cache.py", line 340, in load_bbfile
    datastores = parse_recipe(bb_data, bbfile, appends, mc)
  File "/build/bitbake/lib/bb/cache.py", line 303, in parse_recipe
    bb_data = bb.parse.handle(bbfile, bb_data)
  File "/build/bitbake/lib/bb/parse/__init__.py", line 107, in handle
    return h['handle'](fn, data, include)
  File "/build/bitbake/lib/bb/parse/parse_py/BBHandler.py", line 142, in handle
    return ast.multi_finalize(fn, d)
  File "/build/bitbake/lib/bb/parse/ast.py", line 386, in multi_finalize
    finalize(fn, d)
  File "/build/bitbake/lib/bb/parse/ast.py", line 351, in finalize
    bb.parse.siggen.finalise(fn, d, variant)
  File "/build/bitbake/lib/bb/siggen.py", line 147, in finalise
    taskdeps = self._build_data(fn, d)
  File "/build/bitbake/lib/bb/siggen.py", line 118, in _build_data
    tasklist, gendeps, lookupcache = bb.data.generate_dependencies(d)
  File "/build/bitbake/lib/bb/data.py", line 388, in generate_dependencies
    deps[dep], values[dep] = build_dependencies(dep, keys, shelldeps, varflagsexcl, d)
  File "/build/bitbake/lib/bb/data.py", line 317, in build_dependencies
    value, parsedvar = d.getVarFlag(key, "_content", False, retparser=True)
  File "/build/bitbake/lib/bb/data_smart.py", line 802, in getVarFlag
    parser = self.expandWithRefs(value, cachename)
  File "/build/bitbake/lib/bb/data_smart.py", line 424, in expandWithRefs
    raise ExpansionError(varname, s, exc).with_traceback(tb) from exc
  File "/build/bitbake/lib/bb/data_smart.py", line 411, in expandWithRefs
    s = __expand_python_regexp__.sub(varparse.python_sub, s)
  File "/build/bitbake/lib/bb/data_smart.py", line 136, in python_sub
    value = utils.better_eval(codeobj, DataContext(self.d), {'d' : self.d})
  File "/build/bitbake/lib/bb/utils.py", line 421, in better_eval
    return eval(source, ctx, locals)
  File "Var <set_icecc_env>", line 1, in <module>
  File "/build/oe-core/meta/classes/icecc.bbclass", line 287, in icecc_get_and_check_tool
    link_path = icecc_get_tool_link(t, d)
  File "/build/oe-core/meta/classes/icecc.bbclass", line 246, in icecc_get_tool_link
    return subprocess.check_output("readlink -f %s" % tool, shell=True).decode("utf-8")[:-1]
  File "/usr/lib/python3.6/subprocess.py", line 336, in check_output
    **kwargs).stdout
  File "/usr/lib/python3.6/subprocess.py", line 418, in run
    output=stdout, stderr=stderr)
bb.data_smart.ExpansionError: Failure expanding variable set_icecc_env, expression was     if [ "${@use_icecc(bb, d)}" = "no" ]
    then
        return
    fi
    ICECC_VERSION="${@icecc_version(bb, d)}"
    if [ "x${ICECC_VERSION}" = "x" ]
    then
        bbwarn "Cannot use icecc: could not get ICECC_VERSION"
        return
    fi

    ICE_PATH="${@icecc_path(bb, d)}"
    if [ "x${ICE_PATH}" = "x" ]
    then
        bbwarn "Cannot use icecc: could not get ICE_PATH"
        return
    fi

    ICECC_BIN="${@get_icecc(d)}"
    if [ -z "${ICECC_BIN}" ]; then
        bbwarn "Cannot use icecc: icecc binary not found"
        return
    fi
    if [ -z "$(which patchelf patchelf-uninative)" ]; then
        bbwarn "Cannot use icecc: patchelf not found"
        return
    fi

    # Create symlinks to icecc in the recipe-sysroot directory
    mkdir -p ${ICE_PATH}
    if [ -n "${KERNEL_CC}" ]; then
        compilers="${@get_cross_kernel_cc(bb,d)}"
    else
        compilers="x86_64-oe-linux-gcc x86_64-oe-linux-g++"
    fi
    for compiler in $compilers; do
        ln -sf ${ICECC_BIN} ${ICE_PATH}/$compiler
    done

    ICECC_CC="${@icecc_get_and_check_tool(bb, d, "gcc")}"
    ICECC_CXX="${@icecc_get_and_check_tool(bb, d, "g++")}"
    # cannot use icecc_get_and_check_tool here because it assumes as without target_sys prefix
    ICECC_WHICH_AS="${@bb.utils.which(os.getenv('PATH'), 'as')}"
    if [ ! -x "${ICECC_CC}" -o ! -x "${ICECC_CXX}" ]
    then
        bbwarn "Cannot use icecc: could not get ICECC_CC or ICECC_CXX"
        return
    fi

    ICE_VERSION=`$ICECC_CC -dumpversion`
    ICECC_VERSION=`echo ${ICECC_VERSION} | sed -e "s/@VERSION@/$ICE_VERSION/g"`
    if [ ! -x "/build/BUILD/work/qemux86-oe-linux/python-markupsafe/1.0-r0/recipe-sysroot-native/usr/bin/icecc-create-env" ]
    then
        bbwarn "Cannot use icecc: invalid ICECC_ENV_EXEC"
        return
    fi

    ICECC_AS="`${ICECC_CC} -print-prog-name=as`"
    # for target recipes should return something like:
    # /OE/tmp-eglibc/sysroots/x86_64-linux/usr/libexec/arm920tt-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/4.8.2/as
    # and just "as" for native, if it returns "as" in current directory (for whatever reason) use "as" from PATH
    if [ "`dirname "${ICECC_AS}"`" = "." ]
    then
        ICECC_AS="${ICECC_WHICH_AS}"
    fi

    if [ ! -f "${ICECC_VERSION}.done" ]
    then
        mkdir -p "`dirname "${ICECC_VERSION}"`"

        # the ICECC_VERSION generation step must be locked by a mutex
        # in order to prevent race conditions
        if flock -n "${ICECC_VERSION}.lock" \
            /build/BUILD/work/qemux86-oe-linux/python-markupsafe/1.0-r0/recipe-sysroot-native/usr/bin/icecc-create-env  "${ICECC_CC}" "${ICECC_CXX}" "${ICECC_AS}" "${ICECC_VERSION}"
        then
            touch "${ICECC_VERSION}.done"
        elif ! wait_for_file "${ICECC_VERSION}.done" 30
        then
            # locking failed so wait for ${ICECC_VERSION}.done to appear
            bbwarn "Timeout waiting for ${ICECC_VERSION}.done"
            return
        fi
    fi

    # Don't let ccache find the icecream compiler links that have been created, otherwise
    # it can end up invoking icecream recursively.
    export CCACHE_PATH="$PATH"
    export CCACHE_DISABLE="1"

    export ICECC_VERSION ICECC_CC ICECC_CXX
    export PATH="$ICE_PATH:$PATH"

    bbnote "Using icecc path: $ICE_PATH"
    bbnote "Using icecc tarball: $ICECC_VERSION"
 which triggered exception CalledProcessError: Command 'readlink -f /build/BUILD/work/qemux86-oe-linux/python-markupsafe/1.0-r0/recipe-sysroot-native/usr/bin/x86_64-oe-linux/x86_64-oe-linux-g++' returned non-zero exit status 1.

ERROR: Task (virtual:multilib:lib32:/build/meta-oe/meta-python/recipes-devtools/python/python-markupsafe_1.0.bb:do_patch) failed with exit code '1'

(From OE-Core rev: 577919d71f9be3de851c653e6981d715b37042ea)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-13 09:37:36 +01:00
Aaron Chan
a81b94c085 python3-dbus: Add native and nativesdk variants
(From OE-Core rev: c7b057ee871bd691615c489390c72406108931f7)

Signed-off-by: Aaron Chan <aaron.chun.yew.chan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-13 09:37:36 +01:00
Kai Kang
9983b07fff e2fsprogs: 1.44.5 -> 1.45.3
Update e2fsprogs from 1.44.5 to 1.45.3:
* rebase ptest.patch
* remove 0001-create_inode-fix-copying-large-files.patch which merged by upstream
* add new sub-package e2fsprogs-e2scrub and disable cron support

(From OE-Core rev: e5f8c1facfc3507710d7111951fe075e01c58e4e)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Adrian Bunk
0928c098ac screen: Backport fix for an implicit function declaration
(From OE-Core rev: 6e88bcbe81d20576ff05f9e3d8f8963e92b6572a)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Oleksandr Kravchuk
2cf7d0f0b3 aspell: update to 0.60.7
Removed patch was upstreamed.

(From OE-Core rev: 78189e465f5b7afa756fe20de024c83b3d5ea9a5)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Richard Purdie
e8cca73c92 python3-pygobject: Add missing pkgutil RDEPENDS
With the removal of setuputils, there was a missing runtime dependency on pkgutil
which was breaking the selftests for gobject-introspection at runtime. Fix this.

(From OE-Core rev: 50048ff2da2cc209fe6bf1452dc2cf2a545fe886)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Luca Boccassi
060918cbc1 python3-pygobject: remove python3-setuptools from RDEPENDS
python3-setuptools is an optional build-dependency of pygobject but
it is not necessary to run it, as also documented by the upstream
packaging guide:

https://gitlab.gnome.org/GNOME/pygobject/blob/master/docs/packagingguide.rst

Remove it from RDEPENDS to shrink the runtime dependency chain, as
setuptools includes scripts to download other packages, which might not
be desired on a minimal image.

(From OE-Core rev: 3054791e62c6ac1b03b7658f9c59761b254fa05c)

Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Oleksandr Kravchuk
0a5f2e0616 wpa-supplicant: update to 2.9
(From OE-Core rev: 84f6fd6464b987c556c630e83e8888ee484dadc6)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Oleksandr Kravchuk
cf5dc2a799 libinput: update to 1.14.0
(From OE-Core rev: 52b3d0a8a623723e946dcf490861a75e6f77e54e)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Alexander Kanavin
9b75122c2a python-nose: remove the python 2.x version of the recipe
With removal of python 2.x numpy, nothing needs it anymore.

(From OE-Core rev: 9f07b2836405d86e869780f8f1ae00843eadc409)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Alexander Kanavin
efd3d6e49c python-scons: remove the python 2.x version of the recipe
Nothing in oe-core or meta-oe is using it (scons.bbclass is set
to use 3.x version).

(From OE-Core rev: cd2205677fd167be51dc92436fe8f3a5aa440851)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Alexander Kanavin
1f791fd4d3 python-numpy: remove the python 2.x version of the recipe
The 1.17.0 release of NumPy no longer supports Python 2.x.

(From OE-Core rev: 4e9659f24e2f699effadcbe378b6a746d77ccdbd)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Alexander Kanavin
de3aca4cb8 maintainers.inc: give python recipes to Oleksandr Kravchuk
Derek Straka has been inactive for about a year; Oleksandr
has been the de facto maintainer meanwhile.

(From OE-Core rev: 90edb9c2e2d5b68ee6923167d96aa957fab97b8b)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Jason Wessel
f7486ba147 dpkg: Provide update-alternative for start-stop-daemon
When using DISTRO_FEATURE usrmerge, busybox and something that
requires dpkg-start-stop there is a conflict which prints the
following error.

===

ERROR: core-image-minimal-1.0-r1 do_rootfs: Postinstall scriptlets of ['busybox'] have failed. If the intention is to defer them to first boot,
then please place them into pkg_postinst_ontarget_${PN} ().
Deferring to first boot via 'exit 1' is no longer supported.
Details of the failure are in /build/tmp-glibc/work/intel_x86_64-linux/core-image-minimal/1.0-r1/temp/log.do_rootfs.
ERROR: core-image-minimal-1.0-r1 do_rootfs: Function failed: do_rootfs

===

Looking at the log file, it shows the problem:

update-alternatives: Error: not linking /build/tmp-glibc/work/intel_x86_64-linux/core-image-minimal/1.0-r1/rootfs/usr/sbin/start-stop-daemon to /usr/bin/busybox.nosuid since /build/tmp-glibc/work/intel_x86_64-linux/core-image-minimal/1.0-r1/rootfs/usr/sbin/start-stop-daemon exists and is not a link

===

The solution is to add an update-alternative to start-stop-daemon for dpkg.

(From OE-Core rev: e6d51c9472dab6cbec313ba51f9e8b9271f02eb8)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Jason Wessel
7365a605ae wic: Make disk partition size consistently computed
When using different root directories with a wks file wic is using the
value from the original ROOTFS_SIZE which is not correct.  Example:

Number  Start   End     Size    File system  Name       Flags
 1      20.5kB  318MB   318MB   fat16        otaefi     legacy_boot, msftdata
 2      318MB   636MB   318MB   ext4         otaboot
 3      636MB   1709MB  1074MB  ext4         otaroot
 4      1709MB  2027MB  318MB   ext4         otaboot_b
 5      2027MB  3101MB  1074MB  ext4         otaroot_b
 6      3101MB  5249MB  2147MB  ext4         fluxdata

The partitions 1, 2, and 3 incorrectly inherit the size, instead of using
a computed size.  With the patch applied it is working properly:

Number  Start   End     Size    File system  Name       Flags
 1      20.5kB  14.5MB  14.5MB  fat16        otaefi     legacy_boot, msftdata
 2      14.5MB  65.3MB  50.8MB  ext4         otaboot
 3      65.3MB  1139MB  1074MB  ext4         otaroot
 4      1139MB  1190MB  50.8MB  ext4         otaboot_b
 5      1190MB  2264MB  1074MB  ext4         otaroot_b
 6      2264MB  4411MB  2147MB  ext4         fluxdata

As for the removal of the bb.warn, if the size is not specified, it is
not something to warn the end user about.  Some of my default images
make use of the head room + a computed directory size or while generating
images.

(From OE-Core rev: 8e48b4d6c4d0ed213089a7449fea63aa0656e786)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Jason Wessel
351a10ccd6 wic: Add partition type for msdos partition tables
In order to create a msdos partition table disk image that can auto
expand after the image is copied to an SD card, wic needs the ability
to have a primary partition as the last entry.  The desired use case
is to be able to create an A/B update partition image scheme with a
/var volume that can be auto expanded to the remainder of the SD card
at run time.

The typical .wks file will look similar to the following:

bootloader --ptable msdos
part / --source rawcopy --sourceparams="file=u-boot.imx" \
   --ondisk mmcblk --no-table --align 1 --size 1
part /boot --source bootimg-partition \
   --ondisk mmcblk --fstype=vfat --label boot --active --align 4 --size 16
part / --source rawcopy --sourceparams="file=imx6_boot.otaimg" \
   --ondisk mmcblk --fstype=ext4 --label otaboot --align 4 --type logical
part / --source rawcopy --sourceparams="file=imx6.otaimg" \
   --ondisk mmcblk --fstype=ext4 --label otaroot --align 4 --type logical
part / --source rawcopy --sourceparams="file=imx6_boot.otaimg" \
   --ondisk mmcblk --fstype=ext4 --label otaboot_b --align 4 --type logical
part / --source rawcopy --sourceparams="file=imx6.otaimg" \
   --ondisk mmcblk --fstype=ext4 --label otaroot_b --align 4 --type logical
part /var --source rawcopy --sourceparams="file=imx6_var.otaimg" \
    --ondisk mmcblk --fstype=ext4 --label fluxdata --align 4

Without the patch applied, wic will generate an SD card image that looks like:

Disk boot.img: 890940s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start    End      Size     Type      File system  Flags
 1      2056s    48001s   45946s   primary   fat16        lba
 2      48008s   132467s  84460s   primary   ext4
 3      132472s  454467s  321996s  primary   ext4
 4      454471s  890939s  436469s  extended               lba
 5      454472s  538931s  84460s   logical   ext4
 6      538936s  860931s  321996s  logical   ext4
 7      860936s  890939s  30004s   logical   ext4         boot

With the patch applied a primary partition can be created at the end
of the image which can be expanded to fill the free space on the media
where the image has been copied, which looks like:

Disk boot.img: 890940s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start    End      Size     Type      File system  Flags
 1      2056s    48001s   45946s   primary   fat16        lba
 2      48007s   860931s  812925s  extended               lba
 5      48008s   132467s  84460s   logical   ext4
 6      132472s  454467s  321996s  logical   ext4
 7      454472s  538931s  84460s   logical   ext4
 8      538936s  860931s  321996s  logical   ext4
 3      860936s  890939s  30004s   primary   ext4         boot

(From OE-Core rev: 56add7cc547e0113cdf980579d1421b14cc233e5)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Jason Wessel
b209d4117d image_types_wic.bbclass: Copy the .wks and .env files to deploy image dir
When using a .wks.in file, the only place that the generated .wks file
exists in the tmp/work area.  A copy should be left behind in the
deploy directory so that you can easily run the wic tool to
re-generate or modify a new image without running bitbake.  Custom
.wks.in files can reference any number of bitbake variables, so it is
important to save the result.

below is an example of using the generated .wks file in the deploy
area.  The full name of my generated .wks file was
core-image-minimal-ostree-uboot-ab.wks, but since you usually only
have a single .wks file per image you can use a wild card like:

  cd tmp*/deploy/images/*
  wic create --vars . -e core-image-minimal -s -m core-image-minimal-*.wks

(From OE-Core rev: 42293d75404486e20db9f7a80d0d1756887b576d)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Richard Purdie
359d61067a sstatesig: Fix leftover splitting issue from siggen change
(From OE-Core rev: 8b76048da99ec3be7d763b7ccc81f767c7015bc7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Ricardo Neri
9b90717e91 runqemu: Add support to handle EnrollDefaultKeys PK/KEK1 certificate
The EnrollDefaultKeys.efi application (distributed in ovmf-shell-image)
expects the hypervisor to provide a Platform Key and first Key Exchange
Key certificate.

For QEMU, this is done by adding an OEM string in the Type 11 SMBIOS
table. The string contains the EnrollDefaultKeys application GUID followed
by the certificate string. For now, the string is passed in the command
line until QEMU understands OEM strings from regular files (please see
https://bugs.launchpad.net/qemu/+bug/1826200).

If runqemu detects it is given an OVMF binary with support for Secure Boot
(i.e., ovmf.secboot* binaries), extract the certificate string from the
OvmfPkKek1.pem certificate and modify the command-line parameters to
provide the key. Such certificate is created when building OVMF with
support for Secure Boot.

Cc: Ross Burton <ross.burton@intel.com>
Cc: Patrick Ohly <patrick.ohly@intel.com>
(From OE-Core rev: 5e47316ae62f7632fb62bc3b8093ac42f9e3541c)

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Ricardo Neri
c7fb87ee6f ovmf: Generate test Platform key and first Key Exchange Key
Commit from EDK2 be9470b3c91f ("OvmfPkg/EnrollDefaultKeys: enroll
PK/KEK1 from the Type 11 SMBIOS table") mandates that a Platform Key
and first Key Exchange Key certificate is provided to the
EnrollDefaultKeys application.

Previously, the application was using a hard-coded certificate
from Red Hat embedded in the application.

Create a certificate that can QEMU can subsequently pass to
EnrollDefaultKeys when running qemu-shell-image.

Cc: Ross Burton <ross.burton@intel.com>
Cc: Patrick Ohly <patrick.ohly@intel.com>
Cc: Alexander Kanavin <alex.kanavin@gmail.com>
(From OE-Core rev: daaf9d7bd8c3586609ab0eccf49af38dbdb0b02e)

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Ricardo Neri
29fb47861f ovmf: Use HOSTTOOLS' python3
Use the variable PYTHON_COMMAND to let know EDK2 base tools that python3
in the host shall be used.

In order build successfully, the host must have installed the
python3-distutils package or equivalent.

Based on an original patch by Ross Burton.

Cc: Ross Burton <ross.burton@intel.com>
Cc: Patrick Ohly <patrick.ohly@intel.com>
(From OE-Core rev: 435d1f8ffe9df86367316d25cb6def2ea2041642)

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Ricardo Neri
b7f92324cc ovmf: Set PV
Now that EDK2 has been tagging stable releases, we can also set PV
and drop UPSTREAM_VERSION_UNKNOWN.

Cc: Ross Burton <ross.burton@intel.com>
Cc: Patrick Ohly <patrick.ohly@intel.com>
(From OE-Core rev: b9851d612be842d35ebd78f5f21158beaaed8e64)

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Ricardo Neri
bc59000e77 ovmf: Update to version edk2-stable201905
Fixes [YOCTO #13438]

Update OVMF to edk2-stable201905. Since the last update, several things
have changed. Many of the patches we were carrying have now been taken
upstream in EDK2 or become obsolete. See below for details.

Also, as of commit 0c1ffb9504c3("CryptoPkg: Adding OpenSSL as one
submodule of EDKII repo"), openssl is not embedded into EDK2 using a
patching script but a git submodule. Then, use the gitsm bitbabke fetcher
and drop the extra SRC_URI from openssl when building with secureboot
enabled. Also remove all related variables.

OVMF switched to BSD+Patent license as detailed in
https://bugzilla.tianocore.org/show_bug.cgi?id=1373. Hence, update
LIC_FILES_CHKSUM accordingly to reflect this change.

Patches are updated as follows:

Drop 0001-ia32-Dont-use-pie.patch as it is implemented in upstream EDK2
in commits are 11d0cd23dd1b ("BaseTools/tools_def IA32: drop -no-pie linker
option for GCC49" and c25d3905523a ("BaseTools/tools_def IA32: disable PIE
code generation explicitly") for the applicable GCC versions.

Rebase 0003-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch
to edk2-stable201905.

Drop VfrCompile-increase-path-length-limit.patch as it has been taken
upstream in EDK2 in commit ba78032bc8c9f("BaseTools/VfrCompile: Remove the
MAX_PATH limitation").

Rebase no-stack-protector-all-archs.patch to keep behavior on not using
stack protector on all archs.

Drop 0001-BaseTools-header.makefile-add-Wno-stringop-truncatio.patch,
0002-BaseTools-header.makefile-add-Wno-restrict.patch, and
0003-BaseTools-header.makefile-revert-gcc-8-Wno-xxx-optio.patch. These
patches have been taken in upstream EDK2 in commits 9222154ae7b3("BaseTools
/header.makefile: add "-Wno-restrict"), 1d212a83df0e("BaseTools/
header.makefile: add "-Wno-stringop-truncation"), and 777f4aa083e9
("BaseTools/header.makefile: revert gcc-8 '-Wno-xxx' options on OSX"),
respectively.

Also, drop 0004-BaseTools-GenVtf-silence-false-stringop-overflow-war.patch.
GenVtf has been removed from EDK2 in commit 64ab2c82e8f6("BaseTools:
Remove GenVtf"). Also, this patch had been taken in EDK2 upstream in
commit 9de306701312("BaseTools/GenVtf: silence false 'stringop-overflow'
warning with memcpy()").

Drop patch 0007-OvmfPkg-EnrollDefaultKeys-application-for-enrolling-.patch
as it also has been taken by EDK2.

Patches 0002-ovmf-update-path-to-native-BaseTools.patch and
0004-ovmf-enable-long-path-file.patch did not need any update.

Lastly, add a needed dependency on bc.

Cc: Ross Burton <ross.burton@intel.com>
Cc: Patrick Ohly <patrick.ohly@intel.com>
(From OE-Core rev: 1f64ecf92fa77b682b18efe72fb6b27ff64ee052)

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Zheng Ruoqin
b2dd0b1c7c python3-mako: 1.0.14 -> 1.1.0
Upgrade python3-mako from 1.0.14 to 1.1.0.

(From OE-Core rev: cdde0265b196def4633ece64d798e576362e7b61)

Signed-off-by: Zheng Ruoqin <zhengrq.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Pascal Bach
a3845f921a cmake: 3.14.5 -> 3.15.1
The patches were refreshed with devtool.

I rebuilt all cmake recipes from poky and meta-oe without issue.

(From OE-Core rev: 022d642b0c8f464b451c543db50bb93012bce607)

Signed-off-by: Pascal Bach <pascal.bach@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Zang Ruochen
93f44ffc86 man-db:upgrade 2.8.5 -> 2.8.6.1
(From OE-Core rev: a99791672e41b8fbf1dedbcf8ca7088509875067)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Changqing Li
600bbe4e5c grub/grub-efi: fix conflict for aach64
MACHINE = qemuarm64
IMAGE_INSTALL_append = ' grub grub-efi'

do_rootfs failed with error:
file /usr/lib64/grub/arm64-efi/acpi.module conflicts between attempted installs of grub-2.02-r0.aarch64 and grub-efi-2.02-r0.aarch64
file /usr/lib64/grub/arm64-efi/adler32.module conflicts between attempted installs of grub-2.02-r0.aarch64 and grub-efi-2.02-r0.aarch64
...
file /usr/lib64/grub/arm64-efi/zfsinfo.module conflicts between attempted installs of grub-2.02-r0.aarch64 and grub-efi-2.02-r0.aarch64

For arm64, grub and grub-efi both compiled GRUBD2 with platform
arm64-efi, arm64 only support platform efi. So both packages have
almost same folder and content /usr/lib64/grub/arm64-efi/*

if Machine set to qemux86_64, do_rootfs will not have this problem,
since for grub, it compiled with platform i386-pc, for grub-efi,
compiled with platform x86-64-efi.

>From commit:
commit 4e9bb03238
Author: Hongxu Jia <hongxu.jia@windriver.com>
Date:   Wed Jan 17 03:25:58 2018 -0500

    grub/grub-efi: fix conflict

    While installing grub and grub-efi, there are conflict files
    in ${sysconfdir} ${datadir} ${bindir} ${sbindir}.

    - Since all of the conflicted files are tools which is
      common for grub and grub-efi, we split them (except
      grub-editenv) to grub-common in grub.

common tools for grub and grub-efi are installed into grub-common,
for aarch64, also shipped libdir into this common packages.
in this way, for qemuarm64, package grub is empty, and package grub-efi
use lib in package grub-common

(From OE-Core rev: 933286bdcb9008b75007abedf30cc1b4b6e2f0d0)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Tim Blechmann
1a0a00402d deb: allow custom dpkg command
trying to reduce the turnaround times for local builds, i'm trying to
find a way to inject `-Zgzip -z1` into the dkpg-deb command line.

attached patch introduces a `DPKG_BUILDCMD` variable for this purpose.
(i'm not very familiar with the whole bitbake infrastructure, so i'm
wondering: do i have to add it to the `vardeps` of do_package_deb?)

tia,
tim

>From 62d4930d307d5d07844889001e8a1c3111b72b98 Mon Sep 17 00:00:00 2001
From: Tim Blechmann <tim@klingt.org>
Date: Thu, 8 Aug 2019 06:48:54 +0200
Subject: [PATCH] package_deb: allow dpkg-deb to be customized via
 DPKG_BUILDCMD

the command line to invoke `dpkg-deb` is hardcoded. there are certain use
cases where we want to tweak how debian packages are compiled: e.g. the
default uses xz compression, which is rather CPU intensive. for local
builds one might want to pass `-Zgzip -z1` to favor speed over compression
ratio.

we therefore introduce a `DPKG_BUILDCMD` variable which allows downstream
code to customize how dpkg-deb is executed

(From OE-Core rev: 4e00ceaf38f2ae338e3b192c3485aaa963f54b99)

Signed-off-by: Tim Blechmann <tim@klingt.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Khem Raj
4b592bb251 musl: Update to master tip
Fix for RISC-V build regression

64bit time syscall plumbing

Changes are here [1]

[1] https://git.musl-libc.org/cgit/musl/log/?qt=range&q=0ce49d0a301b4142741b32773492af90f66ed3ca..d0b547dfb5f7678cab6bc39dd736ed6454357ca4

(From OE-Core rev: 34196d2913027d1fc8c080ea0c392a387e70a162)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-12 16:23:57 +01:00
Robert Yang
e1f589f044 bitbake: knotty: Fix for the Second Keyboard Interrupt
Fixed:
$ rm -fr tmp-glibc/cache/default-glibc/qemux86/x86_64/bb_cache.dat* ; bitbake -p
Press the first Ctrl-C when the parsing process is at about 50%:

Keyboard Interrupt, closing down...

Then presss the second Ctrl-C:

  File "/path/to/bitbake/bitbake/lib/bb/ui/knotty.py", line 619, in main
    event = eventHandler.waitEvent(0.25)
  File "/path/to/bitbake/lib/bb/server/process.py", line 591, in waitEvent
    self.eventQueueNotify.wait(delay)
  File "/usr/lib/python3.5/threading.py", line 549, in wait
    signaled = self._cond.wait(timeout)
  File "/usr/lib/python3.5/threading.py", line 297, in wait
    gotit = waiter.acquire(True, timeout)
KeyboardInterrupt

Capture the second KeyboardInterrupt during stateShutdown is running can fix
the problem. There may be still tracebacks for the third KeyboardInterrupt, but
I'm leaning to not fix it since we aimed for supporting 2 KeyboardInterrupts
only.

(Bitbake rev: 8c26b451f22193ef1c544e2017cc84515566c1b8)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:22:36 +01:00
Robert Yang
016b91b334 bitbake: cooker: Cleanup the queue before call process.join()
Fixed:
$ rm -fr tmp-glibc/cache/default-glibc/qemux86/x86_64/bb_cache.dat* ; bitbake -p
Press *one* Ctrl-C when the parsing process is at about 50%, then the processes
are not exited:

Keyboard Interrupt, closing down...

Timeout while waiting for a reply from the bitbake server

It hangs at process.join(), according to:

https://docs.python.org/3.7/library/multiprocessing.html

Cleanup the queue before call process.join() can fix the problem.

(Bitbake rev: 3eddfadd19b2ce4c061861abf0c340e3825b41ff)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:22:36 +01:00
Alexander Kanavin
53b602c4e4 local.conf.sample: do not add sdl to nativesdk qemu config
This is unnecessary as the recipe itself already does it:
http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-devtools/qemu/qemu_4.0.0.bb?id=1a4e4fb6b0a9d54641bd4193e95311d1f822a9ca#n21

(From meta-yocto rev: ada58683641b8a15e8b2e44060437a9c67d532e1)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:22:12 +01:00
Ross Burton
abda00c016 libx11: replace libtool patch with upstreamed patch
After iterating with upstream, this is the patch that landed.

(From OE-Core rev: 30a2af80f5f8c8ddf0f619e4f50451b02baa22dd)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Yuan Chao
cd1f08e28d gpgme:upgrade 1.13.0 -> 1.13.1
Refresh the following patch:
0007-python-Add-variables-to-tests.patch

(From OE-Core rev: 6cc148f8e7453ef4413ec44099a4899a4b435da2)

Signed-off-by: Yuan Chao <yuanc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Alexander Kanavin
534dc2e004 bluez5: correct the python3 runtime dependency
(From OE-Core rev: 62aeba48401cba34b9cc6dc5ee14685a1a29c5d3)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Alexander Kanavin
0d3e9edfde ofono: correct the python3 runtime dependency
(From OE-Core rev: 7f8583cc95f11cf10fb2325a1c4e23b041551581)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Alexander Kanavin
3efc329aeb attr: add a missing perl runtime dependency
/usr/lib/attr/ptest/test/sort-getfattr-output is a perl script.

(From OE-Core rev: 5843be17fe2ce3d206d7f8338b8d82a09cfe33fd)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Alexander Kanavin
f9e6fdcf97 apt: add a missing perl runtime dependency
/usr/lib/dpkg/methods/apt/setup is a perl script.

(From OE-Core rev: a96de885e122bd31e3382d6ecf6f665680e9db71)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Alexander Kanavin
17bfcbacb0 elfutils: use PRIVATE_LIBS for the ptest package
EXCLUDE_PACKAGES_FROM_SHLIBS is too broad: it suppresses both generation
of required and provided shlibs. We need to suppress only the provided shlibs
(to avoid clashes with the main package providing the same shlibs),
and run the required shlib dependencies generator as usual.

(From OE-Core rev: 7d342fd04266bedc12706c111c5b83d952566bca)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Alexander Kanavin
6c966021b9 stress-ng: add a patch to remove unneeded bash dependency
(From OE-Core rev: ea052d11b9ebe113ca392e092c2dd530573ac294)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Yi Zhao
8195341e9e libx11-compose-data: upgrade 1.6.7 -> 1.6.8
Refresh the patch to fix the do_patch QA warning.

(From OE-Core rev: 72e6919bab390494103472401a563199ab339e85)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Zang Ruochen
7029258a65 libglu:upgrade 9.0.0 -> 9.0.1
(From OE-Core rev: 3afee08c2cdb8cda75714d7460d1c67e75f0862c)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Ricardo Ribalda Delgado
5f1bfba262 inetutils: Fix abort on invalid files
When the code is compiled with  "-fstack-protector-strong
-D_FORTIFY_SOURCE=2", everytime ftpfd is asked for a non existent file,
it crashes with the following error:

*** buffer overflow detected ***:
Aborted

This seems to be a bug/feature of gcc. A bug has been open on their
bugzilla, and also inetutils have been posted with the proposed patch.

Without this patch, pxelinux fails to boot because it keeps asking the
server for the pxelinux.cfg/00-01-02-03-04 and never jumps to /default.

(From OE-Core rev: 0c3a1251a8aec86f3e877130f926a928e5ca2030)

Signed-off-by: Ricardo Ribalda Delgado <ricardo@ribalda.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Zang Ruochen
54c7db0105 libgudev:upgrade 232 -> 233
(From OE-Core rev: 466bc8f05eac59a58575fd10518ee7de44ba50d1)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Zang Ruochen
f5d2fc2aae python-scons:upgrade 3.0.5 -> 3.1.0
(From OE-Core rev: 322ff31d811bd8142af93574b10c91c611df93bd)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Yuan Chao
9d1c158725 python3-pbr:upgrade 5.4.1 -> 5.4.2
(From OE-Core rev: 83ffc20637abd275bc3037935d629f5a716b4614)

Signed-off-by: Yuan Chao <yuanc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Khem Raj
4df4352813 mesa,llvm,meson: Update llvm to 8.0.1 plus define and use LLVM version globally
- Add missing dependency on libedit
- Define LLVMVERSION on the same lines as GCCVERSION and other tools
- Use LLVMVERSION in mesa and meson.bbclass to get llvm version instead of
  hardcoding it
- Use llvm patches unmodified from meta-clang, helps in keeping them in
  sync
- Define PREFERRED_VERSION for llvm, llvm-native, nativesdk-llvm

(From OE-Core rev: 3c08b638348abd543fc92baf56c28ca16ae6aac6)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Hongxu Jia
3ef77a577c grub: add grub-native
Not only grub-efi-native, but also add grub-native to provide
grub utilities on host

(From OE-Core rev: 67dfa11f2d2fb5242814e133346e72515bfc0aca)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-08 10:19:56 +01:00
Changqing Li
841a1029c3 genericx86-64.conf/genericx86.conf: add QB_SYSTEM_NAME
QB_SYSTEM_NAME set in qemuboot-x86.inc will be removed,
so set QB_SYSTEM_NAME in these two configuration files.

(From meta-yocto rev: 6748c925817da0e7ae2a84d1214e3595515962b5)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:56 +01:00
Ross Burton
48a979be54 waffle: upgrade 1.5.2 -> 1.6.0
Switch to Meson instead of CMake.

Add PACKAGECONFIG for surfaceless-egl.

Inherit bash-completion for the new wlinfo completion script.

(From OE-Core rev: 96decf673992b1cd1eebac45a5cd534eef27ebd7)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Trevor Gamblin
58beb4fd3d gzip: update ptest package dependencies
gzip-ptest skips the following tests on core-image-sato builds:

- zgrep-context
- zdiff
- zgrep-signal

The same tests pass on core-image-sato-sdk builds. This is due to
the use of busybox tool variants on core-image-sato (zgrep-context,
zdiff) and the absence of the perl and perl-ptest packages
(zgrep-signal). This patch adds the dependencies needed for all
three tests.

(From OE-Core rev: c2559ab9b41b823b23dc675745bbaefd45362a08)

Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Jason Wessel
6cac15e514 pseudo: Fix openat() with a symlink pointing to a directory
While working with ostree disk generation in conjunction with wic, I
found a problem with pseudo where it tried to resolve a symlink when
it shouldn't, based on openat() flags. A C program has been
constructed to test pseudo to show that it is working properly with
the correct behavior around openat().

 #include <stdio.h>
 #include <stdlib.h>
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <dirent.h>
 #include <unistd.h>
 #include <fcntl.h>

int main()
{
    /*
     * Tested with: gcc -Wall -o app app.c ; echo "no pseudo" ;
     * ./app ; echo "pseudo"; pseudo ./app
     */
    system("rm -rf tdir tlink");
    system("mkdir tdir");
    system("ln -s tdir tlink");
    DIR *dir = opendir(".");
    int dfd = dirfd(dir);

    int target_dfd = openat (dfd, "tlink", O_RDONLY | O_NONBLOCK |
                             O_DIRECTORY | O_CLOEXEC | O_NOFOLLOW);
    if (target_dfd == -1) {
        printf("Test 1 good\n");
    } else {
        printf("Test 1 failed\n");
        close(target_dfd);
    }
    target_dfd = openat (dfd, "tlink", O_RDONLY | O_NONBLOCK |
                         O_DIRECTORY | O_CLOEXEC);
    if (target_dfd == -1) {
        printf("Test 2 failed\n");
    } else {
        printf("Test 2 good\n");
        close(target_dfd);
    }
    /* Test 3 make sure the owner of the link is root  */
    struct stat sbuf;
    if (!lstat("tlink", &sbuf) && sbuf.st_uid == 0) {
        printf("Test 3 good\n");
    } else {
        printf("Test 3 failed\n");
    }
    /* Test 4 tests open with the "rb" flag, owner should not change */
    int ofd = openat(dfd,"./tlink", O_RDONLY|O_CLOEXEC);
    if (ofd >= 0) {
        if (fstat(ofd, &sbuf) != 0)
            printf("ERROR in fstat test 4\n");
        else if (sbuf.st_uid == 0)
            printf("Test 4 good\n");
        close(ofd);
    } else {
        printf("Test 4 failed with openat()\n");
    }
    /* Test pseudo db to see the fstat() above did not delete the DB entry */
    if (!lstat("tlink", &sbuf) && sbuf.st_uid == 0)
        printf("Test 5 good\n");
    else
        printf("Test 5 failed... tlink is owned by %i and not 0\n", sbuf.st_uid);
    return 0;
}

int main()
{
    /* Tested with: gcc -Wall -o app app.c ; echo "no pseudo" ; ./app ; echo "pseudo"; pseudo ./app */
    system("rm -rf tdir tlink");
    system("mkdir tdir");
    system("ln -s tdir tlink");
    DIR *dir = opendir(".");
    int dfd = dirfd(dir);

    int target_dfd = openat (dfd, "tlink", O_RDONLY | O_NONBLOCK | O_DIRECTORY | O_CLOEXEC | O_NOFOLLOW);
    if (target_dfd == -1) {
        printf("This is right\n");
    } else {
        printf("This is broken\n");
    }
    return 0;
}

Many thanks to Peter Seebach for fixing the problem in the pseudo code
to use the same logic which was already there for the
AT_SYMLINK_NOFOLLOW.

Also updated is the license MD5 checksum since the master branch of
pseudo has had the SPDX data updated.

(From OE-Core rev: a98ea4be5ce19ff380ca500ba1ef3da490ec4556)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Jason Wessel
3338776f11 sqlite3: Fix zlib determinism problem
sqlite3-native in particular was finding zlib from the host if zlib-devel
was installed. This could lead to races where pseudo-native may or may not
fail to build.

We don't need/use compressed page support with sqlite so disable the dependency
(it doesn't have a configure option so use a autoconf cache variable).

The target binaries were not previously building with zlib, so we will
leave the default being zlib turned off, while the host binaries were
building with it "occasionally", but not for anything at runtime.

(From OE-Core rev: 0af2c6af0d5c060666f7ee6f2ef428c1a414cb86)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Andreas Obergschwandtner
6070e77e1e bzip2: set the autoconf package version to the recipe version
This is done to require only a single version change if bzip2
is updated and fixes also setting package version 1.0.6 for
bzip2 1.0.8.

(From OE-Core rev: beb4fb0b0e89ce6b80645322ee435a6b4909b652)

Signed-off-by: Andreas Obergschwandtner <andreas.obergschwandtner@skidata.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Yuan Chao
c1ac9c6790 nettle:upgrade 3.4.1 -> 3.5.1
nettle-stdint.h was no longer use.
Remove nettle/nettle-stdint.h in do_install_append() of .bb file.

Changelog in ChangeLog file as follows:

2019-01-06  Niels Möller  <nisse@lysator.liu.se>

        * nettle-types.h: Don't use nettle-stdint.h, include <stdint.h>
        directly.
        * nettle-write.h: Likewise.
        * configure.ac: Delete use of AX_CREATE_STDINT_H.
        * aclocal.m4 (AX_CREATE_STDINT_H): Delete.
        * Makefile.in (INSTALL_HEADERS, distclean-here): Delete mention of
        nettle-stdint.h.

(From OE-Core rev: a44e40675e151eb079d7d9e87e734ca5cfb923b5)

Signed-off-by: Yuan Chao <yuanc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Changqing Li
060e7db0c4 qemuboot-x86: move QB_SYSTEM_NAME to corresponding conf
Configrations:
MACHINE: qemux86-64
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"

Reproduce steps:
bitbake lib32-core-image-minimal
runqemu qemux86-64 nographic lib32-core-image-minimal

Errors:
qemu cannot bootup since:
Booting from ROM...
This kernel requires an x86-64 CPU, but only detected an i686 CPU.
Unable to boot - please use a kernel appropriate for your CPU.
QEMU: Terminated

For lib32 image, override has x86, so the qemubin set to qemu-system-i386,
fix by move QB_SYSTEM_NAME to corresponding conf, don't use the override

(From OE-Core rev: ffaf86f175b2e6caa3a0067f7b3725930b053715)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Ross Burton
83201d04f1 xserver-xorg: refresh build path removal patch
The patch has iterated, so update to the latest revision.

(From OE-Core rev: 042e8e8a7181bb3ca830185c38f9287f62c68fe6)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Oleksandr Kravchuk
7e0957764d ell: update to 0.21
Changelog:
- Fix issue with resetting DHCP lease on client stop.
- Add support for GPIO helper functionality.

(From OE-Core rev: ca881bcad40e461e93a71f05b65967e7906cf2e1)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Mark Hatle
38fce3d2fd glibc-package.inc: Add linux-libc-headers-dev to glibc-dev
Without linux-libc-headers-dev being added to the libc6-dev as a RDEPENDS,
the system may fail to install the necessary libc headers.

This can happen when NO_RECOMMENDATIONS = "1" is defined.

During the 'testsdk' this results in failures that look like:

    fatal error: linux/errno.h: No such file or directory
    # include <linux/errno.h>
              ^~~~~~~~~~~~~~~

This also matches the behavior of musl, which does not suffer from this
problem.

(From OE-Core rev: ad31c908c8267166ce6cce9d5085ef2ac099a6c5)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Khem Raj
1b6ac48914 systemd-boot: Add option to specify cross objcopy and use it
This is needed when build host != x86 box

(From OE-Core rev: 5096f535561d2fd608d622abec5bc2ddb79d49b7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Khem Raj
be88cb8424 syslinux: Override hardcoded toolnames in Makefile
makefile assumes native toolnames e.g. ar, as, nm etc.
which causes build fails on non-x86 build hosts

objcopy: Unable to recognise the format of the input file `libcom32.elf'

(From OE-Core rev: ee9afb34fb95409148734fda1eea1fe8f81983fd)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Khem Raj
70da7c23b4 virglrender: Fix endianness check on musl
Seen to fail on musl/mips, this fixes the check to be linux specific
which means it can detect the endianness for musl correctly

(From OE-Core rev: c9559685ebcfb0303fc072c99b3d518427fc5a82)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Khem Raj
196e56a5d9 glibc: Update to glibc 2.30
- Drop backported patches
- Move common pieces between cross-localedef and glibc into a common file
- Move latest checksums to glibc-common.inc and remove duplicates from glibc recipe
- Detailed release notes [1]

[1] https://sourceware.org/ml/libc-alpha/2019-08/msg00029.html

(From OE-Core rev: fe75808dca4bb56ac703d18ebbad4004678f69da)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Richard Purdie
e93572cda7 gstreamer: Add fix for glibc 2.30
Fix a header overlap/redefinition issue with glibc 2.30.

(From OE-Core rev: 11422465e187b096d06c0eaf0a66dbac5b9e8710)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-07 16:08:15 +01:00
Ming Liu
88c6be81a5 opensbi: handle deploy task under sstate
Inherit deploy bbclass and install files to DEPLOYDIR rather than in
DEPLOY_DIR_IMAGE.

(From OE-Core rev: f03ab9b21c2aeeae0bd020ee94ec9bb1d903500d)

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:27 +01:00
Ming Liu
d6138fe950 license_image.bbclass: drop invalid comments
These comments are not valid any more, drop them.

(From OE-Core rev: 39f5a3030a97bdf567ee11091dd4e95ef04585d7)

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:27 +01:00
Alexander Kanavin
cd5ba94ea5 maintainers.inc: assign acpica to Ross
Fathi has as well been inactive for a long time.

(From OE-Core rev: 29ac3e98fdfb7d0d3bb3884b97a0ba5255826904)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:27 +01:00
Ross Burton
4ca18eb6c8 qemu: fix patch Upstream-Status
(From OE-Core rev: ee31907d25bc89dcb6566368aae651920564980c)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:27 +01:00
Anuj Mittal
46865ff106 harfbuzz: upgrade 2.4.0 -> 2.5.3
License-Update: Copyright years added, and point to correct source file.

For changes in this version, see:
https://github.com/harfbuzz/harfbuzz/blob/2.5.3/NEWS

(From OE-Core rev: bdb10b5daf07d66c1d73137c789884a933ca65dc)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:27 +01:00
Anuj Mittal
9a0e6992ca pango: upgrade 1.42.4 -> 1.44.3
* For changes, see:
https://github.com/GNOME/pango/blob/master/NEWS

* Remove upstreamed patch, rename docs and introspection meson
options and add PACKAGECONFIG for tests.

(From OE-Core rev: e7fcd745977a86926f83edeaaf31efad70002da8)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:27 +01:00
Khem Raj
e05d22f940 webkitgtk: Fix compile failures with clang
Backport upstream patch to address build regression with clang

Fixes
webkitgtk-2.24.3/Source/bmalloc/bmalloc/AvailableMemory.cpp:120:31: error: implicit instantiation of undefined template 'std::__1::array<char, 256>'
        std::array<char, 256> statmBuffer;
                              ^

(From OE-Core rev: 94a1c0a15e57844feddad5607fb8643f7c956953)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:27 +01:00
Khem Raj
09992cb5a4 groff: Fix math.h inclusion from system headers issue
groff has system headers overrides in its sourcecode which it
generates as fallbacks but in some cases when a system header includes
math.h via include <> directive it lands in the override header and
causes compile issues, seen with clang+libc++, this patch makes sure
that right defines are available before including it

(From OE-Core rev: e9beba2a33b46d31bfdd926211d22ebf2abb6c90)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:27 +01:00
Alexander Kanavin
cd671da06d libedit: fix upstream verison check
The default works fine; not sure why the line was added.

(From OE-Core rev: 66bb9fd36128bb5ce12c7a5e224cfcd69dc2cd06)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:27 +01:00
Ross Burton
5232ca9a18 libx11-diet: remove
This doesn't appear to be used anymore, as saving a few hundred k at the expense
of only using ASCII is quite the compromise in the modern world.

(From OE-Core rev: 1a502765db2093e573c9e3ecd6c1bc7621476963)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:26 +01:00
Richard Purdie
a0542ed3ff sstatesig: Updates to match bitbake siggen changes
Update the metadata to correspond to the bitbake siggen task specification
format change. This standardises on "<fn>:<task>" everywhere rather than
the "." delimiter that was being used in some places.

This is an API breaking change but means we now have a consistent format
being used throughout the codebase without compatibility APIs.

(From OE-Core rev: 23db236a054ee7a989cdbbcb42ad5c6eefd4a6ae)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:26 +01:00
Richard Purdie
bcc9f1b5f1 sstate/sstatesig: Update to new form of BB_HASHCHECK_FUNCTION
Bitbake has updated to a cleaned up form of BB_HASHCHECK_FUNCTION,
adapt to this cleanup. This is an API breaking change.

(From OE-Core rev: a4d413d8d809132b0e0a5dd673a36e2bd0e0be4c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:26 +01:00
Richard Purdie
8d7f663136 sstatesig: Update to handle BB_HASHSERVE
Update the code to handle BB_HASHSERV, an autostarted bitbake internal hash
equivalency server suited to local developer usage.

(From OE-Core rev: 9b3d7b0b0ff27281391c2b8f2511d312d6995ed6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:26 +01:00
Richard Purdie
56b178ca2f sstatesig: Adpat to recent bitbake hash equiv runqueue changes
Upstream bitbake now hanes preserving the unihash data itself, drop
this usage of persist_data which was extremely problematic due to
concurrent task access issues, particulary on loaded systems.

(From OE-Core rev: 034d91c2c94b201797a7830b0af6141132f9bad1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:26 +01:00
Richard Purdie
00f40114b4 sstatesig: Add debug for incorrect hash server settings
If the hash server settings are incorrect, show the user useful
error messages instead of tracebacks.

(From OE-Core rev: 2df5d95b9b63e30ddaa7c72a4173b9a05b3f15f9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:26 +01:00
Richard Purdie
62c8b8c4d9 sstatesig: Move unihash siggen code to bitbake
This code is closely tied with the hash server in bitbake and also means
we can't relibably test the hashserv runqueue functionality without OE
metadata. Moving this to bitbake as a MixIn class makes most sense
and encourages code collaboration and reuse as well as enabling easier
and more accurate testing of the APIs.

(From OE-Core rev: a2a9c6092d4dde706ed071b08a972d1d87184295)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:26 +01:00
Ross Burton
c49aa783d8 sanity: update for new bb.build.exec_func() behaviour
The pythonexception argument is no more, and passing True is the new behavior.

[ YOCTO #13468 ]

(From OE-Core rev: b7a34d2b8d684e5b98f5c286de67dc1b5d8df853)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:26 +01:00
Richard Purdie
546c32753b classes/lib: Remove bb.build.FuncFailed
Whilst seemingly a good idea, this exception doesn't really serve any purpose
that bb.fatal() doesn't cover. Wrapping exceptions within exceptions isn't
pythonic.

Its not used in many places, lets clean up those and remove usage of it
entirely. It may ultimately be dropped form bitbake entirely.

(From OE-Core rev: efe87ce4b2154c6f1c591ed9d8f770c229b044ad)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:26 +01:00
Richard Purdie
d9cb21854b sanity.conf: Require bitbake 1.43.1
We depend on a number of bitbake API changes, bump the min bitbake
version requirement.

(From OE-Core rev: 908cdd669b083b172f7cd53dd020629affee360c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:24:26 +01:00
Richard Purdie
8fc23b8c1c bitbake: bitbake: Bump version to 1.43.1 for API changes
(Bitbake rev: f43778c2d19e70d4befd483b06aaf247fc65c799)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:32 +01:00
Richard Purdie
fd79638046 bitbake: tests/runqueue: Add hashserv+runqueue test
Add a test which tests the runqueue adaptations for hash equivalency.

(Bitbake rev: 477321d0780df177c1582db119c2bb6795912fc6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:32 +01:00
Richard Purdie
347c205602 bitbake: build/utils: Drop bb.build.FuncFailed
Its hard to see what this exception adds in the current codebase. The logfile
attribute is effectively ignored, the exception doesn't serve a defined
purpose and mostly seems to be worked around.

Remove it entirely. If this does cause output problems, we'll figure
out better ways to address those.

(Bitbake rev: cfeffb602dd5319f071cd6bcf84139ec77f2d170)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:32 +01:00
Richard Purdie
4fbb862cdc bitbake: siggen: Clean up task reference formats
Currently siggen uses the format "<filename>.<taskname>" for referencing tasks
whilst runqueue uses "<filename>:<taskname>". This converts to use ":" as the
separator everywhere.

This is an API breaking change since the cache is affected, as are siginfo files
and any custom signature handlers such as those in OE-Core.

Ultimately this will let us clean up and the accessor functions from runqueue,
removing all the ".rsplit(".", 1)[0]" type code currently all over the place.
Once a standard is used everwhere we can update the code over time to be more
optimal.

(Bitbake rev: 07e539e1c566ca3434901e1a00335cb76c69d496)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:32 +01:00
Richard Purdie
40a5e193c4 bitbake: runqueue: Clean up BB_HASHCHECK_FUNCTION API
This function uses an old API which uses offsets into lists as a communication
mechanism. Update the API to use "tid" which is used universally in runqueue now.

We can also add kwargs support to the funciton definition to drop some of the
backwards compaiblility hoops we had to jump though with different function
argument combinations.

(Bitbake rev: dc23550047e5078da491ce9a6f30989cb5260df6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:32 +01:00
Richard Purdie
43d37a6eaf bitbake: hashserv: Switch from threads to multiprocessing
There were hard to debug lockups when trying to use threading to start
hashserv as a thread. Switch to multiprocessing which doesn't show the
same locking problems.

(Bitbake rev: be23d887c8e244f1ef961298fbc9214d0fd0968a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:32 +01:00
Richard Purdie
d40d7e4385 bitbake: hashserv: Use separate threads for answering requests and handling them
Experience with the prserv shows that having two threads, one accepting
and queueing connections and one handling the requests leads to much
more reliable behaviour than having everything in a single thread.

(Bitbake rev: a03d60671a53d9ff70e07cc42fe35f6f8776dac2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:31 +01:00
Richard Purdie
94d5c61c9a bitbake: prserv: Use a memory journal
We've seen PR Server timeouts on the autobuilder, this is likely from the
journal being blocked on disk IO generated by the build.

Since we're running with synchronous off, we may as well put the journal
into memory and avoid any IO related stalls.

(Bitbake rev: ee3fc6030e653f3244b065fc89aafd2a7c36ae04)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:31 +01:00
Richard Purdie
f9f308250a bitbake: hashserv: Turn off sqlite synchronous mode
We're seeing performance problems with hashserv running on a normal build
system. The cause seems to be the large amounts of file IO that builds involve
blocking writes to the database. Since sqlite blocks on the sync calls, this
causes a significant problem.

Since if we lose power we have bigger problems, run with synchronous=off
to avoid locking and put the jounral into memory to avoid any write issues
there too.

This took writes from 120s down to negligible in my tests, which means
hashserv then responds promptly to requests.

(Bitbake rev: 7ae56a4d4fcf66e1da1581c70f75e30bfdf3ed83)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:31 +01:00
Richard Purdie
ca04aaf7b5 bitbake: cooker/hashserv: Allow autostarting of a local hash server using BB_HASHSERVE
Its useful, particularly in the local developer model of usage, for
bitbake to start and stop a hash equivalence server on local port,
rather than relying on one being started by the user before the build.

The new BB_HASHSERVE variable supports this.

The database handling is moved internally into the hashserv code so that
different threads/processes can be used for the server without errors.

(Bitbake rev: a4fa8f1bd88995ae60e10430316fbed63d478587)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:31 +01:00
Richard Purdie
d9aafb8507 bitbake: runqueue: Improve determinism
Whilst this isn't strictly necessary, its helpful if the log output is
consistent and its also helpful if bugs either appear or don't appear
for a specific configuration. Ensuring the various iterations we make
are deterministic (sorted) helps with this.

(Bitbake rev: 6a901bb904a97ca90d88be2c6901d3d32346282f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:31 +01:00
Richard Purdie
7df31ff368 bitbake: runqueue: Enable dynamic task adjustment to hash equivalency
There is a compelling usecase for tasks being able to notify runqueue
that their "unihash" has changed. When this is recieved, the hashes of
all subsequent tasks should be recomputed and their new hashes checked
against existing setscene validity. Any newly available setscene tasks
should then be executed.

Making this work effectively needs several pieces. An event is added
which the cooker listen for. If a new hash becomes available it can
send an event to notify of this.

When such an event is seen, hash recomputations are made. A setscene
task can't be run until all the tasks it "covers" are stopped. The
notion of "holdoff" tasks is therefore added, these are removed from
the buildable list with the assumption that some setscene task will
run and cover them.

The workers need to be notified when taskhashes change to update their
own internal siggen data stores. A new worker command is added to do this
which will affect all newly spawned worker processes from that worker.

An example workflow which tests this code is:

Configuration:
BB_SIGNATURE_HANDLER = "OEEquivHash"
SSTATE_HASHEQUIV_SERVER = "http://localhost:8686"

$ bitbake-hashserv &
$ bitbake automake-native
$ bitbake autoconf-native automake-native -c clean
$ bitbake m4-native -c install -f
$ bitbake automake-native

with the test being whether automake-native is installed from sstate.

(Bitbake rev: 1f630fdf0260db08541d3ca9f25f852931c19905)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:31 +01:00
Richard Purdie
40eb5b344b bitbake: siggen: Convert to use self.unitaskhashes
Rather than metadata driven sqlite databases for communication, use
bitbake's unitaskhashes variable instead.

(Bitbake rev: a0d941c787cf3ef030d190903279d311bc05d752)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:31 +01:00
Richard Purdie
de143e0db6 bitbake: siggen: Add new unitaskhashes data variable which is cached
We need to preserve unihash task hashes between runs. Use the new SimpleCache
class to create such a class within the signature generator which is loaded
at init time and saved when builds complete. The default is unpopulated but
metadata sig handlers can populate this cache.

(Bitbake rev: 1f326f2c29c2664a5daaeeb0c1fd332630efbdba)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:31 +01:00
Richard Purdie
53bb939383 bitbake: runqueue: Improve scenequeue processing logic
Rather than a special copy of the data structure which we change, compute
the logic using set operations from other data we have. This means
we can add tasks back into the scenequeue without having to worry about
reversing operations on this variable with all the potential bugs that
might involve.

(Bitbake rev: b707d0cbc25fa336a1e95ff588f1ea37eee063eb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:31 +01:00
Richard Purdie
5f56244092 bitbake: cache: Add SimpleCache class
This adds a simple version of the MultiProcessCache which can be used to
save and load cache data, useful for a new usecase we have in
sigdata/runqueue.

(Bitbake rev: 19a6e35600ae6d2d1bcecca6e68ab8c37674774e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:31 +01:00
Richard Purdie
db31374efa bitbake: siggen: Import unihash code from OE-Core
This code is closely tied with the hash server in bitbake and also means
we can't relibably test the hashserv runqueue functionality without OE
metadata. Moving this to bitbake as a MixIn class makes most sense
and encourages code collaboration and reuse as well as enabling easier
and more accurate testing of the APIs.

(Bitbake rev: 7bb79099a6c1b463d6ae9226c4cab5e76a965675)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:31 +01:00
Joshua Watt
9802b2e650 bitbake: hashserv: SQL Optimizations
Implements a number of optimizations to the SQL used in the hash
equivalence server:

 1) Two indexes are created for the two methods (method, taskhash and
    method outhash) by which rows are found in order to speed up the
    lookup
 2) An extra SELECT to lookup the just inserted row was removed. This
    SELECT is unnecessary since all of the information about the newly
    inserted row is already available.
 3) A uniqueness constraint was added to the table. This should allow
    the server to be multithreaded in the future since duplicate inserts
    can be detected (and ignored). This change requires bumping the
    database version to '2', since a uniqueness constraint can't be
    added to an existing table.
 4) Some comments are added to clarify the trick SELECT statement used
    when inserting new equivalent hashes

(Bitbake rev: 7aec8632e67b4f0ab7b72692c40a42f6926608c3)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-06 11:21:31 +01:00
Richard Purdie
6c7c0cefd3 sstate: Reduce race windows
When we write to the sstate directory we try to do so atomically so
consumers either see one version or another but never an imcomplete file.
Unfortunately this is reliant on filesystem support and with some NFS
configurations a replaced file would be lost from memory even if users held
open descriptors.

It makes sense to try and avoid replacing existing files where we can.

(From OE-Core rev: 18cdc087fd5da30e2b31f3d4e81b153cd36ca844)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Ross Burton
dad9cd5cca libx11: update to 1.6.8
Fix the build when the host doesn't have libc.a installed by reverting an
upstream commit, and cherry-pick a build fix from master.

Drop a redundant sed, the expression it removes doesn't exist anymore.

Move most patches to libx11.inc so that they're applied to both libx11 and libx11-diet.

(From OE-Core rev: 8bb48ac237315e83837973ecd1488060ec170588)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Oleksandr Kravchuk
ad3edec70d xserver-xorg: update to 1.20.5
(From OE-Core rev: b40277355b4ecf041061b3db0d4d890c7033e96f)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Oleksandr Kravchuk
0eeecb0027 xorgproto: update to 2019.1
(From OE-Core rev: 2ec1b978e0d02884e6553d3495daf9cf914d267b)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Ross Burton
6fc65530fb xserver-xorg: remove embedded build path in the source
The generated source file sdksyms.c has a comment with the absolute build path,
which means xserver-xorg-src contains this build path.  This is both potential
build information leakage and a source of unreproducibility, so remove the
comment.

(From OE-Core rev: 2086e0f08d920de15ab4065fb43c2281b1dcc57a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Ross Burton
3ac93c73e1 libxx86dga: remove obsolete client libary
No modern drivers nor applications use DGA, so remove the client library.

(From OE-Core rev: 2d7e485fcfbc0dc3d76339baf02f50c3c9e22a91)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Ross Burton
73cc433815 xdpyinfo: don't depend on DGA
DGA (Direct Graphics Access) is an obsolete extension that neither modern X
drivers nor applications support.  We'll remove the client library, so remove
the optional dependency on DGA in xdpyinfo.

(From OE-Core rev: b00b1bb1f9394c05268fa10bf0114dc9defc70df)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Ross Burton
7cbf0fb1f0 xserver-xorg: add PACKAGECONFIG for DGA
Ideally we'd disable this as no real world client applications actually use DGA
these days, but some drivers (for example fbdev and cirrus) still need DGA
enabled in the server to build.

(From OE-Core rev: e7b1a58a757334d5c73a9b7a8c67e6ead07166c7)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Ross Burton
4e96b138a6 xserver-xorg: clean up xorgproto dependencies
xorgproto is mentioned in the PACKAGECONFIG build dependencies because in the
past it was many separate *proto recipes.  Now they're all in one recipe, which
is in DEPENDS, so we don't need to depend on it several times.

(From OE-Core rev: 1c072b42525864e26d4ab17a64f925ce3803d583)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Ross Burton
85c295bef6 libxx86misc: remove this now redundant library
The extension this client library is for was removed from the X server over a
decade ago:

commit 22e64108ec63ba77779891f8df237913ef9ca731
Author: Daniel Stone <daniel@fooishbar.org>
Date:   Wed Jul 16 06:25:26 2008 +0300

    XFree86: Remove XFree86-Misc extension

    Its last remaining purpose in life has been destroyed by input
    properties.  Au revoir: it's been fun, by which I mean awful.

Remove the obsolete dependencies from xset and xdpyinfo, and delete libxx86misc
entirely.

(From OE-Core rev: 4d7677b2f511b2d07fabb1f06213a569c53f839f)

Signed-off-by: Ross Burton <ross.burton@intel.com>
enter the commit message for your changes. Lines starting
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Ming Liu
e5b0ad5dfa weston: change to use meson build system
The changes include:
- Drop all autotools related patches.
- Move weston-launch setuid-install to do_install task since it's not
  supported yet by meson build.
- Drop cairo-glesv2 package config, it's not supported by meson build,
  the recommended value is hard-coded to cairo-image for now in weston
  source.
- Introduce remoting package config, to give this option a explicit
  value, or else the build would run into gstreamer missing error since
  it defaults to be true but gstreamer is not in depends list.
- Default to headless backend if neither x11 nor wayland is in
  DISTRO_FEATURES.

To be noticed, the packages built from meson would not be identical
with those built from autotools, for instance, libz dependency has been
dropped from meson build, and systemd-notify is always built in meson
when systemd packageconfig is enabled, which in autotools, it's
optional, and so on, it's not easy to list all the differences, but
you could get them by comparing the pkgdata directories built by meson
and autotools.

(From OE-Core rev: 8d68e3cb315137f73d1b0f5f80180c2d3526f99d)

Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Signed-off-by: Ming Liu <ming.liu@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Ross Burton
89a2768000 insane: check if the recipe incorrectly uses DEPENDS_${PN}
Some people mistakenly use DEPENDS_${PN} and wonder why the dependencies don't
work. Check for this and tell the user to use DEPENDS.

(From OE-Core rev: cfaa104955c4ad0aafbe5d59ef85e4a8e3526c69)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Adrian Bunk
06e36f13bf grub/libmpc/gdb: Use GNU_MIRROR in more recipes
(From OE-Core rev: 2f13b063f64c500f144a70d23a343223b5c70907)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Randy MacLeod
640c59a706 ptest-runner: update from 2.3.1 to 2.3.2
All local patches are now upstream so they have been dropped.
Other upstream commits make ptest-runner build using: clang -Weverything

$ git log --oneline b73bd54..7015e91
7015e91 (HEAD -> oe-core-master, tag: v2.3.2, origin/master, origin/HEAD, master) Fix additional warnings when using clang
dd1daa8 tests: fix clang warnings.
15fd131 main code: fix clang warnings
59381a6 utils: ensure child can be session leader
5fe2c0a utils: Ensure pipes are read after exit
79a9c27 use process groups when spawning
b73bd54 utils: Ensure stdout/stderr are flushed

(From OE-Core rev: 9a80a352a9d0c4ea09de7bb370267672c32771f2)

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Changqing Li
f2a951f479 runqemu: fix get portlock fail for multi users
when runqemu with slirp option on same host with different
users, it will report PermissionError: [Errno 13] Permission
denied: '/tmp/qemu-port-locks/2222.lock'
and during handle this exception, another exception happened since
key not exist. Fix by check if key exist first

(From OE-Core rev: 56f30e5377ebe5cc4544f081e001934706a0d8d3)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Oleksandr Kravchuk
5cc460d177 python3-git: update to 2.1.13
(From OE-Core rev: 4669839edbac8e1d3a8267d32ebf259a44938ec7)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Bruce Ashfield
375c1ecb6a linux-yocto-dev: bump to 5.3-rcX
(From OE-Core rev: 2214c58839daf393e1c78e8e39c4f059ddbc2a08)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Bruce Ashfield
d8285c5714 linux-yocto/4.19: update to v4.19.61
Integrating the korg -stable commits that comprise the following
changes:

   7250956f6eaf Linux 4.19.61
   025eb12bb4b0 dm bufio: fix deadlock with loop device
   404f59e265ac dt-bindings: allow up to four clocks for orion-mdio
   03e6a668ea1f net: mvmdio: allow up to four clocks to be specified for orion-mdio
   dd87cc633ba5 blkcg: update blkcg_print_stat() to handle larger outputs
   73efdc5d7d3b blk-iolatency: clear use_delay when io.latency is set to zero
   1ab644bd02ab blk-throttle: fix zero wait time for iops throttled group
   91da712ff592 usb: Handle USB3 remote wakeup for LPM enabled devices correctly
   152ddf9f0458 Bluetooth: Add SMP workaround Microsoft Surface Precision Mouse bug
   98318cd31b95 intel_th: msu: Fix single mode with disabled IOMMU
   d6328d7c1a71 mtd: spinand: read returns badly if the last page has bitflips
   94f1db42a968 mtd: rawnand: mtk: Correct low level time calculation of r/w cycle
   30c6b34759f6 eCryptfs: fix a couple type promotion bugs
   92e23f5fc049 mmc: sdhci-msm: fix mutex while in spinlock
   01982f7bcc9d powerpc/pseries: Fix oops in hotplug memory notifier
   e725502b8548 powerpc/powernv/npu: Fix reference leak
   1e3b61cbc30d powerpc/watchpoint: Restore NV GPRs while returning from exception
   237ac0d73b55 powerpc/32s: fix suspend/resume when IBATs 4-7 are used
   7961981718d6 parisc: Fix kernel panic due invalid values in IAOQ0 or IAOQ1
   a6a0daa775e8 parisc: Ensure userspace privilege for ptraced processes in regset functions
   ef5c2e165ab0 crypto: caam - limit output IV to CBC to work around CTR mode DMA issue
   376b80276d84 gpu: ipu-v3: ipu-ic: Fix saturation bit offset in TPMEM
   ef30c0739439 xfs: abort unaligned nowait directio early
   669c867972c0 xfs: serialize unaligned dio writes against all other dio writes
   d61d885b17b0 xfs: fix reporting supported extra file attributes for statx()
   f614ef7a34b0 xfs: reserve blocks for ifree transaction during log recovery
   424543a53ae0 xfs: don't ever put nlink > 0 inodes on the unlinked list
   3a895cc066c0 xfs: rename m_inotbt_nores to m_finobt_nores
   2ab62234e823 xfs: don't overflow xattr listent buffer
   1dc8b13cc66d xfs: flush removing page cache in xfs_reflink_remap_prep
   788920d12b95 xfs: fix pagecache truncation prior to reflink
   41f64437f030 include/asm-generic/bug.h: fix "cut here" for WARN_ON for __WARN_TAINT architectures
   afa3e571cde3 coda: pass the host file in vma->vm_file on mmap
   2c0222b48e77 libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields
   656d06dab4d6 HID: wacom: correct touch resolution x/y typo
   1c871b4006b2 HID: wacom: generic: Correct pad syncing
   46f71a15abe7 HID: wacom: generic: only switch the mode on devices with LEDs
   cb4c2b94f629 IB/mlx5: Report correctly tag matching rendezvous capability
   4bd953241d81 Btrfs: add missing inode version, ctime and mtime updates when punching hole
   fffedf5cf67e Btrfs: fix fsync not persisting dentry deletions due to inode evictions
   110850fffeb0 Btrfs: fix data loss after inode eviction, renaming it, and fsync it
   6b71c62ea9da PCI: qcom: Ensure that PERST is asserted for at least 100 ms
   529e71cae929 PCI: Do not poll for PME if the device is in D3cold
   4d8504004c86 PCI: hv: Fix a use-after-free bug in hv_eject_device_work()
   f0ff76a42ef5 intel_th: pci: Add Ice Lake NNPI support
   66a13b5e4e9c drm/edid: parse CEA blocks embedded in DisplayID
   9854e06842bc perf/x86/amd/uncore: Set the thread mask for F17h L3 PMCs
   82c46f7b0918 perf/x86/amd/uncore: Do not set 'ThreadMask' and 'SliceMask' for non-L3 PMCs
   a847a5225432 perf/x86/intel: Fix spurious NMI on fixed counter
   0d4c0bb70665 x86/boot: Fix memory leak in default_get_smp_config()
   b52807e607f1 9p/virtio: Add cleanup path in p9_virtio_init
   1253882d64d0 9p/xen: Add cleanup path in p9_trans_xen_init
   007e5aaf287c xen/events: fix binding user event channels to cpus
   e380170b3b3a dm zoned: fix zone state management race
   1e4247d7958b padata: use smp_mb in padata_reorder to avoid orphaned padata jobs
   0489d808a5f2 drm/nouveau/i2c: Enable i2c pads & busses during preinit
   c77cbc873586 kconfig: fix missing choice values in auto.conf
   2c7b50c7b1d0 fs/proc/proc_sysctl.c: fix the default values of i_uid/i_gid on /proc/sys inodes.
   ba271659ad42 arm64: tegra: Fix AGIC register range
   ba27a25df6df KVM: x86/vPMU: refine kvm_pmu err msg when event creation failed
   87bae91a0fe9 media: videobuf2-dma-sg: Prevent size from overflowing
   cb2e2b0ae554 media: videobuf2-core: Prevent size alignment wrapping buffer size to 0
   deb78bd24e0c media: coda: Remove unbalanced and unneeded mutex unlock
   fc0232e24541 media: v4l2: Test type instead of cfg->type in v4l2_ctrl_new_custom()
   a4c4c06f1755 ALSA: hda/realtek: apply ALC891 headset fixup to one Dell machine
   8ba78e4d564e ALSA: hda/realtek - Fixed Headphone Mic can't record on Dell platform
   c92212a81617 ALSA: seq: Break too long mutex context in the write loop
   eb6c84e4b4f2 raid5-cache: Need to do start() part job after adding journal device
   3f42c0000b23 ASoC: dapm: Adapt for debugfs API change
   677b2aa3be5c lib/scatterlist: Fix mapping iterator when sg->offset is greater than PAGE_SIZE
   0b174bac4e43 pnfs: Fix a problem where we gratuitously start doing I/O through the MDS
   f64ff5914f00 pNFS: Fix a typo in pnfs_update_layout
   603e7497bf27 pnfs/flexfiles: Fix PTR_ERR() dereferences in ff_layout_track_ds_error
   5347e61954fc NFSv4: Handle the special Linux file open access mode
   6825ff011c7c iwlwifi: fix RF-Kill interrupt while FW load for gen2 devices
   a32e2ceca0ef iwlwifi: don't WARN when calling iwl_get_shared_mem_conf with RF-Kill
   d9ce0788da91 iwlwifi: pcie: fix ALIVE interrupt handling for gen2 devices w/o MSI-X
   04c52c105a38 iwlwifi: pcie: don't service an interrupt that was masked
   7ebddd5fe217 arm64: tegra: Update Jetson TX1 GPU regulator timings
   042451b921b1 regulator: s2mps11: Fix buck7 and buck8 wrong voltages
   8da63aa46e26 Input: alps - fix a mismatch between a condition check and its comment
   81368a9a98d9 Input: synaptics - whitelist Lenovo T580 SMBus intertouch
   cfb9250619c8 Input: alps - don't handle ALPS cs19 trackpoint-only device
   d657077eda7b Input: gtco - bounds check collection indent level
   f11ba9df8eed bcache: destroy dc->writeback_write_wq if failed to create dc->writeback_thread
   2ab14861d2eb bcache: fix mistaken sysfs entry for io_error counter
   3c466df8fc59 bcache: ignore read-ahead request failure on backing device
   4fc48cd21a31 bcache: Revert "bcache: free heap cache_set->flush_btree in bch_journal_free"
   ab966241d59a bcache: Revert "bcache: fix high CPU occupancy during journal"
   58169c189bd6 Revert "bcache: set CACHE_SET_IO_DISABLE in bch_cached_dev_error()"
   c3b7d27f3746 crypto: crypto4xx - fix a potential double free in ppc4xx_trng_probe
   a9fd1795fee6 crypto: ccp/gcm - use const time tag comparison.
   561c4424f1e3 crypto: ccp - memset structure fields to zero before reuse
   13805a5df489 crypto: crypto4xx - block ciphers should only accept complete blocks
   17e63172d536 crypto: crypto4xx - fix blocksize for cfb and ofb
   4598094d24c7 crypto: crypto4xx - fix AES CTR blocksize value
   1c9b0a766513 crypto: chacha20poly1305 - fix atomic sleep when using async algorithm
   eb99c084da28 crypto: arm64/sha2-ce - correct digest for empty data in finup
   4230e09e61e6 crypto: arm64/sha1-ce - correct digest for empty data in finup
   52f07c1ac70e crypto: ccp - Validate the the error value used to index error messages
   bed97f646997 crypto: ghash - fix unaligned memory access in ghash_setkey()
   ce7ec07abaf7 scsi: mac_scsi: Fix pseudo DMA implementation, take 2
   de769c762626 scsi: mac_scsi: Increase PIO/PDMA transfer length threshold
   3e9534fa5046 scsi: megaraid_sas: Fix calculation of target ID
   1334a3e2d6d0 scsi: core: Fix race on creating sense cache
   58f59f6072ab Revert "scsi: ncr5380: Increase register polling limit"
   7cfded7a705c scsi: NCR5380: Always re-enable reselection interrupt
   d91baba81a6e scsi: NCR5380: Reduce goto statements in NCR5380_select()
   e73db096691e xen: let alloc_xenballooned_pages() fail if not enough memory free
   ff54c44f1038 floppy: fix out-of-bounds read in copy_buffer
   a9444d9d0f6f floppy: fix invalid pointer dereference in drive_name
   5b565f3276f3 floppy: fix out-of-bounds read in next_valid_format
   6e34fd07484a floppy: fix div-by-zero in setup_format_params
   7c16c5eae41a iavf: fix dereference of null rx_buffer pointer
   e9896b29d010 net: mvmdio: defer probe of orion-mdio if a clock is not ready
   5f6c5f5ae25e gtp: fix use-after-free in gtp_newlink()
   141222216438 gtp: fix use-after-free in gtp_encap_destroy()
   0a5eca2c949c gtp: fix Illegal context switch in RCU read-side critical section.
   e117a04133c6 gtp: fix suspicious RCU usage
   202de90df2b7 Bluetooth: validate BLE connection interval updates
   ca33af18b5fc gtp: add missing gtp_encap_disable_sock() in gtp_encap_enable()
   0fdb922d0ef0 Bluetooth: Check state in l2cap_disconnect_rsp
   3b57b7a3a82a perf tests: Fix record+probe_libc_inet_pton.sh for powerpc64
   c814f618b799 Bluetooth: 6lowpan: search for destination address in all peers
   c82c4910e9e6 Bluetooth: Add new 13d3:3501 QCA_ROME device
   1cbce19bd697 Bluetooth: Add new 13d3:3491 QCA_ROME device
   578658df21d5 Bluetooth: hci_bcsp: Fix memory leak in rx_skb
   9d47bd217539 tools: bpftool: Fix json dump crash on powerpc
   2ad04d31bb3e gpiolib: Fix references to gpiod_[gs]et_*value_cansleep() variants
   157d1c7a1a00 bonding: validate ip header before check IPPROTO_IGMP
   88f751b066f2 selftests: bpf: fix inlines in test_lwt_seg6local
   ef5b204336b3 bpf, libbpf, smatch: Fix potential NULL pointer dereference
   0f2f2cebe64d rxrpc: Fix oops in tracepoint
   ca37b9a74689 net: usb: asix: init MAC address buffers
   51216937c319 bnx2x: Prevent ptp_task to be rescheduled indefinitely
   e358d2ab42f8 perf stat: Fix group lookup for metric group
   a64e018be77a perf stat: Make metric event lookup more robust
   7343178ccf7d bpf: fix uapi bpf_prog_info fields alignment
   af3790a46a55 iwlwifi: mvm: Drop large non sta frames
   036184af23e0 igb: clear out skb->tstamp after reading the txtime
   0024b12b776c net: mvpp2: prs: Don't override the sign bit in SRAM parser shift
   05592b9b7f25 ath10k: destroy sdio workqueue while remove sdio module
   26d86b29e806 net: hns3: add some error checking in hclge_tm module
   ddfdbcccd71a net: hns3: fix a -Wformat-nonliteral compile warning
   95d084809495 bcache: fix potential deadlock in cached_def_free()
   4b7758e9c4ed bcache: check c->gc_thread by IS_ERR_OR_NULL in cache_set_flush()
   81b88c05bc45 bcache: acquire bch_register_lock later in cached_dev_free()
   d81080a0bcf8 bcache: check CACHE_SET_IO_DISABLE bit in bch_journal()
   57cfb755c356 bcache: check CACHE_SET_IO_DISABLE in allocator code
   e78d1d234469 EDAC: Fix global-out-of-bounds write when setting edac_mc_poll_msec
   e54cc89e6f0a wil6210: drop old event after wmi_call timeout
   0388597d0627 crypto: asymmetric_keys - select CRYPTO_HASH where needed
   1dea395c9e12 crypto: serpent - mark __serpent_setkey_sbox noinline
   b346070c72cd ixgbe: Check DDM existence in transceiver before access
   0340c621eca8 rslib: Fix handling of of caller provided syndrome
   8ba93c59441a rslib: Fix decoding of shortened codes
   dad0b17e4a4e xsk: Properly terminate assignment in xskq_produce_flush_desc
   e69fac59c493 clocksource/drivers/exynos_mct: Increase priority over ARM arch timer
   12e20eca894b libata: don't request sense data on !ZAC ATA devices
   6e6bc34f8570 ASoC: Intel: hdac_hdmi: Set ops to NULL on remove
   1182ff224847 perf tools: Increase MAX_NR_CPUS and MAX_CACHES
   7201cc227d4a ath10k: fix PCIE device wake up failed
   8a808fadc9f7 ath10k: add missing error handling
   fe2ceeb4cffc ipvs: fix tinfo memory leak in start_sync_thread
   20de38d282b3 mt7601u: fix possible memory leak when the device is disconnected
   033577880135 x86/build: Add 'set -e' to mkcapflags.sh to delete broken capflags.c
   3f7952b275c8 mt7601u: do not schedule rx_tasklet when the device has been disconnected
   6f6e126e1995 rtlwifi: rtl8192cu: fix error handle when usb probe failed
   41864adfee2e net: stmmac: sun8i: force select external PHY when no internal one
   bce037abc29f media: hdpvr: fix locking and a missing msleep
   43b9fdc48377 media: vimc: cap: check v4l2_fill_pixfmt return value
   d562537dbf0d media: coda: increment sequence offset for the last returned frame
   3697c12c4425 media: coda: fix last buffer handling in V4L2_ENC_CMD_STOP
   6fd3e9f65db9 media: coda: fix mpeg2 sequence number handling
   c647c00f28af acpi/arm64: ignore 5.1 FADTs that are reported as 5.0
   b9f547b7bdd9 timer_list: Guard procfs specific code
   d86c0b73f75b ntp: Limit TAI-UTC offset
   8d8f0b9009d0 media: i2c: fix warning same module names
   6439110fbeee media: s5p-mfc: Make additional clocks optional
   57de3c78f0b7 ipvs: defer hook registration to avoid leaks
   06a3cd416224 ipsec: select crypto ciphers for xfrm_algo
   723ba7938492 arm64: Do not enable IRQs for ct_user_exit
   010bfbc93424 lightnvm: pblk: fix freeing of merged pages
   762bba1b7ee7 nvme-pci: set the errno on ctrl state change error
   c876a66553d7 nvme-pci: properly report state change failure in nvme_reset_work
   f0c83dd15ee1 nvme: fix possible io failures when removing multipathed ns
   10cc3a65a55b EDAC/sysfs: Fix memory leak when creating a csrow object
   f6502ce4f050 ACPICA: Clear status of GPEs on first direct enable
   3ae98dc2db1e blk-iolatency: only account submitted bios
   a952f7c384aa x86/cacheinfo: Fix a -Wtype-limits warning
   3252b29ea41b ipoib: correcly show a VF hardware address
   0e2af9b06c00 vhost_net: disable zerocopy by default
   4c57957ed6c8 perf evsel: Make perf_evsel__name() accept a NULL argument
   9e0bcb59b6c0 x86/atomic: Fix smp_mb__{before,after}_atomic()
   dd0260fd1e3a perf/x86/intel/uncore: Handle invalid event coding for free-running counter
   7fc96cd2b0de sched/fair: Fix "runnable_avg_yN_inv" not used warnings
   d8b7db6c5004 sched/core: Add __sched tag for io_schedule()
   930655b01367 xfrm: fix sa selector validation
   b7d66bbc8ad3 blkcg, writeback: dead memcgs shouldn't contribute to writeback ownership arbitration
   c8f75e753784 block: null_blk: fix race condition for null_del_dev
   1a3706d8f800 net: hns3: fix for skb leak when doing selftest
   6a47a42f51cf qed: iWARP - Fix tc for MPA ll2 connection
   670fb965da03 x86/cpufeatures: Add FDP_EXCPTN_ONLY and ZERO_FCS_FDS
   366ae49ed78c rcu: Force inlining of rcu_read_lock()
   1fb3ce14f28d ASoC: meson: axg-tdm: fix sample clock inversion
   32df4043aed4 x86/cpu: Add Ice Lake NNPI to Intel family
   914026d58100 selinux: fix empty write to keycreate file
   10e3788e6575 media: s5p-mfc: fix reading min scratch buffer size on MFC v6/v7
   7c10f8941b95 bpf: silence warning messages in core
   b01bf44c363d regmap: fix bulk writes on paged registers
   544cd592ca72 gpio: omap: ensure irq is enabled before wakeup
   ddeef7a00050 gpio: omap: fix lack of irqstatus_raw0 for OMAP4
   79644b600850 iommu: Fix a leak in iommu_insert_resv_region
   f2a4624be8f3 media: fdp1: Support M3N and E3 platforms
   63e53991d791 media: uvcvideo: Fix access to uninitialized fields on probe error
   c844f4da9b92 irqchip/meson-gpio: Add support for Meson-G12A SoC
   eac8b39d089a perf report: Fix OOM error in TUI mode on s390
   be32a9dc3f62 perf test 6: Fix missing kvm module load for s390
   3662d8bca087 perf cs-etm: Properly set the value of 'old' and 'head' in snapshot mode
   ac510285d40b ipset: Fix memory accounting for hash types on resize
   c7bf2df45044 net: sfp: add mutex to prevent concurrent state checks
   fa4059c5497e RAS/CEC: Fix pfn insertion
   99dcd701465f s390/qdio: handle PENDING state for QEBSM devices
   a76f32cbd38c net: axienet: Fix race condition causing TX hang
   9d643358386d net: fec: Do not use netdev messages too early
   403c43921479 crypto: inside-secure - do not rely on the hardware last bit for result descriptors
   50331c64f3dd net: stmmac: modify default value of tx-frames
   1a0a837afc41 net: stmmac: dwmac4: fix flow control issue
   713737cac327 perf jvmti: Address gcc string overflow warning for strncpy()
   fb83987cbe6b arm64: mm: make CONFIG_ZONE_DMA32 configurable
   c360eb592938 cpupower : frequency-set -r option misses the last cpu in related cpu list
   cac3032062e5 net: hns3: set ops to null when unregister ad_dev
   35407917b0bc media: wl128x: Fix some error handling in fm_v4l2_init_video_device()
   2fbde2746597 locking/lockdep: Fix merging of hlocks with non-zero references
   909034b8ac64 batman-adv: Fix duplicated OGMs on NETDEV_UP
   aa2ad8b6fb2f tua6100: Avoid build warnings.
   9072450736d0 crypto: talitos - Align SEC1 accesses to 32 bits boundaries.
   9d25aedef08f crypto: talitos - properly handle split ICV.
   fc25cfb03ea2 net: phy: Check against net_device being NULL
   ef10d46d04a5 media: staging: media: davinci_vpfe: - Fix for memory leak if decoder initialization fails.
   e36f25627362 media: saa7164: fix remove_proc_entry warning
   ea904c9f6a33 media: mc-device.c: don't memset __user pointer contents
   a6dd4862b98f perf annotate TUI browser: Do not use member from variable within its own initialization
   71b029a5d908 fscrypt: clean up some BUG_ON()s in block encryption/decryption
   2c6acf7478aa xfrm: Fix xfrm sel prefix length validation
   0544b64ceb64 af_key: fix leaks in key_pol_get_resp and dump_sp.
   b397462a010d signal/pid_namespace: Fix reboot_pid_ns to use send_sig not force_sig
   1c8e736115cd qed: Set the doorbell address correctly
   df6680de7a20 net: stmmac: dwmac4/5: Clear unused address entries
   d3969670cb5a net: stmmac: dwmac1000: Clear unused address entries
   810441651a8a media: media_device_enum_links32: clean a reserved field
   6fb470ace862 media: vpss: fix a potential NULL pointer dereference
   70da38e80509 media: marvell-ccic: fix DMA s/g desc number calculation
   add712b63185 media: ov7740: avoid invalid framesize setting
   b0e199e13495 crypto: talitos - fix skcipher failure due to wrong output IV
   6452712f95e3 media: spi: IR LED: add missing of table registration
   94f2b518a788 media: dvb: usb: fix use after free in dvb_usb_device_exit
   8f855c09e2af batman-adv: fix for leaked TVLV handler.
   83d133c96aad regmap: debugfs: Fix memory leak in regmap_debugfs_init
   2b5b12c0c1b7 ath: DFS JP domain W56 fixed pulse type 3 RADAR detection
   da153c0c5746 wil6210: fix spurious interrupts in 3-msi
   a4bf4fecff16 ath10k: add peer id check in ath10k_peer_find_by_id
   83c911f4bd68 ath6kl: add some bounds checking
   42dcbf20e182 ath9k: Check for errors when reading SREV register
   7e19e658e535 ath10k: Do not send probe response template for mesh
   009edc622bba wil6210: fix potential out-of-bounds read
   09593c25b975 dmaengine: imx-sdma: fix use-after-free on probe error path
   06e15cf5aead scsi: iscsi: set auth_protocol back to NULL if CHAP_A value is not supported
   37cb02da44dc arm64/efi: Mark __efistub_stext_offset as an absolute symbol explicitly
   73ebefc814ef MIPS: fix build on non-linux hosts
   7202df6be6ec MIPS: ath79: fix ar933x uart parity mode
   be9b6782a9eb Linux 4.19.60
   d173ce091c1a x86/entry/32: Fix ENDPROC of common_spurious
   466bdfc6c4d6 drm/udl: move to embedding drm device inside udl device.
   af48f7d79fae drm/udl: Replace drm_dev_unref with drm_dev_put
   cfd99eccede5 drm/udl: introduce a macro to convert dev to udl.
   8f14cf159e9f regmap-irq: do not write mask register if mask_base is zero
   820b010743ee crypto/NX: Set receive window credits to max number of CRBs in RxFIFO
   b24c6403633d crypto: talitos - fix hash on SEC1.
   ff1ce8ef1f88 crypto: talitos - move struct talitos_edesc into talitos.h
   b578b87bcab6 s390/qdio: don't touch the dsci in tiqdio_add_input_queues()
   b1d52630b12a s390/qdio: (re-)initialize tiqdio list entries
   02eb533e940a s390: fix stfle zero padding
   9db915738e40 ARC: hide unused function unw_hdr_alloc
   fc6975ee932b x86/irq: Seperate unused system vectors from spurious entry again
   9494cd392885 x86/irq: Handle spurious interrupt after shutdown gracefully
   7897f5a443fb x86/ioapic: Implement irq_get_irqchip_state() callback
   6074f6043c49 genirq: Add optional hardware synchronization for shutdown
   3f10ccc29780 genirq: Fix misleading synchronize_irq() documentation
   578db1aa595b genirq: Delay deactivation in free_irq()
   2656ee5a5ad5 linux/kernel.h: fix overflow for DIV_ROUND_UP_ULL
   9c875e8556d4 pinctrl: mediatek: Update cur_mask in mask/mask ops
   f6e01328cb0e cpu/hotplug: Fix out-of-bounds read when setting fail state
   fa99487a43cf pinctrl: mediatek: Ignore interrupts that are wake only during resume
   cd2646e57ec5 HID: multitouch: Add pointstick support for ALPS Touchpad
   9ea3b131441e HID: chicony: add another quirk for PixArt mouse
   94968c37b6d3 x86/boot/64: Add missing fixup_pointer() for next_early_pgt access
   729d25f43b64 x86/boot/64: Fix crash if kernel image crosses page table boundary
   136847140cc8 dm verity: use message limit for data block corruption message
   042be78692ae dm table: don't copy from a NULL pointer in realloc_argv()
   0fc080bc9a72 pinctrl: mcp23s08: Fix add_data and irqchip_add_nested call order
   00640eb0eafa ARM: dts: imx6ul: fix PWM[1-4] interrupts
   a8cc2a2c2841 sis900: fix TX completion
   3232bccddeba ppp: mppe: Add softdep to arc4
   5ec7753c7c9e be2net: fix link failure after ethtool offline test
   2a6ee36917f0 x86/apic: Fix integer overflow on 10 bit left shift of cpu_khz
   fdfff855cd36 afs: Fix uninitialised spinlock afs_volume::cb_break_lock
   d47f06ab0c0e ARM: omap2: remove incorrect __init annotation
   5d3c45538151 ARM: dts: gemini Fix up DNS-313 compatible string
   afda29dc5ac6 perf/core: Fix perf_sample_regs_user() mm check
   627fdcc9b718 efi/bgrt: Drop BGRT status field reserved bits check
   cf4deb2d4de6 clk: ti: clkctrl: Fix returning uninitialized data
   ff232a47567f irqchip/gic-v3-its: Fix command queue pointer comparison bug
   244db54441a1 firmware: improve LSM/IMA security behaviour
   079d7f16a973 drivers: base: cacheinfo: Ensure cpu hotplug work is done before Intel RDT
   68048dce650e nilfs2: do not use unexported cpu_to_le32()/le32_to_cpu() in uapi header
   86859ef10d25 Input: synaptics - enable SMBUS on T480 thinkpad trackpad
   438a3dc6f2c3 e1000e: start network tx queue only when link is up
   8020568b404b Revert "e1000e: fix cyclic resets at link up with active tx"
   3bd837bfe431 Linux 4.19.59
   70bae382b3dc staging: rtl8712: reduce stack usage, again
   b46475ecd930 staging: bcm2835-camera: Handle empty EOS buffers whilst streaming
   0ee144effcc3 staging: bcm2835-camera: Remove check of the number of buffers supplied
   fcbc6ddcd624 staging: bcm2835-camera: Ensure all buffers are returned on disable
   4502c43d7f3b staging: bcm2835-camera: Replace spinlock protecting context_map with mutex
   22a20b9f6d9f staging: fsl-dpaa2/ethsw: fix memory leak of switchdev_work
   cc396afa1959 MIPS: Remove superfluous check for __linux__
   d202b5adccfb VMCI: Fix integer overflow in VMCI handle arrays
   486c32325caa carl9170: fix misuse of device driver API
   524ad00e80b7 binder: fix memory leak in error path
   294b893a41cd lkdtm: support llvm-objcopy
   5c90a2ecd08a HID: Add another Primax PIXART OEM mouse quirk
   c04c751bef87 staging: comedi: amplc_pci230: fix null pointer deref on interrupt
   4e49c6c91c18 staging: comedi: dt282x: fix a null pointer deref on interrupt
   8419fd562a09 drivers/usb/typec/tps6598x.c: fix 4CC cmd write
   63b3028cd590 drivers/usb/typec/tps6598x.c: fix portinfo width
   57e16e0d8c68 usb: renesas_usbhs: add a workaround for a race condition of workqueue
   aa9a8038ea8b usb: dwc2: use a longer AHB idle timeout in dwc2_core_reset()
   cac4a04202fb usb: gadget: ether: Fix race between gether_disconnect and rx_submit
   449a8d08a4bc p54usb: Fix race between disconnect and firmware loading
   135d9ba3b285 Revert "serial: 8250: Don't service RX FIFO if interrupts are disabled"
   0891268f36a2 USB: serial: option: add support for GosunCn ME3630 RNDIS mode
   0a1c811bf033 USB: serial: ftdi_sio: add ID for isodebug v1
   bb902b6c87ff mwifiex: Don't abort on small, spec-compliant vendor IEs
   ffbbd626e1ce mwifiex: Abort at too short BSS descriptor element
   a2a24b57c27a Documentation/admin: Remove the vsyscall=native documentation
   8a815007f5fe Documentation: Add section about CPU vulnerabilities for Spectre
   bd9604022eb3 x86/tls: Fix possible spectre-v1 in do_get_thread_area()
   68ff28291a4f x86/ptrace: Fix possible spectre-v1 in ptrace_get_debugreg()
   d8e26651ce8d perf pmu: Fix uncore PMU alias list for ARM64
   018524b75852 block, bfq: NULL out the bic when it's no longer valid
   ff75e5f41e88 ALSA: hda/realtek - Headphone Mic can't record after S3
   87c3262b00d8 ALSA: usb-audio: Fix parse of UAC2 Extension Units
   ef374f5a2731 media: stv0297: fix frequency range limit
   5db079eb0acd udf: Fix incorrect final NOT_ALLOCATED (hole) extent length
   0fc3e9b9b603 fscrypt: don't set policy for a dead directory
   e9f76b954336 net :sunrpc :clnt :Fix xps refcount imbalance on the error path
   810cfc3d9d2e NFS4: Only set creation opendata if O_CREAT
   7075654ce7d0 net: dsa: mv88e6xxx: fix shift of FID bits in mv88e6185_g1_vtu_loadpurge()
   606561e16186 quota: fix a problem about transfer quota
   5ad566af08c1 scsi: qedi: Check targetname while finding boot target information
   37232abb6ea3 net: lio_core: fix potential sign-extension overflow on large shift
   740b2ac49518 ip6_tunnel: allow not to count pkts on tstats by passing dev as NULL
   a02ac12d2d48 drm: return -EFAULT if copy_to_user() fails
   4c938a635fc3 bnx2x: Check if transceiver implements DDM before access
   270ae00a0346 md: fix for divide error in status_resync
   5533d9ed4112 mmc: core: complete HS400 before checking status
   2da80536f629 qmi_wwan: extend permitted QMAP mux_id value range
   dc84e98393f7 qmi_wwan: avoid RCU stalls on device disconnect when in QMAP mode
   dbc6a83cf2bc qmi_wwan: add support for QMAP padding in the RX path
   292ba5b1faf4 bpf, x64: fix stack layout of JITed bpf code
   4c2ce7addda8 bpf, devmap: Add missing RCU read lock on flush
   ab44f8bcf2e5 bpf, devmap: Add missing bulk queue free
   8d09e862103b bpf, devmap: Fix premature entry free on destroying map
   ba0afe520ee9 mac80211: do not start any work during reconfigure flow
   de8cf2c0bc64 mac80211: only warn once on chanctx_conf being NULL
   9c2dd6d47131 ARM: davinci: da8xx: specify dma_coherent_mask for lcdc
   3bbcc8b9ad37 ARM: davinci: da850-evm: call regulator_has_full_constraints()
   443250665388 mlxsw: spectrum: Disallow prio-tagged packets when PVID is removed
   512bbb114b99 KVM: arm/arm64: vgic: Fix kvm_device leak in vgic_its_destroy
   41420ac584d7 Input: imx_keypad - make sure keyboard can always wake up system
   b71f312e9bf7 riscv: Fix udelay in RV32.
   122c6a71c08d drm/vmwgfx: fix a warning due to missing dma_parms
   d3861d4ca94c drm/vmwgfx: Honor the sg list segment size limitation
   c0b12abd1828 s390/boot: disable address-of-packed-member warning
   e71daed5176f ARM: dts: am335x phytec boards: Fix cd-gpios active level
   822c2ee81c63 ibmvnic: Fix unchecked return codes of memory allocations
   0f06004d16be ibmvnic: Refresh device multicast list after reset
   e65dd528bb8e ibmvnic: Do not close unopened driver during reset
   374180b11b29 net: phy: rename Asix Electronics PHY driver
   473a75c7fab5 can: af_can: Fix error path of can_init()
   486954277fc1 can: m_can: implement errata "Needless activation of MRAF irq"
   270149f78b9c can: mcp251x: add support for mcp25625
   33672c74b484 dt-bindings: can: mcp251x: add mcp25625 support
   07c96e8e8021 soundwire: intel: set dai min and max channels correctly
   c7e427e28a3a mwifiex: Fix heap overflow in mwifiex_uap_parse_tail_ies()
   8e115a079940 iwlwifi: Fix double-free problems in iwl_req_fw_callback()
   d4c0f752c1d2 mwifiex: Fix possible buffer overflows at parsing bss descriptor
   b8588a0981b7 mac80211: free peer keys before vif down in mesh
   acc42e5c2322 mac80211: mesh: fix RCU warning
   e3868c1a462f staging:iio:ad7150: fix threshold mode config bit
   6b1ce3971e05 soundwire: stream: fix out of boundary access on port properties
   6be857082611 bpf: sockmap, fix use after free from sleep in psock backlog workqueue
   bc84982f977d mac80211: fix rate reporting inside cfg80211_calculate_bitrate_he()
   3c24a931e972 samples, bpf: suppress compiler warning
   e7779115bbd9 samples, bpf: fix to change the buffer size for read()
   fe01e93c3fd1 Input: elantech - enable middle button support on 2 ThinkPads
   2883fc1ece69 soc: bcm: brcmstb: biuctrl: Register writes require a barrier
   2f1c962a7416 soc: brcmstb: Fix error path for unsupported CPUs
   e8250f730410 crypto: talitos - rename alternative AEAD algos.
   7a6bfa08b938 Linux 4.19.58
   f37de75cb8eb dmaengine: imx-sdma: remove BD_INTR for channel0
   018c968de710 dmaengine: qcom: bam_dma: Fix completed descriptors count
   870de1499505 MIPS: have "plain" make calls build dtbs for selected platforms
   8957895b35de MIPS: Add missing EHB in mtc0 -> mfc0 sequence.
   2b8f8a80ca8b MIPS: Fix bounds check virt_addr_valid
   80b25628ff26 svcrdma: Ignore source port when computing DRC hash
   8129a10ce78f nfsd: Fix overflow causing non-working mounts on 1 TB machines
   f25c06955f8d KVM: LAPIC: Fix pending interrupt in IRR blocked by software disable LAPIC
   f6472f50fbfc KVM: x86: degrade WARN to pr_warn_ratelimited
   ac0024baf073 netfilter: ipv6: nf_defrag: accept duplicate fragments again
   54e8cf41b20b bpf: fix bpf_jit_limit knob for PAGE_SIZE >= 64K
   e6c288f7307e net: hns: fix unsigned comparison to less than zero
   4f24801ef50b sc16is7xx: move label 'err_spi' to correct section
   318244f3641a netfilter: ipv6: nf_defrag: fix leakage of unqueued fragments
   a8891c5e2251 ip6: fix skb leak in ip6frag_expire_frag_queue()
   382bc84da904 rds: Fix warning.
   7e6af1fa80b8 ALSA: hda: Initialize power_state field properly
   c8c88293bf72 net: hns: Fixes the missing put_device in positive leg for roce reset
   6bf9677300f3 x86/boot/compressed/64: Do not corrupt EDX on EFER.LME=1 setting
   b91ec6ae14da selftests: fib_rule_tests: Fix icmp proto with ipv6
   e2851c3ee0be scsi: tcmu: fix use after free
   04096b3beace mac80211: mesh: fix missing unlock on error in table_path_del()
   e2379b044d67 f2fs: don't access node/meta inode mapping after iput
   e9fde78c3a4f drm/fb-helper: generic: Don't take module ref for fbcon
   7821bcce20aa media: s5p-mfc: fix incorrect bus assignment in virtual child device
   3ddc2a100706 net/smc: move unhash before release of clcsock
   cd54dc4cd37d mlxsw: spectrum: Handle VLAN device unlinking
   a8a296abee36 tty: rocket: fix incorrect forward declaration of 'rp_init()'
   fb814f215013 btrfs: Ensure replaced device doesn't have pending chunk allocation
   27ce6c2675f6 mm/vmscan.c: prevent useless kswapd loops
   c854d9b6ef8d ftrace/x86: Remove possible deadlock between register_kprobe() and ftrace_run_update_code()
   2e716c3b562d drm/imx: only send event on crtc disable if kept disabled
   8ec242fd431b drm/imx: notify drm core before sending event during crtc disable
   d2d061351d64 drm/etnaviv: add missing failure path to destroy suballoc
   ec5d99e18d30 drm/amdgpu/gfx9: use reset default for PA_SC_FIFO_SIZE
   ec6d8c9e6687 drm/amd/powerplay: use hardware fan control if no powerplay fan table
   b6d56f4f6a49 arm64: kaslr: keep modules inside module region when KASAN is enabled
   7cab3dfa6d74 ARM: dts: armada-xp-98dx3236: Switch to armada-38x-uart serial node
   c8790d7f76be tracing/snapshot: Resize spare buffer if size changed
   052b31810085 fs/userfaultfd.c: disable irqs for fault_pending and event locks
   ea38007107d6 lib/mpi: Fix karactx leak in mpi_powm
   7df1e2f59bde ALSA: hda/realtek - Change front mic location for Lenovo M710q
   899377c50e60 ALSA: hda/realtek: Add quirks for several Clevo notebook barebones
   d9b6936b134e ALSA: usb-audio: fix sign unintended sign extension on left shifts
   7f52af5e9baa ALSA: line6: Fix write on zero-sized buffer
   3663bf2baa97 ALSA: firewire-lib/fireworks: fix miss detection of received MIDI messages
   9d2ac58c1ef9 ALSA: seq: fix incorrect order of dest_client/dest_ports arguments
   ae3fa28f0938 crypto: cryptd - Fix skcipher instance memory leak
   015c20532ace crypto: user - prevent operating on larval algorithms
   54435b7fff7b ptrace: Fix ->ptracer_cred handling for PTRACE_TRACEME
   600d3712ae12 drm/i915/dmc: protect against reading random memory
   2b39351e3844 ftrace: Fix NULL pointer dereference in free_ftrace_func_mapper()
   938044171949 module: Fix livepatch/ftrace module text permissions race
   220adcc0e0ca tracing: avoid build warning with HAVE_NOP_MCOUNT
   79fccb9815db mm/mlock.c: change count_mm_mlocked_page_nr return type
   4fce0a79e985 scripts/decode_stacktrace.sh: prefix addr2line with $CROSS_COMPILE
   b7747ecb82be cpuset: restore sanity to cpuset_cpus_allowed_fallback()
   e33aeb9a7c0a i2c: pca-platform: Fix GPIO lookup code
   7cf431edfb71 platform/mellanox: mlxreg-hotplug: Add devm_free_irq call to remove flow
   c241f3fbfa1a platform/x86: mlx-platform: Fix parent device in i2c-mux-reg device registration
   f853112772b0 platform/x86: intel-vbtn: Report switch events when event wakes device
   2ac96173bee0 platform/x86: asus-wmi: Only Tell EC the OS will handle display hotkeys from asus_nb_wmi
   027e043f9c78 drm: panel-orientation-quirks: Add quirk for GPD MicroPC
   2446563dd6d7 drm: panel-orientation-quirks: Add quirk for GPD pocket2
   8be5629b9622 scsi: hpsa: correct ioaccel2 chaining
   c1bef204c70a SoC: rt274: Fix internal jack assignment in set_jack callback
   1023af0c069d ALSA: hdac: fix memory release for SST and SOF drivers
   26a6acde2a42 usb: gadget: udc: lpc32xx: allocate descriptor with GFP_ATOMIC
   9be058f5dd70 usb: gadget: fusb300_udc: Fix memory leak of fusb300->ep[i]
   5284327f4e17 x86/CPU: Add more Icelake model numbers
   74929087384f ASoC: sun4i-i2s: Add offset to RX channel select
   32475634e8a8 ASoC: sun4i-i2s: Fix sun8i tx channel offset mask
   7b7486398a32 ASoC: max98090: remove 24-bit format support if RJ is 0
   3b60f98ef496 drm/mediatek: call mtk_dsi_stop() after mtk_drm_crtc_atomic_disable()
   34e5e1c4874f drm/mediatek: clear num_pipes when unbind driver
   a8a86e9a5533 drm/mediatek: call drm_atomic_helper_shutdown() when unbinding driver
   79e095d234bb drm/mediatek: unbind components in mtk_drm_unbind()
   319f4699bcaa drm/mediatek: fix unbind functions
   dbd94f4938c6 spi: bitbang: Fix NULL pointer dereference in spi_unregister_master
   3f8d3c9506a5 ASoC: ak4458: rstn_control - return a non-zero on error only
   3c3dd68c48e8 ASoC: soc-pcm: BE dai needs prepare when pause release after resume
   4c31b4b4ba65 ASoC: ak4458: add return value for ak4458_probe
   0c19bcdb0db9 ASoC : cs4265 : readable register too low
   c549680ed59b netfilter: nft_flow_offload: IPCB is only valid for ipv4 family
   041c181e6ba0 netfilter: nft_flow_offload: don't offload when sequence numbers need adjustment
   48f611ecea0e netfilter: nft_flow_offload: set liberal tracking mode for tcp
   3b2734bc839d netfilter: nf_flow_table: ignore DF bit setting
   869eec894663 md/raid0: Do not bypass blocking queue entered for raid0 bios
   c9d8d3e9d7a0 block: Fix a NULL pointer dereference in generic_make_request()
   5dd6139a0aa2 Bluetooth: Fix faulty expression for minimum encryption key size check

(From OE-Core rev: 82f8f52da0bae94c8d6c972352ee93763d75311b)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Adrian Bunk
6d7e274534 webkitgtk: Stop disabling gold on aarch64 and mips
The binutils bug appears to have gone away.

Using gold on powerpc still fails for seemingly unrelated reasons.

(From OE-Core rev: 75c188dda67e69a54cf403e8c3f8093e975d2161)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Adrian Bunk
753949c81d Change ftp:// URIs to http(s)://
(From OE-Core rev: a11edd68b256fffb088cde5b7298a5749161f600)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Khem Raj
ce120d296e libedit: Move from meta-oe
libedit is needed by llvm on linux and this makes it useful
for both oe-core and clang layer among other users

Thanks to various contributors in maintaing it in meta-oe

(From OE-Core rev: cbbfac2a330ad5577a56b5d0fe74300acff287f8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Ross Burton
dc1ab6482c python3: split out the Windows distutils installer stubs
Needing the Windows distutils installer stubs is quite a niche requirement, so
put them into a separate package and just recommend it.

This can save both space and legal pain, as the installers embed an old zlib
that has known CVEs.

(From OE-Core rev: 617331a42fc5bde0c2d8d0f4dd8df652daa28778)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Ross Burton
2e060e2df7 python3: support recommends in manifest
Add support for runtime recommends along with runtime depends to the manifest.

(From OE-Core rev: 16cc9a2ca559d978c6d0e648c18c297255b69dcc)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:01 +01:00
Ross Burton
53f4ad18df python3: remove empty python3-distutils-staticdev
distutils doesn't ship any static libraries, and the files this should pick up
do not exist.  Copy/paste gone wrong maybe?

(From OE-Core rev: afbca8da4ddd6c3dd01bb44af43aee9e80cae512)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:00 +01:00
Alexander Kanavin
8118295209 meson: add a backported patch to address vala cross-compilation errors
(From OE-Core rev: c8ac42f5110c9b8e4f2c275332651df152013c0a)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:00 +01:00
Alexander Kanavin
6acb599395 meson.bbclass: do not pass native compiler/linker flags via command line
With 0.51.0 version these command line options override what is in the cross file (e.g.
the cross-flags). I could not determine what is the scenario when the native flags are
needed (this would be building a native binary in the context of cross build).
If we find such a scenario we would need to find a way to pass native flags
through some other channel.

(From OE-Core rev: 6239b77c78b4b584274019130b715f21ac9defdf)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:00 +01:00
Alexander Kanavin
0aa7a34141 meson: update 0.50.1 -> 0.51.1
Drop backports.

Rebase other patches.

(From OE-Core rev: 3251ce439ea164fcf230dcede06da1a05b5c6775)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-08-03 23:56:00 +01:00
Khem Raj
a76b6b317c Apache-2.0-with-LLVM-exception: Add new license file
As per SPDX 2.1 it should be
'Apache-2.0 WITH LLVM-exception'
but license parser refuses to parse it, so this
is closest we can get

(From OE-Core rev: fc634c41e4b3fbaf29dc0104ae6b15757e77f60a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Khem Raj
2e2ee89c74 xserver-xorg: Backport patch to remove using sys/io.h
latest glibc dropped support for sys/io.h on arm, which is fixed in
upstream xserver, as a bonus we can drop musl specific patch which was
doing something similar up until now.

Fixes
|In file included from ../../../../xorg-server-1.20.4/hw/xfree86/int10/generic.c:15:
| ../../../../xorg-server-1.20.4/hw/xfree86/common/compiler.h:767:10: fatal error: 'sys/io.h' file not found
| #include <sys/io.h>
|          ^~~~~~~~~~
| 1 error generated.

(From OE-Core rev: 1c72953b6c890b8411fec997b5c28a17eed82897)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Ross Burton
a4bb53437e fortran-helloworld: neaten recipe
Use ${FC} instead of constructing the fortran name/arguments explictly, and
clean up installation.

(From OE-Core rev: a0d85e117fb636ffa12253b19f0ab2b5055e6380)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Adrian Bunk
1ea5b2f074 mtd-utils: Upgrade to 2.1.1
Add zstd PACKAGECONFIG to disable the zstd support that upstream
enables by default, zstd is not in oe-core.

(From OE-Core rev: a87cf6a1693bbeac0f03290c1cb0ddf0ad1cf9bd)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Anuj Mittal
2c9f8a0844 libtasn1: upgrade 4.13 -> 4.14
* For changes in this version, see:
https://gitlab.com/gnutls/libtasn1/-/releases

* Remove the musl patch as it's no longer needed.

* Backport a patch to ensure LDFLAGS are not over-ridden.

License-Update: License clarification, no change in actual terms.

(From OE-Core rev: 243293436d9286f6d9a0f135d569b7b00ccc1078)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Yuan Chao
1d6d0982e6 glib-2.0:upgrade 2.60.5 -> 2.60.6
(From OE-Core rev: b5ab6ec534bfed8abd56a32296ae246fd9545e0a)

Signed-off-by: Yuan Chao <yuanc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Anuj Mittal
c34e37a56e python: CVE-2019-9947 is same as CVE-2019-9740
See:
https://bugs.python.org/issue30458

(From OE-Core rev: fa434cf1ae621f106d823c92f7e3a16172e7479f)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Anuj Mittal
a6854bc41b python: fix CVE-2018-20852
(From OE-Core rev: 04fc80b2c77a177601584500f0f3048d80095ad7)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Ross Burton
da6a602398 perl: add PACKAGECONFIG for db
perl-cross makes it easy to cleanly disable the use of Berkeley DB if desired,
so add a PACKAGECONFIG for this.

More of the dependencies (such as gdbm) can be controlled in the same way, but
Berkeley DB is a prime contender: it's a large library which we have to ship an
old release for due to licensing issues, so there are users who may want to
strip it out of builds entirely.

(From OE-Core rev: e3860098dadd0b1db97fb0414aae6abfc234b245)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Ross Burton
dd949e7545 perl: fix whitespace
There was some tabs embedded in spaces, fix those.

(From OE-Core rev: 96cf9a881405faec5fb6f3f305fd29c5f14fd52f)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Alexander Kanavin
23e9a8835e stress-ng: add a recipe that replaces the original stress
The original stress is no longer maintained and the homepage
went down. This commit replaces it with a maintained
re-implementation by Ubuntu.

Stress-ng preserves command line option compatibility
(for the options that are used in rt-tests), so adjustment
is simply changing the name of the executable. Rt-tests is the only
user of stress(-ng) in oe-core.

(From OE-Core rev: 3fcc10aeba208381166f09861d098d6459d44dfe)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Alexander Kanavin
fc0c93a62e bzip2: fix upstream version check
As it is now working, we do not need an exception from the check anymore.

(From OE-Core rev: eede1c8e35e09afd06582312ca88a6413cdccf75)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Alexander Kanavin
7e1fdbbe4d webkitgtk: upgrade 2.24.2 -> 2.24.3
(From OE-Core rev: b838ba224a57715e5409890ba3b29f825e492f19)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Alexander Kanavin
65c3253b5b createrepo-c: upgrade 0.14.2 -> 0.14.3
(From OE-Core rev: f9ef3abfdfc5df19619328117813561e408d2147)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Alexander Kanavin
27b2c8fe00 libwebp: upgrade 1.0.2 -> 1.0.3
(From OE-Core rev: 3234c4e127ad28561c41ed41853adab25b731c52)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Alexander Kanavin
b7bc14c397 libmodulemd: update to 2.6.0
(From OE-Core rev: 93e52d2d8985f7bba6a03a7a56fdc22087a62469)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Alexander Kanavin
5d1ba9eee1 btrfs-tools: update 5.1.1 -> 5.2.1
(From OE-Core rev: 53dc41128d7f976a3a0f0730b5a2dff61f8c1bdf)

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Anuj Mittal
df9d8dbe75 patch: fix CVE-2019-13636
(From OE-Core rev: f201b9db5d148cb9fe03b78ca085493a27f7e24c)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Zoltan Kuscsik
b842a70bb1 kmscube: update to latest revision
Switch to gitlab URL, since previos location is now a mirror

(From OE-Core rev: 58fde43ae6ba2ff89a9c5209b1abf378681ee186)

Signed-off-by: Zoltan Kuscsik <zoltan.kuscsik@solution57.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Joshua Lock via Openembedded-core
75698648c0 classes/sstate: regenerate sstate when signing enabled
This change ensures that the task signatures changes, and therefore
sstate tasks are rerun, when signing is enabled. This has the
positive outcome that if signing is enabled new signed shared state
objects will be produced, rather than just signing shared state
objects for tasks where no work has been performed yet.

The downside of this change is that enabling/disabling sstate object
signing alters the taskhash and results in rebuilding the world.

(From OE-Core rev: ef60c65e3856682b90b17ae06a1b675756fd4496)

Signed-off-by: Joshua Lock <jlock@vmware.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 23:03:01 +01:00
Bartosz Golaszewski
57d702ed5d qemu: add a patch fixing the native build on newer kernels
The build fails on qemu-native if we're using kernels after commit
0768e17073dc527ccd18ed5f96ce85f9985e9115. This adds an upstream
patch that fixes the issue.

(From OE-Core rev: ef3af3a43d137d1e09e3fe4dbe462197fe7af4bc)

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 13:50:46 +01:00
Paul Eggleton
bbd51cbc4a scripts/create-pull-request: fix putting subject containing / into cover letter
If a single-commit series had a shortlog containing a "/" character then
that prevented putting the shortlog into the subject of the cover letter
message. Use a different separating character with the sed command (one
much less likely to appear) in order to fix it.

(From OE-Core rev: d4c3f93d7407ac1ea20b33149f20153972d631c0)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 13:50:46 +01:00
Paul Eggleton
f3649983d3 scripts/create-pull-request: improve handling of non-SSH remote URLs
When attempting to create a pull request, we look at the remote URL in
order to extract information to include in the cover letter. However,
the assumption was that the remote is an SSH URL i.e. containing '@'
which is not always the case (the pull and push URLs might be different,
or we might be pushing via https) - if it wasn't the script just gave up
leaving you to manually edit the URLs in the email. With a few minor
tweaks to the regexes the script will work for these cases as well.

(From OE-Core rev: 675e88e6e0bbd5ab2dcd4bdf97b0de59925a1be6)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 13:50:46 +01:00
Oleksandr Kravchuk
749d717bc3 ethtool: update to 5.2
(From OE-Core rev: e733530cf0045c6f691a306363e604bc07234f52)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 13:50:46 +01:00
Adrian Bunk
03f2db73ad webkitgtk: Reenable on mips
It builds using the generic C_LOOP code.

(From OE-Core rev: 4e601b7f5ca0270495f225987bb1376b1cfe31a1)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 13:50:46 +01:00
Adrian Bunk
dffe00c623 bind: Remove RECIPE_NO_UPDATE_REASON and follow the ESV releases
(From OE-Core rev: c03eb46c292990c6639f8fa80c9bde263b8dfb8c)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 13:50:46 +01:00
Adrian Bunk
74093964d4 gnome: Remove the gnome class
All that was left was
  inherit gnomebase gtk-icon-cache gconf mime
and especially inheriting the obsolete gconf is usually unwanted.

(From OE-Core rev: ba4304bd269d14cb0df73d657901816293c993cc)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 13:50:46 +01:00
Dmitry Eremin-Solenikov
1b5bd0bceb kernel.bbclass: fix installation of modules signing certificates
If one has provided external key/certificate for modules signing, Kbuild
will skip creating signing_key.pem and will write only signing_key.x509
certificate. Thus we have to check for .x509 file existence rather than
.pem one.

(From OE-Core rev: 2527e731eba43bd36d0ea268aca6b03155376134)

Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin-solenikov@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 13:50:46 +01:00
Anuj Mittal
cfb190a3c9 grub: upgrade 2.02 -> 2.04
* For changes in this version, see:
http://git.savannah.gnu.org/cgit/grub.git/tree/NEWS?h=grub-2.04

* Remove backported patches and refresh others.

* Remove the musl patch as it's no longer needed.

* Use configure option --disable-werror instead of passing through CFLAGS.

(From OE-Core rev: 07222d213d1da0ccade1c61ed19a7ecdc4966edd)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 13:50:46 +01:00
Anuj Mittal
07ba3a1d73 libsdl2: upgrade 2.0.9 -> 2.0.10
License-Update: Change in Copyright Year.

Refresh the patch to apply on configure.ac instead of .in.

(From OE-Core rev: f00b9aad7c3e2e1ec41597539c4fe2307043b6cf)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 13:50:46 +01:00
Khem Raj
01f3a0cd73 lttng-tools: Fix build with glibc 2.30
(From OE-Core rev: 5abaf2a5c1e8707189c5f607a19170e031e1c480)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 13:50:46 +01:00
Khem Raj
e72a75671d ltp: Fix build with glibc 2.30
(From OE-Core rev: b129e1b8d19e790b8176bbb390ee9b7745773286)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-31 13:50:46 +01:00
Chris Laplante via bitbake-devel
1a4e4fb6b0 bitbake: fetch2/wget: avoid 'maximum recursion depth' RuntimeErrors when handling 403 codes
The code says that some servers respond with 403 codes when they really
mean 405 codes. But we still need to account for legitimate 403 codes.

Before this change, I noticed that sstate mirror checking was taking a
very long time when I purposely entered incorrect credentials into my
.netrc file for our sstate mirror. Instrumenting the code, I discovered
tracebacks like the following for every mirror access attempt:

    File "/home/laplante/yocto/sources/poky/meta/classes/sstate.bbclass", line 839, in checkstatus
      fetcher.checkstatus()
    File "/home/laplante/yocto/sources/poky/bitbake/lib/bb/fetch2/__init__.py", line 1736, in checkstatus
      ret = try_mirrors(self, self.d, ud, mirrors, True)
    File "/home/laplante/yocto/sources/poky/bitbake/lib/bb/fetch2/__init__.py", line 1077, in try_mirrors
      ret = try_mirror_url(fetch, origud, uds[index], ld, check)
    File "/home/laplante/yocto/sources/poky/bitbake/lib/bb/fetch2/__init__.py", line 979, in try_mirror_url
      found = ud.method.checkstatus(fetch, ud, ld)
    File "/home/laplante/yocto/sources/poky/bitbake/lib/bb/fetch2/wget.py", line 337, in checkstatus
      opener.open(r)
    File "/usr/lib/python3.5/urllib/request.py", line 472, in open
      response = meth(req, response)
    File "/usr/lib/python3.5/urllib/request.py", line 582, in http_response
      'http', request, response, code, msg, hdrs)
    File "/usr/lib/python3.5/urllib/request.py", line 504, in error
      result = self._call_chain(*args)
    File "/usr/lib/python3.5/urllib/request.py", line 444, in _call_chain
      result = func(*args)
    File "/home/laplante/yocto/sources/poky/bitbake/lib/bb/fetch2/wget.py", line 280, in http_error_405
      unverifiable=True))
    File "/usr/lib/python3.5/urllib/request.py", line 472, in open
      response = meth(req, response)
    File "/usr/lib/python3.5/urllib/request.py", line 582, in http_response
      'http', request, response, code, msg, hdrs)
    File "/usr/lib/python3.5/urllib/request.py", line 504, in error
      result = self._call_chain(*args)
    File "/usr/lib/python3.5/urllib/request.py", line 444, in _call_chain
      result = func(*args)
    File "/home/laplante/yocto/sources/poky/bitbake/lib/bb/fetch2/wget.py", line 280, in http_error_405
      unverifiable=True))
    ...  (repeats until recursion depth is reached)

Solution is to make sure we only attempt the GET request once when handling 403/405 error codes.

(Bitbake rev: 18d4a31fdcec1f0e5d2199d6142f0ce833fca1a7)

Signed-off-by: Chris Laplante <chris.laplante@agilent.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:46:09 +01:00
Mads Andreasen
bebeed310b bitbake: fetch2/npm: Use npm pack to download node modules instead of wget
Using npm pack to download the main node module and its dependencies
allow for the use of private npm modules and access to them via .npmrc

(Bitbake rev: e5eda3871893e4eadeb311aeb997e183675598f4)

Signed-off-by: Mads Andreasen <mads@andreasen.cc>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:46:09 +01:00
Daniel Ammann
d7a026d434 bitbake: toaster: Sync list of fs_types with oe-core
(Bitbake rev: 1dddfe3512b6390958abb91b21f074568ae4e8db)

Signed-off-by: Daniel Ammann <daniel.ammann@bytesatwork.ch>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:46:08 +01:00
Denys Dmytriyenko
f9a20524fe weston: upgrade 6.0.0 -> 6.0.1
Weston 6.0.1 is released with build system fixes to smooth the
transition to Meson. Other miscellaneous bugfixes are also included.
https://lists.freedesktop.org/archives/wayland-devel/2019-June/040661.html

(From OE-Core rev: a62d60fc3741aa5eaeccaaa562afda624c3e8a04)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:45:31 +01:00
Denys Dmytriyenko
b71a5e74ad wayland-protocols: upgrade 1.17 -> 1.18
This version comes with documentational clarifications, bug fixes and minor
additions to existing protocols. See the commit log for details.
https://lists.freedesktop.org/archives/wayland-devel/2019-July/040756.html

(From OE-Core rev: 088685332c08c66469326f394ccec2d91dd6f584)

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:45:31 +01:00
Kai Kang
71f746988a epiphany: set imcompatible with tune mips
webkitgtk doesn't work with tune mips and set imcompatible with it.
epiphany depends on webkitgtk and mask it too.

(From OE-Core rev: ce294134a0d7c8fdac92f458e5dc64ecc77c5251)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:45:30 +01:00
Kai Kang
111f9ab083 subversion: add packageconfig boost
subversion checks whether build with boost during do_configure. If boost
exists on build machine, it causes configure-unsafe QA issue:

| ERROR: subversion-1.12.0-r0 do_configure: QA Issue: This autoconf log
|  indicates errors, it looked at host include and/or library paths
|  while determining system capabilities.
| Rerun configure task after fixing this. [configure-unsafe]

Add a PACKAGECONFIG 'boost' to fix the issue.

(From OE-Core rev: 237478724be75a4efeebafe07b46a353894ee4ca)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:45:30 +01:00
Khem Raj
c414a06260 lttng-ust: Check for gettid libc API
Fixes build with glibc 2.30

(From OE-Core rev: 206e6e4d981331bdbbded4d176fe5100730039bb)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:45:30 +01:00
Khem Raj
c8e3917e8c libnss-nis: Fix build with glibc 2.30
(From OE-Core rev: 04a21c70736cd8a0fd78a1bd0d979a95d5a5640d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:45:30 +01:00
Piotr Tworek
a46ee51c3a libdrm: Move amdgpu.ids file into libdrm-amdgpu package.
There is no point in shipping it in main libdrm package.

(From OE-Core rev: 458992be46ccf041e6fb862ab1cec0ff65616b0e)

Signed-off-by: Piotr Tworek <tworaz@tworaz.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:45:30 +01:00
Anuj Mittal
84c1ca18f0 pulseaudio: don't include consolekit when systemd is enabled
When using systemd, make sure that pulseaudio-server RDEPENDS on
module-systemd-login instead of module-console-kit both of which provide
the same functionality but for different init systems [1][2].

Even though both modules can co-exist, this helps avoid including
consolekit (which has been deprecated) in the images using systemd.

[1] https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/#index51h3
[2] 860d1cf3a7

(From OE-Core rev: 69d6984159834713ffb56762f50226afe27d22f5)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:45:30 +01:00
Ming Liu
c25f8fed4a libxkbcommon: RDEPENDS on libx11 compose data
This fixes a following runtime error:
| xkbcommon: ERROR: couldn't find a Compose file for locale "C"

(From OE-Core rev: aa3f5bd67f14defc5cdc39ba3c78f825dd85c69f)

Signed-off-by: Ming Liu <ming.liu@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:45:30 +01:00
Ming Liu
eea967a3fb libx11-compose-data: add recipe
So far libx11 compose data is being required by some non-X11 recipes,
like weston -> libxkbcommon -> libx11-locale. But the libx11-locale
could not build without x11 distro feature enabled. This is not
reasonable.

To fix it, we introduce this new recipe, it uses the same source with
libx11 but dropped X11 dependencies, this makes it to be able to build
without x11 distro feature. It would be skipped if x11 distro feature
is enabled, in which case the libx11-locale would provide the libx11
compose data.

(From OE-Core rev: d8a5b22757ccc76007cda55ee45922a313639258)

Signed-off-by: Ming Liu <ming.liu@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:45:30 +01:00
Diego Rondini
ec79f620e0 image_types.bbclass: make gzipped images rsyncable
Both gzip and pigz implement the --rsyncable option, allowing small changes to
images to save a lot of data when they are transferred using rsync. This patch
enables --rsyncable by default.

(From OE-Core rev: b253101b9400cd12b80b6c5b7d1d0b01b31a6c6b)

Signed-off-by: Diego Rondini <diego.rondini@kynetics.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:45:30 +01:00
Joshua Lock via Openembedded-core
f3e2c14850 classes/sstate: don't use unsigned sstate when verification enabled
When signature verification of shared state objects is enabled
(SSTATE_VERIFY_SIG) use of an unsigned object, even though it produces a
warning, seems unexpected. Instead skip unsigned objects and force the
non-accelerated task to be run.

(From OE-Core rev: 571235978d98552e3734bf382454dd51272db782)

Signed-off-by: Joshua Lock <jlock@vmware.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:45:30 +01:00
Joshua Lock via Openembedded-core
c985a07e6a sstate: fix log message
Referring to the sstate object as a staging package is an artefact of the
code's origins. Switch to referring to an "Sstate package" in order to be more
accurate and consistent with the rest of the file.

(From OE-Core rev: 06559c1ed86dbce53505f9ed98111fe9d0b97ed7)

Signed-off-by: Joshua Lock <jlock@vmware.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:45:30 +01:00
Ross Burton
685bcf1c21 libical: upgrade to 3.0.5
Add PACKAGECONFIG options for ICU (enabled by default) and BDB (disabled by
default).

Note that this upgrade includes some API breakage.

(From OE-Core rev: 456b6abcbdb05a4b0ffc09458da15e747870ffa8)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-27 22:45:30 +01:00
Richard Purdie
41a5dbd16b package: Improve determinism
Its possible in cases with multiple shlib providers we were not being
deterministic. Add in a couple of sorted() calls to fix the shlibs and
pkgconfig cases with this potential issue.

(From OE-Core rev: 5b9a4214ee17e1a39dd5a1742f2ac5ed25a11310)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:39 +01:00
Ricardo Ribalda Delgado
0ff1d66516 packagegroup-core-base-utils: Make it machine specific
Recipe makes use of the variable MACHINE_FEATURES, which is machine
specific:

  ${@bb.utils.contains("MACHINE_FEATURES", "keyboard", "kbd", "", d)}

This patch avoids multiconfig errors such as:

ERROR: mc:qt5222:packagegroup-core-base-utils-1.0-r0 do_package_qa_setscene: 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_package_qa_setscene(d)
     0003:
File: '/workdir/repo/poky/meta/classes/insane.bbclass', lineno: 1026, function: do_package_qa_setscene
     1022:SSTATETASKS += "do_package_qa"
     1023:do_package_qa[sstate-inputdirs] = ""
     1024:do_package_qa[sstate-outputdirs] = ""
     1025:python do_package_qa_setscene () {
 *** 1026:    sstate_setscene(d)
     1027:}
     1028:addtask do_package_qa_setscene
     1029:
     1030:python do_qa_staging() {

(From OE-Core rev: 1b562506d46ee54414dbdbee9c3f6a3345fa16d0)

Signed-off-by: Ricardo Ribalda Delgado <ricardo@ribalda.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:39 +01:00
Chen Qi
0467421a66 sudo: use nonarch_libdir instead of libdir for tmpfiles.d
In case of multilib, /usr/lib64/tmpfiles.d is not a path
that will be searched. So we need to use nonarch_libdir.

(From OE-Core rev: 2623d9d2f243128e50be9ed6fb5bb222b3fe9fa0)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:39 +01:00
Zang Ruochen
cbab455252 iso-codes: upgrade 4.2 -> 4.3
(From OE-Core rev: 9b6f880acb3a5f73bfbb045b58c068fd9515fda4)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:39 +01:00
Piotr Tworek
70a93af71b pulseaudio: Backport upstream fix new alsa compatibility.
Recent alsa upgrade stripped /usr/include/alsa directory from include
path reported by pkgconfig. Due to this pulseaudio 12.2 configure script
can find alsa's use-case.h header which in turn results in HAVE_ALSA_UCM
being undefined. This turn results in pa_alsa_ucm_device_update_available
symbol missing even though libalsa-util.so needs it. Once could argue
pulseaudio should not allow undefined symmbols in its shared modules.
Unfortunately it does and due to this current OE builds of pulseaudio
crash when the server tries to dlopen any module using libalsa-util.so.

Fix this by backporting ustream alsa header include fix.

(From OE-Core rev: 58319f6285de41f7b99f5fd97c42d836fb5544f3)

Signed-off-by: Piotr Tworek <tworaz@tworaz.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:39 +01:00
Oleksandr Kravchuk
768696d9c9 python3-git: update to 2.1.12
Got rid of python-git since there is no python2 version of the package.

(From OE-Core rev: dd9d95e8394a7a318538c7cabd27c82e4bc9e029)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:39 +01:00
William Bourque
30c1d70c32 meta/lib/oeqa: Remove ext4 for bootimg-biosplusefi
Remove "ext4" IMAGE_FSTYPES when generating core-image-minimal
for the bootimg-biosplusefi unittests; "wic" type is enough.

(From OE-Core rev: 73f69585e9f30819d8fb484d458e3408a04c0433)

Signed-off-by: William Bourque <wbourque@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:39 +01:00
Chin Huat Ang
fa1a3f5328 cve-update-db-native: fix https proxy issues
When https_proxy is set, use proxy opener to open CVE metadata and
database URLs, otherwise fallback to the urllib.request.urlopen.

Also fix a minor issue where the json database which has been gzip
decompressed as byte object should be decoded as utf-8 string as
expected by update_db.

(From OE-Core rev: 95438d52b732bec217301fbfc2fb019bbc3707c8)

Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:39 +01:00
Naveen Saini
b8cbefb3fd image_types_wic: add syslinux-native dependency conditional
Add syslinux-native dependency only for IA host machines.

Able to build wic image successfully for below template which
uses legacy bios(syslinux):
https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/scripts/lib/wic/canned-wks/directdisk-gpt.wks

[YOCTO #13276]

(From OE-Core rev: 7e2ee2b59319e1d2c185d65de47cc8f5c048dd03)

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:39 +01:00
Frederic Ouellet
21e2686775 systemd: Add partial support of drop-in configuration files to systemd-systemctl-native
Support for serive-name.service.d/ folders containing .conf files
It don't support all the partial folder names

See https://www.freedesktop.org/software/systemd/man/systemd.unit.html

(From OE-Core rev: 32ed8e53109f4384970fb540e44cc2f7fcafb2a5)

Signed-off-by: Frederic Ouellet <fredericouellet@eaton.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Changqing Li
09af4dafc7 runqemu: add lockfile for port used when slirp enabled
There is race condition when multi qemu starting with slirp,
add lockfile for each port to avoid problem like:

runqemu - ERROR - Failed to run qemu: qemu-system-x86_64: Could not set up host forwarding rule 'tcp::2323-:23'

[YOCTO #13364]

(From OE-Core rev: ceb3555a40ba06e58914465376aaf41392c12a7c)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Ross Burton
81485be19b gnutls: don't use HOSTTOOLS_DIR/bash as a shell on target
The libopts configure script looks for a shell on the build host and assumes
it's good for the target. However in our builds it find $HOSTTOOLS_DIR/bash
which isn't useful, so patch out the detection and force $base_bindir/sh.

(From OE-Core rev: 9aaa1e3bdfd767fe8e19c00c611b34920644df27)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Ross Burton
9b7a1653d8 libidn2: remove build paths from libidn2.pc
The libunistring m4 macros end up putting the full build-time library path into
the .pc file, which is no good on target.  Sed it out to stop build paths
leaking onto the target.

[ YOCTO #13403 ]

(From OE-Core rev: 2ab5a34357b86be19a1b1a85eac54fa0cf1e7fd2)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Oleksandr Kravchuk
f465205d03 python3-pip: update to 19.2.1
(From OE-Core rev: dded7fc1bc7caf22837d13dabbc66b84b15b872b)

Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Rasmus Villemoes
972c80a30c iproute2: drop pointless configure-cross.patch
The configure script has already found IPT_LIB_DIR via pkgconfig, so
the configure-cross.patch really just introduces dead and broken
fallback code.

Broken, because the SYSROOT variable does not actually get set to a
sensible value - the argument $1 passed to the configure script when
invoked from the Makefile is KERNEL_INCLUDE, which we set to
${STAGING_INCDIR} in EXTRA_OEMAKE. Obviously that directory does not
have /lib or /usr subdirectories, so we're not really helping the
fallback logic in check_ipt_lib_dir() - in fact, we're more or less
guaranteeing that we won't find those .so files.

(From OE-Core rev: 628de87240e9bc73ad63a32e5f67b58781d87dd0)

Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Zang Ruochen
e4cbc86558 curl: upgrade 7.65.2 -> 7.65.3
(From OE-Core rev: e3043b2c86556d91387dfbdf155e9b5547cc20c4)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Anuj Mittal
b369068d40 libsdl: remove
All the users in OE-Core have moved to libsdl2. It will be moved to
meta-oe.

(From OE-Core rev: 4f967ade9001111c77ef298372e9b9e435414664)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Khem Raj
385c1ccc18 linux-libc-header: Fix ptrace.h and prctl.h conflict on aarch64
This is a backport from 5.2 release upstream, it fixes long standing
build failure on musl/aarch64

(From OE-Core rev: eff0a21a835808c5e2862b820a1ebb200ff100db)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Zang Ruochen
74f23b863f msmtp: upgrade 1.8.4 -> 1.8.5
(From OE-Core rev: 969a6f39253e89bfb38c3ff83152a1e9c03f8e97)

Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Khem Raj
3ab89fa06f strace: Upgrade to 5.2
License-Updtate: Copyright years changed
4b4a0e5a6e (diff-7116ef0705885343c9e1b2171a06be0e)

Drop backport patch for mips o32 build fix
Refresh patches to apply on 5.2

(From OE-Core rev: abeb32772b8b3a144e468e5a27b1a31f646317e4)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Bedel, Alban
ae4ceea4fe kernel-uboot: remove useless special casing of arm64 Image
Since commit a725d188b5 (kernel-uboot: compress arm64 kernels)
arm64 Image files are handled exactly like in the default case, making
this special case pointless. Remove it to make the code simpler.

(From OE-Core rev: 60bc7e180e2d44ac026e5537552a567784dc506a)

Signed-off-by: Alban Bedel <alban.bedel@aerq.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Bedel, Alban
3ac4332d25 rng-tools: start rngd early in the boot process again
It do make sense to start rngd early in the boot process because
otherwise we would need to track every service that might need entropy
and explicitly configure it to start after rngd.

When used with systemd rngd blocked the shutdown process because it
simply missed the proper unit configuration. As the systemd
documentation explains, when using DefaultDependencies=no one also
have to explicitly configure the unit to properly stop at some point.
This is normaly achieved by having Before=shutdown.target and
Conflicts=shutdown.target set for the unit.

To have rngd started early again we reverte the changes done to
rngd.service in commit edf7606822 (rng-tools: fix rngd blocks system
shutdown). To have it properly stopped on shutdown we also add
Before=shutdown.target and Conflicts=shutdown.target.

(From OE-Core rev: a74e7df33e2c8ab2152e3217c0a5df3f65971713)

Signed-off-by: Alban Bedel <alban.bedel@aerq.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Daniel Ammann
d3ed42ef27 image_types: Remove remnants of hdddirect
hdddirect was removed in commit 929ba563f1bc7195c4981b8e139c432b2cc388ea.

(From OE-Core rev: 7a91a9818057d69cba32db2428ffc1a1ebb3876e)

Signed-off-by: Daniel Ammann <daniel.ammann@bytesatwork.ch>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Naveen Saini
65287e95ac gdk-pixbuf: enable x11 PACKAGECONFIG option
Currently gdk-pixbuf x11 loader is enabled only
for LSB build. But it is needed by other recipes like
Ice window manger(icewm) for X window system.

(From OE-Core rev: 277a2bef8ae41a0314ecad27379b299ba7d90f22)

Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
Anuj Mittal
e4da27af95 mpg123: upgrade 1.25.10 -> 1.25.11
Release notes:
https://www.mpg123.de/#2019-07-18

(From OE-Core rev: 0217cd39148a6388125128d885a114a8edcfc94a)

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-07-26 08:41:38 +01:00
1012 changed files with 17997 additions and 22164 deletions

View File

@@ -1,29 +0,0 @@
OE-Core aims to be able to provide basic LSB compatible images. There
are some challenges for OE as LSB isn't always 100% relevant to its
target embedded and IoT audiences.
One challenge is that the LSB spec is no longer being actively
developed [https://github.com/LinuxStandardBase/lsb] and has
components which are end of life or significantly dated. OE
therefore provides compatibility with the following caveats:
* Qt4 is provided by the separate meta-qt4 layer. Its noted that Qt4
is end of life and this isn't something the core project regularly
tests any longer. Users are recommended to group together to support
maintenance of that layer. [http://git.yoctoproject.org/cgit/cgit.cgi/meta-qt4/]
* GTK+ 2 is provided by meta-oe. It is noted that GTK+ 2 is end of life
and use of GTK+ 2 isn't recommended.
* mailx has been dropped since its no longer being developed upstream
and there are better, more modern replacements such as s-nail
(http://sdaoden.eu/code.html) or mailutils (http://mailutils.org/).
* A few perl modules that were required by LSB 4.x aren't provided:
libclass-isa, libenv, libdumpvalue, libfile-checktree,
libi18n-collate, libpod-plainer.
* libpng 1.2 isn't provided; oe-core includes the latest release of libpng
instead.
* pax (POSIX standard archive) tool is not provided.

View File

@@ -26,7 +26,7 @@ from bb.main import bitbake_main, BitBakeConfigParameters, BBMainException
if sys.getfilesystemencoding() != "utf-8":
sys.exit("Please use a locale setting which supports UTF-8 (such as LANG=en_US.UTF-8).\nPython can't change the filesystem locale after loading so we need a UTF-8 when Python starts or things won't work.")
__version__ = "1.43.0"
__version__ = "1.43.2"
if __name__ == "__main__":
if __version__ != bb.__version__:

170
bitbake/bin/bitbake-hashclient Executable file
View File

@@ -0,0 +1,170 @@
#! /usr/bin/env python3
#
# Copyright (C) 2019 Garmin Ltd.
#
# SPDX-License-Identifier: GPL-2.0-only
#
import argparse
import hashlib
import logging
import os
import pprint
import sys
import threading
import time
try:
import tqdm
ProgressBar = tqdm.tqdm
except ImportError:
class ProgressBar(object):
def __init__(self, *args, **kwargs):
pass
def __enter__(self):
return self
def __exit__(self, *args, **kwargs):
pass
def update(self):
pass
sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(__file__)), 'lib'))
import hashserv
DEFAULT_ADDRESS = 'unix://./hashserve.sock'
METHOD = 'stress.test.method'
def main():
def handle_stats(args, client):
if args.reset:
s = client.reset_stats()
else:
s = client.get_stats()
pprint.pprint(s)
return 0
def handle_stress(args, client):
def thread_main(pbar, lock):
nonlocal found_hashes
nonlocal missed_hashes
nonlocal max_time
client = hashserv.create_client(args.address)
for i in range(args.requests):
taskhash = hashlib.sha256()
taskhash.update(args.taskhash_seed.encode('utf-8'))
taskhash.update(str(i).encode('utf-8'))
start_time = time.perf_counter()
l = client.get_unihash(METHOD, taskhash.hexdigest())
elapsed = time.perf_counter() - start_time
with lock:
if l:
found_hashes += 1
else:
missed_hashes += 1
max_time = max(elapsed, max_time)
pbar.update()
max_time = 0
found_hashes = 0
missed_hashes = 0
lock = threading.Lock()
total_requests = args.clients * args.requests
start_time = time.perf_counter()
with ProgressBar(total=total_requests) as pbar:
threads = [threading.Thread(target=thread_main, args=(pbar, lock), daemon=False) for _ in range(args.clients)]
for t in threads:
t.start()
for t in threads:
t.join()
elapsed = time.perf_counter() - start_time
with lock:
print("%d requests in %.1fs. %.1f requests per second" % (total_requests, elapsed, total_requests / elapsed))
print("Average request time %.8fs" % (elapsed / total_requests))
print("Max request time was %.8fs" % max_time)
print("Found %d hashes, missed %d" % (found_hashes, missed_hashes))
if args.report:
with ProgressBar(total=args.requests) as pbar:
for i in range(args.requests):
taskhash = hashlib.sha256()
taskhash.update(args.taskhash_seed.encode('utf-8'))
taskhash.update(str(i).encode('utf-8'))
outhash = hashlib.sha256()
outhash.update(args.outhash_seed.encode('utf-8'))
outhash.update(str(i).encode('utf-8'))
client.report_unihash(taskhash.hexdigest(), METHOD, outhash.hexdigest(), taskhash.hexdigest())
with lock:
pbar.update()
parser = argparse.ArgumentParser(description='Hash Equivalence Client')
parser.add_argument('--address', default=DEFAULT_ADDRESS, help='Server address (default "%(default)s")')
parser.add_argument('--log', default='WARNING', help='Set logging level')
subparsers = parser.add_subparsers()
stats_parser = subparsers.add_parser('stats', help='Show server stats')
stats_parser.add_argument('--reset', action='store_true',
help='Reset server stats')
stats_parser.set_defaults(func=handle_stats)
stress_parser = subparsers.add_parser('stress', help='Run stress test')
stress_parser.add_argument('--clients', type=int, default=10,
help='Number of simultaneous clients')
stress_parser.add_argument('--requests', type=int, default=1000,
help='Number of requests each client will perform')
stress_parser.add_argument('--report', action='store_true',
help='Report new hashes')
stress_parser.add_argument('--taskhash-seed', default='',
help='Include string in taskhash')
stress_parser.add_argument('--outhash-seed', default='',
help='Include string in outhash')
stress_parser.set_defaults(func=handle_stress)
args = parser.parse_args()
logger = logging.getLogger('hashserv')
level = getattr(logging, args.log.upper(), None)
if not isinstance(level, int):
raise ValueError('Invalid log level: %s' % args.log)
logger.setLevel(level)
console = logging.StreamHandler()
console.setLevel(level)
logger.addHandler(console)
func = getattr(args, 'func', None)
if func:
client = hashserv.create_client(args.address)
# Try to establish a connection to the server now to detect failures
# early
client.connect()
return func(args, client)
return 0
if __name__ == '__main__':
try:
ret = main()
except Exception:
ret = 1
import traceback
traceback.print_exc()
sys.exit(ret)

View File

@@ -11,20 +11,26 @@ import logging
import argparse
import sqlite3
sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(__file__)),'lib'))
sys.path.insert(0, os.path.join(os.path.dirname(os.path.dirname(__file__)), 'lib'))
import hashserv
VERSION = "1.0.0"
DEFAULT_HOST = ''
DEFAULT_PORT = 8686
DEFAULT_BIND = 'unix://./hashserve.sock'
def main():
parser = argparse.ArgumentParser(description='HTTP Equivalence Reference Server. Version=%s' % VERSION)
parser.add_argument('--address', default=DEFAULT_HOST, help='Bind address (default "%(default)s")')
parser.add_argument('--port', type=int, default=DEFAULT_PORT, help='Bind port (default %(default)d)')
parser.add_argument('--prefix', default='', help='HTTP path prefix (default "%(default)s")')
parser = argparse.ArgumentParser(description='Hash Equivalence Reference Server. Version=%s' % VERSION,
epilog='''The bind address is the path to a unix domain socket if it is
prefixed with "unix://". Otherwise, it is an IP address
and port in form ADDRESS:PORT. To bind to all addresses, leave
the ADDRESS empty, e.g. "--bind :8686". To bind to a specific
IPv6 address, enclose the address in "[]", e.g.
"--bind [::1]:8686"'''
)
parser.add_argument('--bind', default=DEFAULT_BIND, help='Bind address (default "%(default)s")')
parser.add_argument('--database', default='./hashserv.db', help='Database file (default "%(default)s")')
parser.add_argument('--log', default='WARNING', help='Set logging level')
@@ -41,12 +47,11 @@ def main():
console.setLevel(level)
logger.addHandler(console)
db = sqlite3.connect(args.database)
server = hashserv.create_server((args.address, args.port), db, args.prefix)
server = hashserv.create_server(args.bind, args.database)
server.serve_forever()
return 0
if __name__ == '__main__':
try:
ret = main()
@@ -55,4 +60,3 @@ if __name__ == '__main__':
import traceback
traceback.print_exc()
sys.exit(ret)

View File

@@ -234,6 +234,8 @@ def fork_off_task(cfg, data, databuilder, workerdata, fn, task, taskname, taskha
the_data.setVar(varname, value)
bb.parse.siggen.set_taskdata(workerdata["sigdata"])
if "newhashes" in workerdata:
bb.parse.siggen.set_taskhashes(workerdata["newhashes"])
ret = 0
the_data = bb_cache.loadDataFull(fn, appends)
@@ -377,6 +379,7 @@ class BitbakeWorker(object):
self.handle_item(b"cookerconfig", self.handle_cookercfg)
self.handle_item(b"extraconfigdata", self.handle_extraconfigdata)
self.handle_item(b"workerdata", self.handle_workerdata)
self.handle_item(b"newtaskhashes", self.handle_newtaskhashes)
self.handle_item(b"runtask", self.handle_runtask)
self.handle_item(b"finishnow", self.handle_finishnow)
self.handle_item(b"ping", self.handle_ping)
@@ -415,6 +418,10 @@ class BitbakeWorker(object):
bb.msg.loggerDefaultDomains = self.workerdata["logdefaultdomain"]
for mc in self.databuilder.mcdata:
self.databuilder.mcdata[mc].setVar("PRSERV_HOST", self.workerdata["prhost"])
self.databuilder.mcdata[mc].setVar("BB_HASHSERVE", self.workerdata["hashservaddr"])
def handle_newtaskhashes(self, data):
self.workerdata["newhashes"] = pickle.loads(data)
def handle_ping(self, _):
workerlog_write("Handling ping\n")

View File

@@ -369,9 +369,8 @@
<para>
These operators differ from the ":=", ".=", "=.", "+=", and "=+"
operators in that their effects are deferred
until after parsing completes rather than being immediately
applied.
operators in that their effects are applied at variable
expansion time rather than being immediately applied.
Here are some examples:
<literallayout class='monospaced'>
B = "bval"
@@ -420,18 +419,22 @@
FOO = "123 456 789 123456 123 456 123 456"
FOO_remove = "123"
FOO_remove = "456"
FOO2 = "abc def ghi abcdef abc def abc def"
FOO2_remove = "abc def"
FOO2 = " abc def ghi abcdef abc def abc def def"
FOO2_remove = " \
def \
abc \
ghi \
"
</literallayout>
The variable <filename>FOO</filename> becomes
"&nbsp;&nbsp;789 123456&nbsp;&nbsp;&nbsp;&nbsp;"
"&nbsp;&nbsp;789&nbsp;123456&nbsp;&nbsp;&nbsp;&nbsp;"
and <filename>FOO2</filename> becomes
"&nbsp;&nbsp;ghi abcdef&nbsp;&nbsp;&nbsp;&nbsp;".
"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jkl&nbsp;&nbsp;abcdef&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".
</para>
<para>
Like "_append" and "_prepend", "_remove"
is deferred until after parsing completes.
is applied at variable expansion time.
</para>
</section>
@@ -796,17 +799,15 @@
<title>Key Expansion</title>
<para>
Key expansion happens when the BitBake datastore is finalized
just before BitBake expands overrides.
Key expansion happens when the BitBake datastore is finalized.
To better understand this, consider the following example:
<literallayout class='monospaced'>
A${B} = "X"
B = "2"
A2 = "Y"
</literallayout>
In this case, after all the parsing is complete, and
before any overrides are handled, BitBake expands
<filename>${B}</filename> into "2".
In this case, after all the parsing is complete,
BitBake expands <filename>${B}</filename> into "2".
This expansion causes <filename>A2</filename>, which was
set to "Y" before the expansion, to become "X".
</para>

View File

@@ -9,7 +9,7 @@
# SPDX-License-Identifier: GPL-2.0-only
#
__version__ = "1.43.0"
__version__ = "1.43.2"
import sys
if sys.version_info < (3, 4, 0):

View File

@@ -54,23 +54,6 @@ else:
builtins['bb'] = bb
builtins['os'] = os
class FuncFailed(Exception):
def __init__(self, name = None, logfile = None):
self.logfile = logfile
self.name = name
if name:
self.msg = 'Function failed: %s' % name
else:
self.msg = "Function failed"
def __str__(self):
if self.logfile and os.path.exists(self.logfile):
msg = ("%s (log file is located at %s)" %
(self.msg, self.logfile))
else:
msg = self.msg
return msg
class TaskBase(event.Event):
"""Base class for task events"""
@@ -189,12 +172,7 @@ class StdoutNoopContextManager:
return sys.stdout.name
#
# pythonexception allows the python exceptions generated to be raised
# as the real exceptions (not FuncFailed) and without a backtrace at the
# origin of the failure.
#
def exec_func(func, d, dirs = None, pythonexception=False):
def exec_func(func, d, dirs = None):
"""Execute a BB 'function'"""
try:
@@ -266,7 +244,7 @@ def exec_func(func, d, dirs = None, pythonexception=False):
with bb.utils.fileslocked(lockfiles):
if ispython:
exec_func_python(func, d, runfile, cwd=adir, pythonexception=pythonexception)
exec_func_python(func, d, runfile, cwd=adir)
else:
exec_func_shell(func, d, runfile, cwd=adir)
@@ -286,7 +264,7 @@ _functionfmt = """
{function}(d)
"""
logformatter = bb.msg.BBLogFormatter("%(levelname)s: %(message)s")
def exec_func_python(func, d, runfile, cwd=None, pythonexception=False):
def exec_func_python(func, d, runfile, cwd=None):
"""Execute a python BB 'function'"""
code = _functionfmt.format(function=func)
@@ -311,14 +289,7 @@ def exec_func_python(func, d, runfile, cwd=None, pythonexception=False):
bb.methodpool.insert_method(func, text, fn, lineno - 1)
comp = utils.better_compile(code, func, "exec_python_func() autogenerated")
utils.better_exec(comp, {"d": d}, code, "exec_python_func() autogenerated", pythonexception=pythonexception)
except (bb.parse.SkipRecipe, bb.build.FuncFailed):
raise
except Exception as e:
if pythonexception:
raise
logger.error(str(e))
raise FuncFailed(func, None)
utils.better_exec(comp, {"d": d}, code, "exec_python_func() autogenerated")
finally:
bb.debug(2, "Python function %s finished" % func)
@@ -475,13 +446,8 @@ exit $ret
with open(fifopath, 'r+b', buffering=0) as fifo:
try:
bb.debug(2, "Executing shell function %s" % func)
try:
with open(os.devnull, 'r+') as stdin, logfile:
bb.process.run(cmd, shell=False, stdin=stdin, log=logfile, extrafiles=[(fifo,readfifo)])
except bb.process.CmdError:
logfn = d.getVar('BB_LOGFILE')
raise FuncFailed(func, logfn)
with open(os.devnull, 'r+') as stdin, logfile:
bb.process.run(cmd, shell=False, stdin=stdin, log=logfile, extrafiles=[(fifo,readfifo)])
finally:
os.unlink(fifopath)
@@ -609,9 +575,6 @@ def _exec_task(fn, task, d, quieterr):
event.fire(TaskStarted(task, logfn, flags, localdata), localdata)
except (bb.BBHandledException, SystemExit):
return 1
except FuncFailed as exc:
logger.error(str(exc))
return 1
try:
for func in (prefuncs or '').split():
@@ -619,7 +582,10 @@ def _exec_task(fn, task, d, quieterr):
exec_func(task, localdata)
for func in (postfuncs or '').split():
exec_func(func, localdata)
except FuncFailed as exc:
except bb.BBHandledException:
event.fire(TaskFailed(task, logfn, localdata, True), localdata)
return 1
except Exception as exc:
if quieterr:
event.fire(TaskFailedSilent(task, logfn, localdata), localdata)
else:
@@ -627,9 +593,6 @@ def _exec_task(fn, task, d, quieterr):
logger.error(str(exc))
event.fire(TaskFailed(task, logfn, localdata, errprinted), localdata)
return 1
except bb.BBHandledException:
event.fire(TaskFailed(task, logfn, localdata, True), localdata)
return 1
finally:
sys.stdout.flush()
sys.stderr.flush()

View File

@@ -220,7 +220,7 @@ class CoreRecipeInfo(RecipeInfoCommon):
cachedata.hashfn[fn] = self.hashfilename
for task, taskhash in self.basetaskhashes.items():
identifier = '%s.%s' % (fn, task)
identifier = '%s:%s' % (fn, task)
cachedata.basetaskhash[identifier] = taskhash
cachedata.inherits[fn] = self.inherits
@@ -883,3 +883,56 @@ class MultiProcessCache(object):
p.dump([data, self.__class__.CACHE_VERSION])
bb.utils.unlockfile(glf)
class SimpleCache(object):
"""
BitBake multi-process cache implementation
Used by the codeparser & file checksum caches
"""
def __init__(self, version):
self.cachefile = None
self.cachedata = None
self.cacheversion = version
def init_cache(self, d, cache_file_name=None, defaultdata=None):
cachedir = (d.getVar("PERSISTENT_DIR") or
d.getVar("CACHE"))
if not cachedir:
return defaultdata
bb.utils.mkdirhier(cachedir)
self.cachefile = os.path.join(cachedir,
cache_file_name or self.__class__.cache_file_name)
logger.debug(1, "Using cache in '%s'", self.cachefile)
glf = bb.utils.lockfile(self.cachefile + ".lock")
try:
with open(self.cachefile, "rb") as f:
p = pickle.Unpickler(f)
data, version = p.load()
except:
bb.utils.unlockfile(glf)
return defaultdata
bb.utils.unlockfile(glf)
if version != self.cacheversion:
return defaultdata
return data
def save(self, data):
if not self.cachefile:
return
glf = bb.utils.lockfile(self.cachefile + ".lock")
with open(self.cachefile, "wb") as f:
p = pickle.Pickler(f, -1)
p.dump([data, self.cacheversion])
bb.utils.unlockfile(glf)

View File

@@ -31,6 +31,7 @@ import pyinotify
import json
import pickle
import codecs
import hashserv
logger = logging.getLogger("BitBake")
collectlog = logging.getLogger("BitBake.Collection")
@@ -192,6 +193,8 @@ class BBCooker:
bb.parse.BBHandler.cached_statements = {}
self.ui_cmdline = None
self.hashserv = None
self.hashservaddr = None
self.initConfigurationData()
@@ -372,8 +375,6 @@ class BBCooker:
# Copy of the data store which has been expanded.
# Used for firing events and accessing variables where expansion needs to be accounted for
#
bb.parse.init_parser(self.data)
if CookerFeatures.BASEDATASTORE_TRACKING in self.featureset:
self.disableDataTracking()
@@ -391,6 +392,22 @@ class BBCooker:
except prserv.serv.PRServiceConfigError as e:
bb.fatal("Unable to start PR Server, exitting")
if self.data.getVar("BB_HASHSERVE") == "auto":
# Create a new hash server bound to a unix domain socket
if not self.hashserv:
dbfile = (self.data.getVar("PERSISTENT_DIR") or self.data.getVar("CACHE")) + "/hashserv.db"
self.hashservaddr = "unix://%s/hashserve.sock" % self.data.getVar("TOPDIR")
self.hashserv = hashserv.create_server(self.hashservaddr, dbfile, sync=False)
self.hashserv.process = multiprocessing.Process(target=self.hashserv.serve_forever)
self.hashserv.process.start()
self.data.setVar("BB_HASHSERVE", self.hashservaddr)
self.databuilder.origdata.setVar("BB_HASHSERVE", self.hashservaddr)
self.databuilder.data.setVar("BB_HASHSERVE", self.hashservaddr)
for mc in self.databuilder.mcdata:
self.databuilder.mcdata[mc].setVar("BB_HASHSERVE", self.hashservaddr)
bb.parse.init_parser(self.data)
def enableDataTracking(self):
self.configuration.tracking = True
if hasattr(self, "data"):
@@ -902,6 +919,10 @@ class BBCooker:
os.unlink('package-depends.dot')
except FileNotFoundError:
pass
try:
os.unlink('recipe-depends.dot')
except FileNotFoundError:
pass
with open('task-depends.dot', 'w') as f:
f.write("digraph depends {\n")
@@ -915,27 +936,6 @@ class BBCooker:
f.write("}\n")
logger.info("Task dependencies saved to 'task-depends.dot'")
with open('recipe-depends.dot', 'w') as f:
f.write("digraph depends {\n")
pndeps = {}
for task in sorted(depgraph["tdepends"]):
(pn, taskname) = task.rsplit(".", 1)
if pn not in pndeps:
pndeps[pn] = set()
for dep in sorted(depgraph["tdepends"][task]):
(deppn, deptaskname) = dep.rsplit(".", 1)
pndeps[pn].add(deppn)
for pn in sorted(pndeps):
fn = depgraph["pn"][pn]["filename"]
version = depgraph["pn"][pn]["version"]
f.write('"%s" [label="%s\\n%s\\n%s"]\n' % (pn, pn, version, fn))
for dep in sorted(pndeps[pn]):
if dep == pn:
continue
f.write('"%s" -> "%s"\n' % (pn, dep))
f.write("}\n")
logger.info("Flattened recipe dependencies saved to 'recipe-depends.dot'")
def show_appends_with_no_recipes(self):
# Determine which bbappends haven't been applied
@@ -1645,9 +1645,11 @@ class BBCooker:
def post_serve(self):
prserv.serv.auto_shutdown()
if self.hashserv:
self.hashserv.process.terminate()
self.hashserv.process.join()
bb.event.fire(CookerExit(), self.data)
def shutdown(self, force = False):
if force:
self.state = state.forceshutdown
@@ -1662,6 +1664,7 @@ class BBCooker:
def reset(self):
self.initConfigurationData()
self.handlePRServ()
def clientComplete(self):
"""Called when the client is done using the server"""
@@ -2062,6 +2065,14 @@ class CookerParser(object):
for process in self.processes:
self.parser_quit.put(None)
# Cleanup the queue before call process.join(), otherwise there might be
# deadlocks.
while True:
try:
self.result_queue.get(timeout=0.25)
except queue.Empty:
break
for process in self.processes:
if force:
process.join(.1)

View File

@@ -13,6 +13,7 @@ import logging
import os
import re
import sys
import hashlib
from functools import wraps
import bb
from bb import data
@@ -267,12 +268,13 @@ class CookerDataBuilder(object):
self.mcdata = {}
def parseBaseConfiguration(self):
data_hash = hashlib.sha256()
try:
bb.parse.init_parser(self.basedata)
self.data = self.parseConfigurationFiles(self.prefiles, self.postfiles)
if self.data.getVar("BB_WORKERCONTEXT", False) is None:
bb.fetch.fetcher_init(self.data)
bb.parse.init_parser(self.data)
bb.codeparser.parser_cache_init(self.data)
bb.event.fire(bb.event.ConfigParsed(), self.data)
@@ -290,7 +292,7 @@ class CookerDataBuilder(object):
bb.event.fire(bb.event.ConfigParsed(), self.data)
bb.parse.init_parser(self.data)
self.data_hash = self.data.get_hash()
data_hash.update(self.data.get_hash().encode('utf-8'))
self.mcdata[''] = self.data
multiconfig = (self.data.getVar("BBMULTICONFIG") or "").split()
@@ -298,9 +300,11 @@ class CookerDataBuilder(object):
mcdata = self.parseConfigurationFiles(self.prefiles, self.postfiles, config)
bb.event.fire(bb.event.ConfigParsed(), mcdata)
self.mcdata[config] = mcdata
data_hash.update(mcdata.get_hash().encode('utf-8'))
if multiconfig:
bb.event.fire(bb.event.MultiConfigParsed(self.mcdata), self.data)
self.data_hash = data_hash.hexdigest()
except (SyntaxError, bb.BBHandledException):
raise bb.BBHandledException
except bb.data_smart.ExpansionError as e:

View File

@@ -130,7 +130,7 @@ def emit_var(var, o=sys.__stdout__, d = init(), all=False):
if all:
oval = d.getVar(var, False)
val = d.getVar(var)
except (KeyboardInterrupt, bb.build.FuncFailed):
except (KeyboardInterrupt):
raise
except Exception as exc:
o.write('# expansion of %s threw %s: %s\n' % (var, exc.__class__.__name__, str(exc)))
@@ -422,7 +422,7 @@ def generate_dependency_hash(tasklist, gendeps, lookupcache, whitelist, fn):
var = lookupcache[dep]
if var is not None:
data = data + str(var)
k = fn + "." + task
k = fn + ":" + task
basehash[k] = hashlib.sha256(data.encode("utf-8")).hexdigest()
taskdeps[task] = alldeps

View File

@@ -962,7 +962,8 @@ def rename_bad_checksum(ud, suffix):
new_localpath = "%s_bad-checksum_%s" % (ud.localpath, suffix)
bb.warn("Renaming %s to %s" % (ud.localpath, new_localpath))
bb.utils.movefile(ud.localpath, new_localpath)
if not bb.utils.movefile(ud.localpath, new_localpath):
bb.warn("Renaming %s to %s failed, grep movefile in log.do_fetch to see why" % (ud.localpath, new_localpath))
def try_mirror_url(fetch, origud, ud, ld, check = False):

View File

@@ -464,6 +464,8 @@ class Git(FetchMethod):
if os.path.exists(destdir):
bb.utils.prunedir(destdir)
need_lfs = ud.parm.get("lfs", "1") == "1"
source_found = False
source_error = []
@@ -493,14 +495,10 @@ class Git(FetchMethod):
runfetchcmd("%s remote set-url origin %s" % (ud.basecmd, repourl), d, workdir=destdir)
if self._contains_lfs(ud, d, destdir):
path = d.getVar('PATH')
if path:
gitlfstool = bb.utils.which(path, "git-lfs", executable=True)
if not gitlfstool:
raise bb.fetch2.FetchError("Repository %s has lfs content, install git-lfs plugin on host to download" % (repourl))
if need_lfs and not self._find_git_lfs(d):
raise bb.fetch2.FetchError("Repository %s has LFS content, install git-lfs on host to download (or set lfs=0 to ignore it)" % (repourl))
else:
bb.note("Could not find 'PATH'")
bb.note("Repository %s has LFS content but it is not being fetched" % (repourl))
if not ud.nocheckout:
if subdir != "":
@@ -566,6 +564,13 @@ class Git(FetchMethod):
pass
return False
def _find_git_lfs(self, d):
"""
Return True if git-lfs can be found, False otherwise.
"""
import shutil
return shutil.which("git-lfs", path=d.getVar('PATH')) is not None
def _get_repo_url(self, ud):
"""
Return the repository URL

View File

@@ -101,11 +101,19 @@ class Npm(FetchMethod):
return False
return True
def _runwget(self, ud, d, command, quiet):
logger.debug(2, "Fetching %s using command '%s'" % (ud.url, command))
bb.fetch2.check_network_access(d, command, ud.url)
def _runpack(self, ud, d, pkgfullname: str, quiet=False) -> str:
"""
Runs npm pack on a full package name.
Returns the filename of the downloaded package
"""
bb.fetch2.check_network_access(d, pkgfullname, ud.registry)
dldir = d.getVar("DL_DIR")
runfetchcmd(command, d, quiet, workdir=dldir)
dldir = os.path.join(dldir, ud.prefixdir)
command = "npm pack {} --registry {}".format(pkgfullname, ud.registry)
logger.debug(2, "Fetching {} using command '{}' in {}".format(pkgfullname, command, dldir))
filename = runfetchcmd(command, d, quiet, workdir=dldir)
return filename.rstrip()
def _unpackdep(self, ud, pkg, data, destdir, dldir, d):
file = data[pkg]['tgz']
@@ -163,6 +171,9 @@ class Npm(FetchMethod):
pkgfullname = pkg
if version != '*' and not '/' in version:
pkgfullname += "@'%s'" % version
if pkgfullname in fetchedlist:
return
logger.debug(2, "Calling getdeps on %s" % pkg)
fetchcmd = "npm view %s --json --registry %s" % (pkgfullname, ud.registry)
output = runfetchcmd(fetchcmd, d, True)
@@ -182,15 +193,10 @@ class Npm(FetchMethod):
if (not blacklist and 'linux' not in pkg_os) or '!linux' in pkg_os:
logger.debug(2, "Skipping %s since it's incompatible with Linux" % pkg)
return
#logger.debug(2, "Output URL is %s - %s - %s" % (ud.basepath, ud.basename, ud.localfile))
outputurl = pdata['dist']['tarball']
filename = self._runpack(ud, d, pkgfullname)
data[pkg] = {}
data[pkg]['tgz'] = os.path.basename(outputurl)
if outputurl in fetchedlist:
return
self._runwget(ud, d, "%s --directory-prefix=%s %s" % (self.basecmd, ud.prefixdir, outputurl), False)
fetchedlist.append(outputurl)
data[pkg]['tgz'] = filename
fetchedlist.append(pkgfullname)
dependencies = pdata.get('dependencies', {})
optionalDependencies = pdata.get('optionalDependencies', {})
@@ -217,17 +223,12 @@ class Npm(FetchMethod):
if obj == pkg:
self._getshrinkeddependencies(obj, data['dependencies'][obj], data['dependencies'][obj]['version'], d, ud, lockdown, manifest, False)
return
outputurl = "invalid"
if ('resolved' not in data) or (not data['resolved'].startswith('http://') and not data['resolved'].startswith('https://')):
# will be the case for ${PN}
fetchcmd = "npm view %s@%s dist.tarball --registry %s" % (pkg, version, ud.registry)
logger.debug(2, "Found this matching URL: %s" % str(fetchcmd))
outputurl = runfetchcmd(fetchcmd, d, True)
else:
outputurl = data['resolved']
self._runwget(ud, d, "%s --directory-prefix=%s %s" % (self.basecmd, ud.prefixdir, outputurl), False)
pkgnameWithVersion = "{}@{}".format(pkg, version)
logger.debug(2, "Get dependencies for {}".format(pkgnameWithVersion))
filename = self._runpack(ud, d, pkgnameWithVersion)
manifest[pkg] = {}
manifest[pkg]['tgz'] = os.path.basename(outputurl).rstrip()
manifest[pkg]['tgz'] = filename
manifest[pkg]['deps'] = {}
if pkg in lockdown:

View File

@@ -145,7 +145,7 @@ class Svn(FetchMethod):
if not ("externals" in ud.parm and ud.parm["externals"] == "nowarn"):
# Warn the user if this had externals (won't catch them all)
output = runfetchcmd("svn propget svn:externals", d, workdir=ud.moddir)
output = runfetchcmd("svn propget svn:externals || true", d, workdir=ud.moddir)
if output:
if "--ignore-externals" in svnfetchcmd.split():
bb.warn("%s contains svn:externals." % ud.url)

View File

@@ -257,13 +257,15 @@ class Wget(FetchMethod):
fp.read()
fp.close()
newheaders = dict((k, v) for k, v in list(req.headers.items())
if k.lower() not in ("content-length", "content-type"))
return self.parent.open(urllib.request.Request(req.get_full_url(),
headers=newheaders,
origin_req_host=req.origin_req_host,
unverifiable=True))
if req.get_method() != 'GET':
newheaders = dict((k, v) for k, v in list(req.headers.items())
if k.lower() not in ("content-length", "content-type"))
return self.parent.open(urllib.request.Request(req.get_full_url(),
headers=newheaders,
origin_req_host=req.origin_req_host,
unverifiable=True))
raise urllib.request.HTTPError(req, code, msg, headers, None)
# Some servers (e.g. GitHub archives, hosted on Amazon S3) return 403
# Forbidden when they actually mean 405 Method Not Allowed.

View File

@@ -73,7 +73,7 @@ def build_tid(mc, fn, taskname):
def pending_hash_index(tid, rqdata):
(mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
pn = rqdata.dataCaches[mc].pkg_fn[taskfn]
h = rqdata.runtaskentries[tid].hash
h = rqdata.runtaskentries[tid].unihash
return pn + ":" + "taskname" + h
class RunQueueStats:
@@ -133,7 +133,7 @@ class RunQueueScheduler(object):
self.prio_map = [self.rqdata.runtaskentries.keys()]
self.buildable = []
self.buildable = set()
self.skip_maxthread = {}
self.stamps = {}
for tid in self.rqdata.runtaskentries:
@@ -148,8 +148,10 @@ class RunQueueScheduler(object):
"""
Return the id of the first task we find that is buildable
"""
self.buildable = [x for x in self.buildable if x not in self.rq.runq_running]
buildable = [x for x in self.buildable if (x in self.rq.tasks_covered or x in self.rq.tasks_notcovered)]
buildable = set(self.buildable)
buildable.difference_update(self.rq.runq_running)
buildable.difference_update(self.rq.holdoff_tasks)
buildable.intersection_update(self.rq.tasks_covered | self.rq.tasks_notcovered)
if not buildable:
return None
@@ -167,7 +169,7 @@ class RunQueueScheduler(object):
skip_buildable[rtaskname] = 1
if len(buildable) == 1:
tid = buildable[0]
tid = buildable.pop()
taskname = taskname_from_tid(tid)
if taskname in skip_buildable and skip_buildable[taskname] >= int(self.skip_maxthread[taskname]):
return None
@@ -204,7 +206,12 @@ class RunQueueScheduler(object):
return self.next_buildable_task()
def newbuildable(self, task):
self.buildable.append(task)
self.buildable.add(task)
# Once tasks are running we don't need to worry about them again
self.buildable.difference_update(self.rq.runq_running)
def removebuildable(self, task):
self.buildable.remove(task)
def describe_task(self, taskid):
result = 'ID %s' % taskid
@@ -844,6 +851,20 @@ class RunQueueData:
for depend in depends:
mark_active(depend, depth+1)
def invalidate_task(tid, error_nostamp):
(mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
taskdep = self.dataCaches[mc].task_deps[taskfn]
if fn + ":" + taskname not in taskData[mc].taskentries:
logger.warning("Task %s does not exist, invalidating this task will have no effect" % taskname)
if 'nostamp' in taskdep and taskname in taskdep['nostamp']:
if error_nostamp:
bb.fatal("Task %s is marked nostamp, cannot invalidate this task" % taskname)
else:
bb.debug(1, "Task %s is marked nostamp, cannot invalidate this task" % taskname)
else:
logger.verbose("Invalidate task %s, %s", taskname, fn)
bb.parse.siggen.invalidate_task(taskname, self.dataCaches[mc], taskfn)
self.target_tids = []
for (mc, target, task, fn) in self.targets:
@@ -912,6 +933,8 @@ class RunQueueData:
for tid in list(runall_tids):
mark_active(tid,1)
if self.cooker.configuration.force:
invalidate_task(tid, False)
for tid in list(self.runtaskentries.keys()):
if tid not in runq_build:
@@ -933,6 +956,8 @@ class RunQueueData:
for tid in list(runonly_tids):
mark_active(tid,1)
if self.cooker.configuration.force:
invalidate_task(tid, False)
for tid in list(self.runtaskentries.keys()):
if tid not in runq_build:
@@ -1109,20 +1134,6 @@ class RunQueueData:
continue
self.runq_setscene_tids.append(tid)
def invalidate_task(tid, error_nostamp):
(mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
taskdep = self.dataCaches[mc].task_deps[taskfn]
if fn + ":" + taskname not in taskData[mc].taskentries:
logger.warning("Task %s does not exist, invalidating this task will have no effect" % taskname)
if 'nostamp' in taskdep and taskname in taskdep['nostamp']:
if error_nostamp:
bb.fatal("Task %s is marked nostamp, cannot invalidate this task" % taskname)
else:
bb.debug(1, "Task %s is marked nostamp, cannot invalidate this task" % taskname)
else:
logger.verbose("Invalidate task %s, %s", taskname, fn)
bb.parse.siggen.invalidate_task(taskname, self.dataCaches[mc], taskfn)
self.init_progress_reporter.next_stage()
# Invalidate task if force mode active
@@ -1153,6 +1164,8 @@ class RunQueueData:
self.init_progress_reporter.next_stage()
bb.parse.siggen.set_setscene_tasks(self.runq_setscene_tids)
# Iterate over the task list and call into the siggen code
dealtwith = set()
todeal = set(self.runtaskentries)
@@ -1171,10 +1184,9 @@ class RunQueueData:
def prepare_task_hash(self, tid):
procdep = []
for dep in self.runtaskentries[tid].depends:
procdep.append(fn_from_tid(dep) + "." + taskname_from_tid(dep))
(mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
self.runtaskentries[tid].hash = bb.parse.siggen.get_taskhash(taskfn, taskname, procdep, self.dataCaches[mc])
self.runtaskentries[tid].unihash = bb.parse.siggen.get_unihash(taskfn + "." + taskname)
procdep.append(dep)
self.runtaskentries[tid].hash = bb.parse.siggen.get_taskhash(tid, procdep, self.dataCaches[mc_from_tid(tid)])
self.runtaskentries[tid].unihash = bb.parse.siggen.get_unihash(tid)
def dump_data(self):
"""
@@ -1251,6 +1263,7 @@ class RunQueue:
"buildname" : self.cfgData.getVar("BUILDNAME"),
"date" : self.cfgData.getVar("DATE"),
"time" : self.cfgData.getVar("TIME"),
"hashservaddr" : self.cooker.hashservaddr,
}
worker.stdin.write(b"<cookerconfig>" + pickle.dumps(self.cooker.configuration) + b"</cookerconfig>")
@@ -1384,57 +1397,29 @@ class RunQueue:
cache[tid] = iscurrent
return iscurrent
def validate_hashes(self, tocheck, data, presentcount=None, siginfo=False):
def validate_hashes(self, tocheck, data, currentcount=0, siginfo=False):
valid = set()
if self.hashvalidate:
sq_hash = []
sq_hashfn = []
sq_unihash = []
sq_fn = []
sq_taskname = []
sq_task = []
sq_data = {}
sq_data['hash'] = {}
sq_data['hashfn'] = {}
sq_data['unihash'] = {}
for tid in tocheck:
(mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
sq_data['hash'][tid] = self.rqdata.runtaskentries[tid].hash
sq_data['hashfn'][tid] = self.rqdata.dataCaches[mc].hashfn[taskfn]
sq_data['unihash'][tid] = self.rqdata.runtaskentries[tid].unihash
sq_fn.append(fn)
sq_hashfn.append(self.rqdata.dataCaches[mc].hashfn[taskfn])
sq_hash.append(self.rqdata.runtaskentries[tid].hash)
sq_unihash.append(self.rqdata.runtaskentries[tid].unihash)
sq_taskname.append(taskname)
sq_task.append(tid)
if presentcount is not None:
data.setVar("BB_SETSCENE_STAMPCURRENT_COUNT", presentcount)
valid_ids = self.validate_hash(sq_fn, sq_taskname, sq_hash, sq_hashfn, siginfo, sq_unihash, data, presentcount)
if presentcount is not None:
data.delVar("BB_SETSCENE_STAMPCURRENT_COUNT")
for v in valid_ids:
valid.add(sq_task[v])
valid = self.validate_hash(sq_data, data, siginfo, currentcount)
return valid
def validate_hash(self, sq_fn, sq_task, sq_hash, sq_hashfn, siginfo, sq_unihash, d, presentcount):
locs = {"sq_fn" : sq_fn, "sq_task" : sq_task, "sq_hash" : sq_hash, "sq_hashfn" : sq_hashfn,
"sq_unihash" : sq_unihash, "siginfo" : siginfo, "d" : d}
def validate_hash(self, sq_data, d, siginfo, currentcount):
locs = {"sq_data" : sq_data, "d" : d, "siginfo" : siginfo, "currentcount" : currentcount}
# Backwards compatibility
hashvalidate_args = ("(sq_fn, sq_task, sq_hash, sq_hashfn, d, siginfo=siginfo, sq_unihash=sq_unihash)",
"(sq_fn, sq_task, sq_hash, sq_hashfn, d, siginfo=siginfo)",
"(sq_fn, sq_task, sq_hash, sq_hashfn, d)")
# Metadata has **kwargs so args can be added, sq_data can also gain new fields
call = self.hashvalidate + "(sq_data, d, siginfo=siginfo, currentcount=currentcount)"
for args in hashvalidate_args[:-1]:
try:
call = self.hashvalidate + args
return bb.utils.better_eval(call, locs)
except TypeError:
continue
# Call the last entry without a try...catch to propagate any thrown
# TypeError
call = self.hashvalidate + hashvalidate_args[-1]
return bb.utils.better_eval(call, locs)
def _execute_runqueue(self):
@@ -1460,6 +1445,7 @@ class RunQueue:
self.state = runQueueComplete
else:
self.state = runQueueSceneInit
bb.parse.siggen.save_unitaskhashes()
if self.state is runQueueSceneInit:
self.rqdata.init_progress_reporter.next_stage()
@@ -1516,6 +1502,7 @@ class RunQueue:
self.dm_event_handler_registered = False
if build_done and self.rqexe:
bb.parse.siggen.save_unitaskhashes()
self.teardown_workers()
if self.rqexe:
if self.rqexe.stats.failed:
@@ -1618,7 +1605,7 @@ class RunQueue:
tocheck.add(tid)
valid_new = self.validate_hashes(tocheck, self.cooker.data, None, True)
valid_new = self.validate_hashes(tocheck, self.cooker.data, 0, True)
# Tasks which are both setscene and noexec never care about dependencies
# We therefore find tasks which are setscene and noexec and mark their
@@ -1718,6 +1705,9 @@ class RunQueueExecute:
self.sq_running = set()
self.sq_live = set()
self.updated_taskhash_queue = []
self.pending_migrations = set()
self.runq_buildable = set()
self.runq_running = set()
self.runq_complete = set()
@@ -1729,6 +1719,8 @@ class RunQueueExecute:
self.stampcache = {}
self.holdoff_tasks = set()
self.holdoff_need_update = True
self.sqdone = False
self.stats = RunQueueStats(len(self.rqdata.runtaskentries))
@@ -1751,7 +1743,10 @@ class RunQueueExecute:
self.tasks_notcovered = set()
self.scenequeue_notneeded = set()
self.coveredtopocess = set()
# We can't skip specified target tasks which aren't setscene tasks
self.cantskip = set(self.rqdata.target_tids)
self.cantskip.difference_update(self.rqdata.runq_setscene_tids)
self.cantskip.intersection_update(self.rqdata.runtaskentries)
schedulers = self.get_schedulers()
for scheduler in schedulers:
@@ -1763,9 +1758,9 @@ class RunQueueExecute:
bb.fatal("Invalid scheduler '%s'. Available schedulers: %s" %
(self.scheduler, ", ".join(obj.name for obj in schedulers)))
if len(self.rqdata.runq_setscene_tids) > 0:
self.sqdata = SQData()
build_scenequeue_data(self.sqdata, self.rqdata, self.rq, self.cooker, self.stampcache, self)
#if len(self.rqdata.runq_setscene_tids) > 0:
self.sqdata = SQData()
build_scenequeue_data(self.sqdata, self.rqdata, self.rq, self.cooker, self.stampcache, self)
def runqueue_process_waitpid(self, task, status):
@@ -1831,6 +1826,9 @@ class RunQueueExecute:
if not self.rq.depvalidate:
return False
# Must not edit parent data
taskdeps = set(taskdeps)
taskdata = {}
taskdeps.add(task)
for dep in taskdeps:
@@ -1918,17 +1916,58 @@ class RunQueueExecute:
self.stats.taskSkipped()
self.stats.taskCompleted()
def summarise_scenequeue_errors(self):
err = False
if not self.sqdone:
logger.debug(1, 'We could skip tasks %s', "\n".join(sorted(self.scenequeue_covered)))
completeevent = sceneQueueComplete(self.sq_stats, self.rq)
bb.event.fire(completeevent, self.cfgData)
if self.sq_deferred:
logger.error("Scenequeue had deferred entries: %s" % pprint.pformat(self.sq_deferred))
err = True
if self.updated_taskhash_queue:
logger.error("Scenequeue had unprocessed changed taskhash entries: %s" % pprint.pformat(self.updated_taskhash_queue))
err = True
if self.holdoff_tasks:
logger.error("Scenequeue had holdoff tasks: %s" % pprint.pformat(self.holdoff_tasks))
err = True
for tid in self.rqdata.runq_setscene_tids:
if tid not in self.scenequeue_covered and tid not in self.scenequeue_notcovered:
err = True
logger.error("Setscene Task %s was never marked as covered or not covered" % tid)
if tid not in self.sq_buildable:
err = True
logger.error("Setscene Task %s was never marked as buildable" % tid)
if tid not in self.sq_running:
err = True
logger.error("Setscene Task %s was never marked as running" % tid)
for x in self.rqdata.runtaskentries:
if x not in self.tasks_covered and x not in self.tasks_notcovered:
logger.error("Task %s was never moved from the setscene queue" % x)
err = True
if x not in self.tasks_scenequeue_done:
logger.error("Task %s was never processed by the setscene code" % x)
err = True
if len(self.rqdata.runtaskentries[x].depends) == 0 and x not in self.runq_buildable:
logger.error("Task %s was never marked as buildable by the setscene code" % x)
err = True
return err
def execute(self):
"""
Run the tasks in a queue prepared by prepare_runqueue
"""
self.rq.read_workers()
self.process_possible_migrations()
task = None
if not self.sqdone and self.can_start_task():
# Find the next setscene to run
for nexttask in self.rqdata.runq_setscene_tids:
for nexttask in sorted(self.rqdata.runq_setscene_tids):
if nexttask in self.sq_buildable and nexttask not in self.sq_running and self.sqdata.stamps[nexttask] not in self.build_stamps.values():
if nexttask not in self.sqdata.unskippable and len(self.sqdata.sq_revdeps[nexttask]) > 0 and self.sqdata.sq_revdeps[nexttask].issubset(self.scenequeue_covered) and self.check_dependencies(nexttask, self.sqdata.sq_revdeps[nexttask]):
if nexttask not in self.rqdata.target_tids:
@@ -1938,12 +1977,16 @@ class RunQueueExecute:
if nexttask in self.sq_deferred:
del self.sq_deferred[nexttask]
return True
# If covered tasks are running, need to wait for them to complete
for t in self.sqdata.sq_covered_tasks[nexttask]:
if t in self.runq_running and t not in self.runq_complete:
continue
if nexttask in self.sq_deferred:
if self.sq_deferred[nexttask] not in self.runq_complete:
continue
logger.debug(1, "Task %s no longer deferred" % nexttask)
del self.sq_deferred[nexttask]
valid = self.rq.validate_hashes(set([nexttask]), self.cooker.data, None, False)
valid = self.rq.validate_hashes(set([nexttask]), self.cooker.data, 0, False)
if not valid:
logger.debug(1, "%s didn't become valid, skipping setscene" % nexttask)
self.sq_task_failoutright(nexttask)
@@ -2006,24 +2049,12 @@ class RunQueueExecute:
if self.can_start_task():
return True
if not self.sq_live and not self.sqdone and not self.sq_deferred:
self.update_holdofftasks()
if not self.sq_live and not self.sqdone and not self.sq_deferred and not self.updated_taskhash_queue and not self.holdoff_tasks:
logger.info("Setscene tasks completed")
logger.debug(1, 'We could skip tasks %s', "\n".join(sorted(self.scenequeue_covered)))
completeevent = sceneQueueComplete(self.sq_stats, self.rq)
bb.event.fire(completeevent, self.cfgData)
err = False
for x in self.rqdata.runtaskentries:
if x not in self.tasks_covered and x not in self.tasks_notcovered:
logger.error("Task %s was never moved from the setscene queue" % x)
err = True
if x not in self.tasks_scenequeue_done:
logger.error("Task %s was never processed by the setscene code" % x)
err = True
if len(self.rqdata.runtaskentries[x].depends) == 0 and x not in self.runq_buildable:
logger.error("Task %s was never marked as buildable by the setscene code" % x)
err = True
err = self.summarise_scenequeue_errors()
if err:
self.rq.state = runQueueFailed
return True
@@ -2119,34 +2150,42 @@ class RunQueueExecute:
return True
# Sanity Checks
err = self.summarise_scenequeue_errors()
for task in self.rqdata.runtaskentries:
if task not in self.runq_buildable:
logger.error("Task %s never buildable!", task)
err = True
elif task not in self.runq_running:
logger.error("Task %s never ran!", task)
err = True
elif task not in self.runq_complete:
logger.error("Task %s never completed!", task)
self.rq.state = runQueueComplete
err = True
if err:
self.rq.state = runQueueFailed
else:
self.rq.state = runQueueComplete
return True
def filtermcdeps(self, task, deps):
def filtermcdeps(self, task, mc, deps):
ret = set()
mainmc = mc_from_tid(task)
for dep in deps:
mc = mc_from_tid(dep)
if mc != mainmc:
thismc = mc_from_tid(dep)
if thismc != mc:
continue
ret.add(dep)
return ret
# We filter out multiconfig dependencies from taskdepdata we pass to the tasks
# We filter out multiconfig dependencies from taskdepdata we pass to the tasks
# as most code can't handle them
def build_taskdepdata(self, task):
taskdepdata = {}
next = self.rqdata.runtaskentries[task].depends
mc = mc_from_tid(task)
next = self.rqdata.runtaskentries[task].depends.copy()
next.add(task)
next = self.filtermcdeps(task, next)
next = self.filtermcdeps(task, mc, next)
while next:
additional = []
for revdep in next:
@@ -2156,7 +2195,7 @@ class RunQueueExecute:
provides = self.rqdata.dataCaches[mc].fn_provides[taskfn]
taskhash = self.rqdata.runtaskentries[revdep].hash
unihash = self.rqdata.runtaskentries[revdep].unihash
deps = self.filtermcdeps(task, deps)
deps = self.filtermcdeps(task, mc, deps)
taskdepdata[revdep] = [pn, taskname, fn, deps, provides, taskhash, unihash]
for revdep2 in deps:
if revdep2 not in taskdepdata:
@@ -2166,57 +2205,184 @@ class RunQueueExecute:
#bb.note("Task %s: " % task + str(taskdepdata).replace("], ", "],\n"))
return taskdepdata
def scenequeue_process_notcovered(self, task):
if len(self.rqdata.runtaskentries[task].depends) == 0:
self.setbuildable(task)
notcovered = set([task])
while notcovered:
new = set()
for t in notcovered:
for deptask in self.rqdata.runtaskentries[t].depends:
if deptask in notcovered or deptask in new or deptask in self.rqdata.runq_setscene_tids or deptask in self.tasks_notcovered:
continue
logger.debug(1, 'Task %s depends on non-setscene task %s so not skipping' % (t, deptask))
new.add(deptask)
self.tasks_notcovered.add(deptask)
if len(self.rqdata.runtaskentries[deptask].depends) == 0:
self.setbuildable(deptask)
notcovered = new
def update_holdofftasks(self):
def scenequeue_process_unskippable(self, task):
# Look up the dependency chain for non-setscene things which depend on this task
# and mark as 'done'/notcovered
ready = set([task])
while ready:
new = set()
for t in ready:
for deptask in self.rqdata.runtaskentries[t].revdeps:
if deptask in ready or deptask in new or deptask in self.tasks_scenequeue_done or deptask in self.rqdata.runq_setscene_tids:
continue
if self.rqdata.runtaskentries[deptask].depends.issubset(self.tasks_scenequeue_done):
new.add(deptask)
self.tasks_scenequeue_done.add(deptask)
self.tasks_notcovered.add(deptask)
#logger.warning("Up: " + str(deptask))
ready = new
if not self.holdoff_need_update:
return
notcovered = set(self.scenequeue_notcovered)
notcovered |= self.cantskip
for tid in self.scenequeue_notcovered:
notcovered |= self.sqdata.sq_covered_tasks[tid]
notcovered |= self.sqdata.unskippable.difference(self.rqdata.runq_setscene_tids)
notcovered.intersection_update(self.tasks_scenequeue_done)
covered = set(self.scenequeue_covered)
for tid in self.scenequeue_covered:
covered |= self.sqdata.sq_covered_tasks[tid]
covered.difference_update(notcovered)
covered.intersection_update(self.tasks_scenequeue_done)
for tid in notcovered | covered:
if len(self.rqdata.runtaskentries[tid].depends) == 0:
self.setbuildable(tid)
elif self.rqdata.runtaskentries[tid].depends.issubset(self.runq_complete):
self.setbuildable(tid)
self.tasks_covered = covered
self.tasks_notcovered = notcovered
self.holdoff_tasks = set()
for tid in self.rqdata.runq_setscene_tids:
if tid not in self.scenequeue_covered and tid not in self.scenequeue_notcovered:
self.holdoff_tasks.add(tid)
for tid in self.holdoff_tasks.copy():
for dep in self.sqdata.sq_covered_tasks[tid]:
if dep not in self.runq_complete:
self.holdoff_tasks.add(dep)
self.holdoff_need_update = False
def process_possible_migrations(self):
changed = set()
for tid, unihash in self.updated_taskhash_queue.copy():
if tid in self.runq_running and tid not in self.runq_complete:
continue
self.updated_taskhash_queue.remove((tid, unihash))
if unihash != self.rqdata.runtaskentries[tid].unihash:
logger.info("Task %s unihash changed to %s" % (tid, unihash))
self.rqdata.runtaskentries[tid].unihash = unihash
bb.parse.siggen.set_unihash(tid, unihash)
# Work out all tasks which depend on this one
total = set()
next = set(self.rqdata.runtaskentries[tid].revdeps)
while next:
current = next.copy()
total = total |next
next = set()
for ntid in current:
next |= self.rqdata.runtaskentries[ntid].revdeps
next.difference_update(total)
# Now iterate those tasks in dependency order to regenerate their taskhash/unihash
done = set()
next = set(self.rqdata.runtaskentries[tid].revdeps)
while next:
current = next.copy()
next = set()
for tid in current:
if not self.rqdata.runtaskentries[tid].depends.isdisjoint(total):
continue
procdep = []
for dep in self.rqdata.runtaskentries[tid].depends:
procdep.append(dep)
orighash = self.rqdata.runtaskentries[tid].hash
self.rqdata.runtaskentries[tid].hash = bb.parse.siggen.get_taskhash(tid, procdep, self.rqdata.dataCaches[mc_from_tid(tid)])
origuni = self.rqdata.runtaskentries[tid].unihash
self.rqdata.runtaskentries[tid].unihash = bb.parse.siggen.get_unihash(tid)
logger.debug(1, "Task %s hash changes: %s->%s %s->%s" % (tid, orighash, self.rqdata.runtaskentries[tid].hash, origuni, self.rqdata.runtaskentries[tid].unihash))
next |= self.rqdata.runtaskentries[tid].revdeps
changed.add(tid)
total.remove(tid)
next.intersection_update(total)
if changed:
for mc in self.rq.worker:
self.rq.worker[mc].process.stdin.write(b"<newtaskhashes>" + pickle.dumps(bb.parse.siggen.get_taskhashes()) + b"</newtaskhashes>")
for mc in self.rq.fakeworker:
self.rq.fakeworker[mc].process.stdin.write(b"<newtaskhashes>" + pickle.dumps(bb.parse.siggen.get_taskhashes()) + b"</newtaskhashes>")
logger.debug(1, pprint.pformat("Tasks changed:\n%s" % (changed)))
for tid in changed:
if tid not in self.rqdata.runq_setscene_tids:
continue
if tid in self.runq_running:
continue
if tid in self.scenequeue_covered:
# Potentially risky, should we report this hash as a match?
logger.info("Already covered setscene for %s so ignoring rehash" % (tid))
continue
if tid not in self.pending_migrations:
self.pending_migrations.add(tid)
for tid in self.pending_migrations.copy():
valid = True
# Check no tasks this covers are running
for dep in self.sqdata.sq_covered_tasks[tid]:
if dep in self.runq_running and dep not in self.runq_complete:
logger.debug(2, "Task %s is running which blocks setscene for %s from running" % (dep, tid))
valid = False
break
if not valid:
continue
self.pending_migrations.remove(tid)
changed = True
if tid in self.tasks_scenequeue_done:
self.tasks_scenequeue_done.remove(tid)
for dep in self.sqdata.sq_covered_tasks[tid]:
if dep not in self.runq_complete:
if dep in self.tasks_scenequeue_done and dep not in self.sqdata.unskippable:
self.tasks_scenequeue_done.remove(dep)
if tid in self.sq_buildable:
self.sq_buildable.remove(tid)
if tid in self.sq_running:
self.sq_running.remove(tid)
if self.sqdata.sq_revdeps[tid].issubset(self.scenequeue_covered | self.scenequeue_notcovered):
if tid not in self.sq_buildable:
self.sq_buildable.add(tid)
if len(self.sqdata.sq_revdeps[tid]) == 0:
self.sq_buildable.add(tid)
if tid in self.sqdata.outrightfail:
self.sqdata.outrightfail.remove(tid)
if tid in self.scenequeue_notcovered:
self.scenequeue_notcovered.remove(tid)
if tid in self.scenequeue_covered:
self.scenequeue_covered.remove(tid)
if tid in self.scenequeue_notneeded:
self.scenequeue_notneeded.remove(tid)
(mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
self.sqdata.stamps[tid] = bb.build.stampfile(taskname + "_setscene", self.rqdata.dataCaches[mc], taskfn, noextra=True)
if tid in self.stampcache:
del self.stampcache[tid]
if tid in self.build_stamps:
del self.build_stamps[tid]
logger.info("Setscene task %s now valid and being rerun" % tid)
self.sqdone = False
update_scenequeue_data([tid], self.sqdata, self.rqdata, self.rq, self.cooker, self.stampcache, self)
if changed:
self.holdoff_need_update = True
def scenequeue_updatecounters(self, task, fail=False):
for dep in self.sqdata.sq_deps[task]:
for dep in sorted(self.sqdata.sq_deps[task]):
if fail and task in self.sqdata.sq_harddeps and dep in self.sqdata.sq_harddeps[task]:
logger.debug(2, "%s was unavailable and is a hard dependency of %s so skipping" % (task, dep))
self.sq_task_failoutright(dep)
continue
if task not in self.sqdata.sq_revdeps2[dep]:
# May already have been removed by the fail case above
continue
self.sqdata.sq_revdeps2[dep].remove(task)
if len(self.sqdata.sq_revdeps2[dep]) == 0:
self.sq_buildable.add(dep)
if self.sqdata.sq_revdeps[dep].issubset(self.scenequeue_covered | self.scenequeue_notcovered):
if dep not in self.sq_buildable:
self.sq_buildable.add(dep)
next = set([task])
while next:
new = set()
for t in next:
for t in sorted(next):
self.tasks_scenequeue_done.add(t)
# Look down the dependency chain for non-setscene things which this task depends on
# and mark as 'done'
@@ -2225,39 +2391,9 @@ class RunQueueExecute:
continue
if self.rqdata.runtaskentries[dep].revdeps.issubset(self.tasks_scenequeue_done):
new.add(dep)
#logger.warning(" Down: " + dep)
next = new
if task in self.sqdata.unskippable:
self.scenequeue_process_unskippable(task)
if task in self.scenequeue_notcovered:
logger.debug(1, 'Not skipping setscene task %s', task)
self.scenequeue_process_notcovered(task)
elif task in self.scenequeue_covered:
logger.debug(1, 'Queued setscene task %s', task)
self.coveredtopocess.add(task)
for task in self.coveredtopocess.copy():
if self.sqdata.sq_covered_tasks[task].issubset(self.tasks_scenequeue_done):
logger.debug(1, 'Processing setscene task %s', task)
covered = self.sqdata.sq_covered_tasks[task]
covered.add(task)
# If a task is in target_tids and isn't a setscene task, we can't skip it.
cantskip = covered.intersection(self.rqdata.target_tids).difference(self.rqdata.runq_setscene_tids)
for tid in cantskip:
self.tasks_notcovered.add(tid)
self.scenequeue_process_notcovered(tid)
covered.difference_update(cantskip)
# Remove notcovered tasks
covered.difference_update(self.tasks_notcovered)
self.tasks_covered.update(covered)
self.coveredtopocess.remove(task)
for tid in covered:
if len(self.rqdata.runtaskentries[tid].depends) == 0:
self.setbuildable(tid)
self.holdoff_need_update = True
def sq_task_completeoutright(self, task):
"""
@@ -2268,7 +2404,6 @@ class RunQueueExecute:
logger.debug(1, 'Found task %s which could be accelerated', task)
self.scenequeue_covered.add(task)
self.tasks_covered.add(task)
self.scenequeue_updatecounters(task)
def sq_check_taskfail(self, task):
@@ -2289,7 +2424,6 @@ class RunQueueExecute:
self.sq_stats.taskFailed()
bb.event.fire(sceneQueueTaskFailed(task, self.sq_stats, result, self), self.cfgData)
self.scenequeue_notcovered.add(task)
self.tasks_notcovered.add(task)
self.scenequeue_updatecounters(task, True)
self.sq_check_taskfail(task)
@@ -2299,7 +2433,6 @@ class RunQueueExecute:
self.sq_stats.taskSkipped()
self.sq_stats.taskCompleted()
self.scenequeue_notcovered.add(task)
self.tasks_notcovered.add(task)
self.scenequeue_updatecounters(task, True)
def sq_task_skip(self, task):
@@ -2377,8 +2510,6 @@ class SQData(object):
self.sq_deps = {}
# SceneQueue reverse dependencies
self.sq_revdeps = {}
# Copy of reverse dependencies used by sq processing code
self.sq_revdeps2 = {}
# Injected inter-setscene task dependencies
self.sq_harddeps = {}
# Cache of stamp files so duplicates can't run in parallel
@@ -2458,27 +2589,28 @@ def build_scenequeue_data(sqdata, rqdata, rq, cooker, stampcache, sqrq):
rqdata.init_progress_reporter.next_stage()
# Build a list of setscene tasks which are "unskippable"
# These are direct endpoints referenced by the build
# Build a list of tasks which are "unskippable"
# These are direct endpoints referenced by the build upto and including setscene tasks
# Take the build endpoints (no revdeps) and find the sstate tasks they depend upon
new = True
for tid in rqdata.runtaskentries:
if len(rqdata.runtaskentries[tid].revdeps) == 0:
sqdata.unskippable.add(tid)
sqdata.unskippable |= sqrq.cantskip
while new:
new = False
for tid in sqdata.unskippable.copy():
orig = sqdata.unskippable.copy()
for tid in sorted(orig, reverse=True):
if tid in rqdata.runq_setscene_tids:
continue
sqdata.unskippable.remove(tid)
if len(rqdata.runtaskentries[tid].depends) == 0:
# These are tasks which have no setscene tasks in their chain, need to mark as directly buildable
sqrq.tasks_notcovered.add(tid)
sqrq.tasks_scenequeue_done.add(tid)
sqrq.setbuildable(tid)
sqrq.scenequeue_process_unskippable(tid)
sqdata.unskippable |= rqdata.runtaskentries[tid].depends
new = True
if sqdata.unskippable != orig:
new = True
sqrq.tasks_scenequeue_done |= sqdata.unskippable.difference(rqdata.runq_setscene_tids)
rqdata.init_progress_reporter.next_stage(len(rqdata.runtaskentries))
@@ -2537,7 +2669,6 @@ def build_scenequeue_data(sqdata, rqdata, rq, cooker, stampcache, sqrq):
# bb.warn("Task %s_setscene: is %s " % (tid, data))
sqdata.sq_revdeps = sq_revdeps_squash
sqdata.sq_revdeps2 = copy.deepcopy(sqdata.sq_revdeps)
sqdata.sq_covered_tasks = sq_collated_deps
# Build reverse version of revdeps to populate deps structure
@@ -2549,64 +2680,77 @@ def build_scenequeue_data(sqdata, rqdata, rq, cooker, stampcache, sqrq):
rqdata.init_progress_reporter.next_stage()
multiconfigs = set()
sqdata.multiconfigs = set()
for tid in sqdata.sq_revdeps:
multiconfigs.add(mc_from_tid(tid))
sqdata.multiconfigs.add(mc_from_tid(tid))
if len(sqdata.sq_revdeps[tid]) == 0:
sqrq.sq_buildable.add(tid)
rqdata.init_progress_reporter.finish()
if rq.hashvalidate:
noexec = []
stamppresent = []
tocheck = set()
sqdata.noexec = set()
sqdata.stamppresent = set()
sqdata.valid = set()
for tid in sqdata.sq_revdeps:
(mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
update_scenequeue_data(sqdata.sq_revdeps, sqdata, rqdata, rq, cooker, stampcache, sqrq)
taskdep = rqdata.dataCaches[mc].task_deps[taskfn]
def update_scenequeue_data(tids, sqdata, rqdata, rq, cooker, stampcache, sqrq):
if 'noexec' in taskdep and taskname in taskdep['noexec']:
noexec.append(tid)
sqrq.sq_task_skip(tid)
bb.build.make_stamp(taskname + "_setscene", rqdata.dataCaches[mc], taskfn)
continue
tocheck = set()
if rq.check_stamp_task(tid, taskname + "_setscene", cache=stampcache):
logger.debug(2, 'Setscene stamp current for task %s', tid)
stamppresent.append(tid)
sqrq.sq_task_skip(tid)
continue
for tid in sorted(tids):
if tid in sqdata.stamppresent:
sqdata.stamppresent.remove(tid)
if tid in sqdata.valid:
sqdata.valid.remove(tid)
if rq.check_stamp_task(tid, taskname, recurse = True, cache=stampcache):
logger.debug(2, 'Normal stamp current for task %s', tid)
stamppresent.append(tid)
sqrq.sq_task_skip(tid)
continue
(mc, fn, taskname, taskfn) = split_tid_mcfn(tid)
tocheck.add(tid)
taskdep = rqdata.dataCaches[mc].task_deps[taskfn]
valid = rq.validate_hashes(tocheck, cooker.data, len(stamppresent), False)
if 'noexec' in taskdep and taskname in taskdep['noexec']:
sqdata.noexec.add(tid)
sqrq.sq_task_skip(tid)
bb.build.make_stamp(taskname + "_setscene", rqdata.dataCaches[mc], taskfn)
continue
valid_new = stamppresent
for v in valid:
valid_new.append(v)
if rq.check_stamp_task(tid, taskname + "_setscene", cache=stampcache):
logger.debug(2, 'Setscene stamp current for task %s', tid)
sqdata.stamppresent.add(tid)
sqrq.sq_task_skip(tid)
continue
hashes = {}
for mc in sorted(multiconfigs):
for tid in sqdata.sq_revdeps:
if rq.check_stamp_task(tid, taskname, recurse = True, cache=stampcache):
logger.debug(2, 'Normal stamp current for task %s', tid)
sqdata.stamppresent.add(tid)
sqrq.sq_task_skip(tid)
continue
tocheck.add(tid)
sqdata.valid |= rq.validate_hashes(tocheck, cooker.data, len(sqdata.stamppresent), False)
sqdata.hashes = {}
for mc in sorted(sqdata.multiconfigs):
for tid in sorted(sqdata.sq_revdeps):
if mc_from_tid(tid) != mc:
continue
if tid not in valid_new and tid not in noexec and tid not in sqrq.scenequeue_notcovered:
sqdata.outrightfail.add(tid)
if tid in sqdata.stamppresent:
continue
if tid in sqdata.valid:
continue
if tid in sqdata.noexec:
continue
if tid in sqrq.scenequeue_notcovered:
continue
sqdata.outrightfail.add(tid)
h = pending_hash_index(tid, rqdata)
if h not in hashes:
hashes[h] = tid
else:
sqrq.sq_deferred[tid] = hashes[h]
bb.warn("Deferring %s after %s" % (tid, hashes[h]))
h = pending_hash_index(tid, rqdata)
if h not in sqdata.hashes:
sqdata.hashes[h] = tid
else:
sqrq.sq_deferred[tid] = sqdata.hashes[h]
bb.warn("Deferring %s after %s" % (tid, sqdata.hashes[h]))
class TaskFailure(Exception):
@@ -2715,6 +2859,15 @@ class runQueueTaskSkipped(runQueueEvent):
runQueueEvent.__init__(self, task, stats, rq)
self.reason = reason
class taskUniHashUpdate(bb.event.Event):
"""
Base runQueue event class
"""
def __init__(self, task, unihash):
self.taskid = task
self.unihash = unihash
bb.event.Event.__init__(self)
class runQueuePipe():
"""
Abstraction for a pipe between a worker thread and the server
@@ -2757,6 +2910,8 @@ class runQueuePipe():
except ValueError as e:
bb.msg.fatal("RunQueue", "failed load pickle '%s': '%s'" % (e, self.queue[7:index]))
bb.event.fire_from_worker(event, self.d)
if isinstance(event, taskUniHashUpdate):
self.rqexec.updated_taskhash_queue.append((event.taskid, event.unihash))
found = True
self.queue = self.queue[index+8:]
index = self.queue.find(b"</event>")

View File

@@ -456,7 +456,10 @@ class BitBakeServer(object):
self.configuration.setServerRegIdleCallback(server.register_idle_function)
os.close(self.readypipe)
writer = ConnectionWriter(self.readypipein)
self.cooker = bb.cooker.BBCooker(self.configuration, self.featureset)
try:
self.cooker = bb.cooker.BBCooker(self.configuration, self.featureset)
except bb.BBHandledException:
return None
writer.send("r")
writer.close()
server.cooker = self.cooker

View File

@@ -12,6 +12,8 @@ import bb.data
import difflib
import simplediff
from bb.checksum import FileChecksumCache
from bb import runqueue
import hashserv
logger = logging.getLogger('BitBake.SigGen')
@@ -41,17 +43,18 @@ class SignatureGenerator(object):
self.runtaskdeps = {}
self.file_checksum_values = {}
self.taints = {}
self.unitaskhashes = {}
self.setscenetasks = {}
def finalise(self, fn, d, varient):
return
def get_unihash(self, task):
return self.taskhash[task]
def get_unihash(self, tid):
return self.taskhash[tid]
def get_taskhash(self, fn, task, deps, dataCache):
k = fn + "." + task
self.taskhash[k] = hashlib.sha256(k.encode("utf-8")).hexdigest()
return self.taskhash[k]
def get_taskhash(self, tid, deps, dataCache):
self.taskhash[tid] = hashlib.sha256(tid.encode("utf-8")).hexdigest()
return self.taskhash[tid]
def writeout_file_checksum_cache(self):
"""Write/update the file checksum cache onto disk"""
@@ -73,14 +76,25 @@ class SignatureGenerator(object):
return
def get_taskdata(self):
return (self.runtaskdeps, self.taskhash, self.file_checksum_values, self.taints, self.basehash)
return (self.runtaskdeps, self.taskhash, self.file_checksum_values, self.taints, self.basehash, self.unitaskhashes, self.setscenetasks)
def set_taskdata(self, data):
self.runtaskdeps, self.taskhash, self.file_checksum_values, self.taints, self.basehash = data
self.runtaskdeps, self.taskhash, self.file_checksum_values, self.taints, self.basehash, self.unitaskhashes, self.setscenetasks = data
def reset(self, data):
self.__init__(data)
def get_taskhashes(self):
return self.taskhash, self.unitaskhashes
def set_taskhashes(self, hashes):
self.taskhash, self.unitaskhashes = hashes
def save_unitaskhashes(self):
return
def set_setscene_tasks(self, setscene_tasks):
return
class SignatureGeneratorBasic(SignatureGenerator):
"""
@@ -96,7 +110,7 @@ class SignatureGeneratorBasic(SignatureGenerator):
self.taints = {}
self.gendeps = {}
self.lookupcache = {}
self.pkgnameextract = re.compile(r"(?P<fn>.*)\..*")
self.setscenetasks = {}
self.basewhitelist = set((data.getVar("BB_HASHBASE_WHITELIST") or "").split())
self.taskwhitelist = None
self.init_rundepcheck(data)
@@ -107,6 +121,9 @@ class SignatureGeneratorBasic(SignatureGenerator):
else:
self.checksum_cache = None
self.unihash_cache = bb.cache.SimpleCache("1")
self.unitaskhashes = self.unihash_cache.init_cache(data, "bb_unihashes.dat", {})
def init_rundepcheck(self, data):
self.taskwhitelist = data.getVar("BB_HASHTASK_WHITELIST") or None
if self.taskwhitelist:
@@ -122,16 +139,16 @@ class SignatureGeneratorBasic(SignatureGenerator):
taskdeps, basehash = bb.data.generate_dependency_hash(tasklist, gendeps, lookupcache, self.basewhitelist, fn)
for task in tasklist:
k = fn + "." + task
if not ignore_mismatch and k in self.basehash and self.basehash[k] != basehash[k]:
bb.error("When reparsing %s, the basehash value changed from %s to %s. The metadata is not deterministic and this needs to be fixed." % (k, self.basehash[k], basehash[k]))
tid = fn + ":" + task
if not ignore_mismatch and tid in self.basehash and self.basehash[tid] != basehash[tid]:
bb.error("When reparsing %s, the basehash value changed from %s to %s. The metadata is not deterministic and this needs to be fixed." % (tid, self.basehash[tid], basehash[tid]))
bb.error("The following commands may help:")
cmd = "$ bitbake %s -c%s" % (d.getVar('PN'), task)
# Make sure sigdata is dumped before run printdiff
bb.error("%s -Snone" % cmd)
bb.error("Then:")
bb.error("%s -Sprintdiff\n" % cmd)
self.basehash[k] = basehash[k]
self.basehash[tid] = basehash[tid]
self.taskdeps[fn] = taskdeps
self.gendeps[fn] = gendeps
@@ -139,6 +156,9 @@ class SignatureGeneratorBasic(SignatureGenerator):
return taskdeps
def set_setscene_tasks(self, setscene_tasks):
self.setscenetasks = setscene_tasks
def finalise(self, fn, d, variant):
mc = d.getVar("__BBMULTICONFIG", False) or ""
@@ -158,7 +178,7 @@ class SignatureGeneratorBasic(SignatureGenerator):
# self.dump_sigtask(fn, task, d.getVar("STAMP"), False)
for task in taskdeps:
d.setVar("BB_BASEHASH_task-%s" % task, self.basehash[fn + "." + task])
d.setVar("BB_BASEHASH_task-%s" % task, self.basehash[fn + ":" + task])
def rundep_check(self, fn, recipename, task, dep, depname, dataCache):
# Return True if we should keep the dependency, False to drop it
@@ -178,33 +198,26 @@ class SignatureGeneratorBasic(SignatureGenerator):
pass
return taint
def get_taskhash(self, fn, task, deps, dataCache):
def get_taskhash(self, tid, deps, dataCache):
mc = ''
if fn.startswith('mc:'):
mc = fn.split(':')[1]
k = fn + "." + task
(mc, _, task, fn) = bb.runqueue.split_tid_mcfn(tid)
data = dataCache.basetaskhash[k]
self.basehash[k] = data
self.runtaskdeps[k] = []
self.file_checksum_values[k] = []
data = dataCache.basetaskhash[tid]
self.basehash[tid] = data
self.runtaskdeps[tid] = []
self.file_checksum_values[tid] = []
recipename = dataCache.pkg_fn[fn]
for dep in sorted(deps, key=clean_basepath):
pkgname = self.pkgnameextract.search(dep).group('fn')
if mc:
depmc = pkgname.split(':')[1]
if mc != depmc:
continue
if dep.startswith("mc:") and not mc:
(depmc, _, deptaskname, depfn) = bb.runqueue.split_tid_mcfn(dep)
if mc != depmc:
continue
depname = dataCache.pkg_fn[pkgname]
depname = dataCache.pkg_fn[depfn]
if not self.rundep_check(fn, recipename, task, dep, depname, dataCache):
continue
if dep not in self.taskhash:
bb.fatal("%s is not in taskhash, caller isn't calling in dependency order?" % dep)
data = data + self.get_unihash(dep)
self.runtaskdeps[k].append(dep)
self.runtaskdeps[tid].append(dep)
if task in dataCache.file_checksums[fn]:
if self.checksum_cache:
@@ -212,7 +225,7 @@ class SignatureGeneratorBasic(SignatureGenerator):
else:
checksums = bb.fetch2.get_file_checksums(dataCache.file_checksums[fn][task], recipename)
for (f,cs) in checksums:
self.file_checksum_values[k].append((f,cs))
self.file_checksum_values[tid].append((f,cs))
if cs:
data = data + cs
@@ -222,16 +235,16 @@ class SignatureGeneratorBasic(SignatureGenerator):
import uuid
taint = str(uuid.uuid4())
data = data + taint
self.taints[k] = "nostamp:" + taint
self.taints[tid] = "nostamp:" + taint
taint = self.read_taint(fn, task, dataCache.stamp[fn])
if taint:
data = data + taint
self.taints[k] = taint
logger.warning("%s is tainted from a forced run" % k)
self.taints[tid] = taint
logger.warning("%s is tainted from a forced run" % tid)
h = hashlib.sha256(data.encode("utf-8")).hexdigest()
self.taskhash[k] = h
self.taskhash[tid] = h
#d.setVar("BB_TASKHASH_task-%s" % task, taskhash[task])
return h
@@ -244,17 +257,20 @@ class SignatureGeneratorBasic(SignatureGenerator):
bb.fetch2.fetcher_parse_save()
bb.fetch2.fetcher_parse_done()
def save_unitaskhashes(self):
self.unihash_cache.save(self.unitaskhashes)
def dump_sigtask(self, fn, task, stampbase, runtime):
k = fn + "." + task
tid = fn + ":" + task
referencestamp = stampbase
if isinstance(runtime, str) and runtime.startswith("customfile"):
sigfile = stampbase
referencestamp = runtime[11:]
elif runtime and k in self.taskhash:
sigfile = stampbase + "." + task + ".sigdata" + "." + self.taskhash[k]
elif runtime and tid in self.taskhash:
sigfile = stampbase + "." + task + ".sigdata" + "." + self.get_unihash(tid)
else:
sigfile = stampbase + "." + task + ".sigbasedata" + "." + self.basehash[k]
sigfile = stampbase + "." + task + ".sigbasedata" + "." + self.basehash[tid]
bb.utils.mkdirhier(os.path.dirname(sigfile))
@@ -263,7 +279,7 @@ class SignatureGeneratorBasic(SignatureGenerator):
data['basewhitelist'] = self.basewhitelist
data['taskwhitelist'] = self.taskwhitelist
data['taskdeps'] = self.taskdeps[fn][task]
data['basehash'] = self.basehash[k]
data['basehash'] = self.basehash[tid]
data['gendeps'] = {}
data['varvals'] = {}
data['varvals'][task] = self.lookupcache[fn][task]
@@ -273,30 +289,31 @@ class SignatureGeneratorBasic(SignatureGenerator):
data['gendeps'][dep] = self.gendeps[fn][dep]
data['varvals'][dep] = self.lookupcache[fn][dep]
if runtime and k in self.taskhash:
data['runtaskdeps'] = self.runtaskdeps[k]
data['file_checksum_values'] = [(os.path.basename(f), cs) for f,cs in self.file_checksum_values[k]]
if runtime and tid in self.taskhash:
data['runtaskdeps'] = self.runtaskdeps[tid]
data['file_checksum_values'] = [(os.path.basename(f), cs) for f,cs in self.file_checksum_values[tid]]
data['runtaskhashes'] = {}
for dep in data['runtaskdeps']:
data['runtaskhashes'][dep] = self.get_unihash(dep)
data['taskhash'] = self.taskhash[k]
data['taskhash'] = self.taskhash[tid]
data['unihash'] = self.get_unihash(tid)
taint = self.read_taint(fn, task, referencestamp)
if taint:
data['taint'] = taint
if runtime and k in self.taints:
if 'nostamp:' in self.taints[k]:
data['taint'] = self.taints[k]
if runtime and tid in self.taints:
if 'nostamp:' in self.taints[tid]:
data['taint'] = self.taints[tid]
computed_basehash = calc_basehash(data)
if computed_basehash != self.basehash[k]:
bb.error("Basehash mismatch %s versus %s for %s" % (computed_basehash, self.basehash[k], k))
if runtime and k in self.taskhash:
if computed_basehash != self.basehash[tid]:
bb.error("Basehash mismatch %s versus %s for %s" % (computed_basehash, self.basehash[tid], tid))
if runtime and tid in self.taskhash:
computed_taskhash = calc_taskhash(data)
if computed_taskhash != self.taskhash[k]:
bb.error("Taskhash mismatch %s versus %s for %s" % (computed_taskhash, self.taskhash[k], k))
sigfile = sigfile.replace(self.taskhash[k], computed_taskhash)
if computed_taskhash != self.taskhash[tid]:
bb.error("Taskhash mismatch %s versus %s for %s" % (computed_taskhash, self.taskhash[tid], tid))
sigfile = sigfile.replace(self.taskhash[tid], computed_taskhash)
fd, tmpfile = tempfile.mkstemp(dir=os.path.dirname(sigfile), prefix="sigtask.")
try:
@@ -316,34 +333,33 @@ class SignatureGeneratorBasic(SignatureGenerator):
if fn in self.taskdeps:
for task in self.taskdeps[fn]:
tid = fn + ":" + task
(mc, _, _) = bb.runqueue.split_tid(tid)
k = fn + "." + task
if k not in self.taskhash:
mc = bb.runqueue.mc_from_tid(tid)
if tid not in self.taskhash:
continue
if dataCaches[mc].basetaskhash[k] != self.basehash[k]:
bb.error("Bitbake's cached basehash does not match the one we just generated (%s)!" % k)
bb.error("The mismatched hashes were %s and %s" % (dataCaches[mc].basetaskhash[k], self.basehash[k]))
if dataCaches[mc].basetaskhash[tid] != self.basehash[tid]:
bb.error("Bitbake's cached basehash does not match the one we just generated (%s)!" % tid)
bb.error("The mismatched hashes were %s and %s" % (dataCaches[mc].basetaskhash[tid], self.basehash[tid]))
self.dump_sigtask(fn, task, dataCaches[mc].stamp[fn], True)
class SignatureGeneratorBasicHash(SignatureGeneratorBasic):
name = "basichash"
def get_stampfile_hash(self, task):
if task in self.taskhash:
return self.taskhash[task]
def get_stampfile_hash(self, tid):
if tid in self.taskhash:
return self.taskhash[tid]
# If task is not in basehash, then error
return self.basehash[task]
return self.basehash[tid]
def stampfile(self, stampbase, fn, taskname, extrainfo, clean=False):
if taskname != "do_setscene" and taskname.endswith("_setscene"):
k = fn + "." + taskname[:-9]
tid = fn + ":" + taskname[:-9]
else:
k = fn + "." + taskname
tid = fn + ":" + taskname
if clean:
h = "*"
else:
h = self.get_stampfile_hash(k)
h = self.get_stampfile_hash(tid)
return ("%s.%s.%s.%s" % (stampbase, taskname, h, extrainfo)).rstrip('.')
@@ -354,6 +370,172 @@ class SignatureGeneratorBasicHash(SignatureGeneratorBasic):
bb.note("Tainting hash to force rebuild of task %s, %s" % (fn, task))
bb.build.write_taint(task, d, fn)
class SignatureGeneratorUniHashMixIn(object):
def get_taskdata(self):
return (self.server, self.method) + super().get_taskdata()
def set_taskdata(self, data):
self.server, self.method = data[:2]
super().set_taskdata(data[2:])
def client(self):
if getattr(self, '_client', None) is None:
self._client = hashserv.create_client(self.server)
return self._client
def __get_task_unihash_key(self, tid):
# TODO: The key only *needs* to be the taskhash, the tid is just
# convenient
return '%s:%s' % (tid.rsplit("/", 1)[1], self.taskhash[tid])
def get_stampfile_hash(self, tid):
if tid in self.taskhash:
# If a unique hash is reported, use it as the stampfile hash. This
# ensures that if a task won't be re-run if the taskhash changes,
# but it would result in the same output hash
unihash = self.unitaskhashes.get(self.__get_task_unihash_key(tid), None)
if unihash is not None:
return unihash
return super().get_stampfile_hash(tid)
def set_unihash(self, tid, unihash):
self.unitaskhashes[self.__get_task_unihash_key(tid)] = unihash
def get_unihash(self, tid):
taskhash = self.taskhash[tid]
# If its not a setscene task we can return
if self.setscenetasks and tid not in self.setscenetasks:
return taskhash
key = self.__get_task_unihash_key(tid)
# TODO: This cache can grow unbounded. It probably only needs to keep
# for each task
unihash = self.unitaskhashes.get(key, None)
if unihash is not None:
return unihash
# In the absence of being able to discover a unique hash from the
# server, make it be equivalent to the taskhash. The unique "hash" only
# really needs to be a unique string (not even necessarily a hash), but
# making it match the taskhash has a few advantages:
#
# 1) All of the sstate code that assumes hashes can be the same
# 2) It provides maximal compatibility with builders that don't use
# an equivalency server
# 3) The value is easy for multiple independent builders to derive the
# same unique hash from the same input. This means that if the
# independent builders find the same taskhash, but it isn't reported
# to the server, there is a better chance that they will agree on
# the unique hash.
unihash = taskhash
try:
data = self.client().get_unihash(self.method, self.taskhash[tid])
if data:
unihash = data
# A unique hash equal to the taskhash is not very interesting,
# so it is reported it at debug level 2. If they differ, that
# is much more interesting, so it is reported at debug level 1
bb.debug((1, 2)[unihash == taskhash], 'Found unihash %s in place of %s for %s from %s' % (unihash, taskhash, tid, self.server))
else:
bb.debug(2, 'No reported unihash for %s:%s from %s' % (tid, taskhash, self.server))
except hashserv.client.HashConnectionError as e:
bb.warn('Error contacting Hash Equivalence Server %s: %s' % (self.server, str(e)))
self.unitaskhashes[key] = unihash
return unihash
def report_unihash(self, path, task, d):
import importlib
taskhash = d.getVar('BB_TASKHASH')
unihash = d.getVar('BB_UNIHASH')
report_taskdata = d.getVar('SSTATE_HASHEQUIV_REPORT_TASKDATA') == '1'
tempdir = d.getVar('T')
fn = d.getVar('BB_FILENAME')
tid = fn + ':do_' + task
key = tid.rsplit("/", 1)[1] + ':' + taskhash
if self.setscenetasks and tid not in self.setscenetasks:
return
# Sanity checks
cache_unihash = self.unitaskhashes.get(key, None)
if cache_unihash is None:
bb.fatal('%s not in unihash cache. Please report this error' % key)
if cache_unihash != unihash:
bb.fatal("Cache unihash %s doesn't match BB_UNIHASH %s" % (cache_unihash, unihash))
sigfile = None
sigfile_name = "depsig.do_%s.%d" % (task, os.getpid())
sigfile_link = "depsig.do_%s" % task
try:
sigfile = open(os.path.join(tempdir, sigfile_name), 'w+b')
locs = {'path': path, 'sigfile': sigfile, 'task': task, 'd': d}
if "." in self.method:
(module, method) = self.method.rsplit('.', 1)
locs['method'] = getattr(importlib.import_module(module), method)
outhash = bb.utils.better_eval('method(path, sigfile, task, d)', locs)
else:
outhash = bb.utils.better_eval(self.method + '(path, sigfile, task, d)', locs)
try:
extra_data = {}
owner = d.getVar('SSTATE_HASHEQUIV_OWNER')
if owner:
extra_data['owner'] = owner
if report_taskdata:
sigfile.seek(0)
extra_data['PN'] = d.getVar('PN')
extra_data['PV'] = d.getVar('PV')
extra_data['PR'] = d.getVar('PR')
extra_data['task'] = task
extra_data['outhash_siginfo'] = sigfile.read().decode('utf-8')
data = self.client().report_unihash(taskhash, self.method, outhash, unihash, extra_data)
new_unihash = data['unihash']
if new_unihash != unihash:
bb.debug(1, 'Task %s unihash changed %s -> %s by server %s' % (taskhash, unihash, new_unihash, self.server))
bb.event.fire(bb.runqueue.taskUniHashUpdate(fn + ':do_' + task, new_unihash), d)
else:
bb.debug(1, 'Reported task %s as unihash %s to %s' % (taskhash, unihash, self.server))
except hashserv.client.HashConnectionError as e:
bb.warn('Error contacting Hash Equivalence Server %s: %s' % (self.server, str(e)))
finally:
if sigfile:
sigfile.close()
sigfile_link_path = os.path.join(tempdir, sigfile_link)
bb.utils.remove(sigfile_link_path)
try:
os.symlink(sigfile_name, sigfile_link_path)
except OSError:
pass
#
# Dummy class used for bitbake-selftest
#
class SignatureGeneratorTestEquivHash(SignatureGeneratorUniHashMixIn, SignatureGeneratorBasicHash):
name = "TestEquivHash"
def init_rundepcheck(self, data):
super().init_rundepcheck(data)
self.server = data.getVar('BB_HASHSERVE')
self.method = "sstate_output_hash"
def dump_this_task(outfile, d):
import bb.parse
fn = d.getVar("BB_FILENAME")

View File

@@ -381,6 +381,19 @@ class TestOverrides(unittest.TestCase):
self.d.setVar("OVERRIDES", "foo:bar:some_val")
self.assertEqual(self.d.getVar("TEST"), " testvalue5")
def test_append_and_override_1(self):
self.d.setVar("TEST_append", "testvalue2")
self.d.setVar("TEST_bar", "testvalue3")
self.assertEqual(self.d.getVar("TEST"), "testvalue3testvalue2")
def test_append_and_override_2(self):
self.d.setVar("TEST_append_bar", "testvalue2")
self.assertEqual(self.d.getVar("TEST"), "testvaluetestvalue2")
def test_append_and_override_3(self):
self.d.setVar("TEST_bar_append", "testvalue2")
self.assertEqual(self.d.getVar("TEST"), "testvalue2")
# Test an override with _<numeric> in it based on a real world OE issue
def test_underscore_override(self):
self.d.setVar("TARGET_ARCH", "x86_64")
@@ -466,7 +479,7 @@ class TaskHash(unittest.TestCase):
tasklist, gendeps, lookupcache = bb.data.generate_dependencies(d)
taskdeps, basehash = bb.data.generate_dependency_hash(tasklist, gendeps, lookupcache, set(), "somefile")
bb.warn(str(lookupcache))
return basehash["somefile." + taskname]
return basehash["somefile:" + taskname]
d = bb.data.init()
d.setVar("__BBTASKS", ["mytask"])

View File

@@ -1200,8 +1200,8 @@ class FetchLatestVersionTest(FetcherTest):
# packages with valid UPSTREAM_CHECK_URI and UPSTREAM_CHECK_REGEX
("cups", "http://www.cups.org/software/1.7.2/cups-1.7.2-source.tar.bz2", "https://github.com/apple/cups/releases", "(?P<name>cups\-)(?P<pver>((\d+[\.\-_]*)+))\-source\.tar\.gz")
: "2.0.0",
("db", "http://download.oracle.com/berkeley-db/db-5.3.21.tar.gz", "http://www.oracle.com/technetwork/products/berkeleydb/downloads/index-082944.html", "http://download.oracle.com/otn/berkeley-db/(?P<name>db-)(?P<pver>((\d+[\.\-_]*)+))\.tar\.gz")
: "6.1.19",
("db", "http://download.oracle.com/berkeley-db/db-5.3.21.tar.gz", "http://ftp.debian.org/debian/pool/main/d/db5.3/", "(?P<name>db5\.3_)(?P<pver>\d+(\.\d+)+).+\.orig\.tar\.xz")
: "5.3.10",
}
@skipIfNoNetwork()
@@ -1908,3 +1908,83 @@ class GitShallowTest(FetcherTest):
dir = os.listdir(self.unpackdir + "/git/")
self.assertIn("fstests.doap", dir)
class GitLfsTest(FetcherTest):
def setUp(self):
FetcherTest.setUp(self)
self.gitdir = os.path.join(self.tempdir, 'git')
self.srcdir = os.path.join(self.tempdir, 'gitsource')
self.d.setVar('WORKDIR', self.tempdir)
self.d.setVar('S', self.gitdir)
self.d.delVar('PREMIRRORS')
self.d.delVar('MIRRORS')
self.d.setVar('SRCREV', '${AUTOREV}')
self.d.setVar('AUTOREV', '${@bb.fetch2.get_autorev(d)}')
bb.utils.mkdirhier(self.srcdir)
self.git('init', cwd=self.srcdir)
with open(os.path.join(self.srcdir, '.gitattributes'), 'wt') as attrs:
attrs.write('*.mp3 filter=lfs -text')
self.git(['add', '.gitattributes'], cwd=self.srcdir)
self.git(['commit', '-m', "attributes", '.gitattributes'], cwd=self.srcdir)
def git(self, cmd, cwd=None):
if isinstance(cmd, str):
cmd = 'git ' + cmd
else:
cmd = ['git'] + cmd
if cwd is None:
cwd = self.gitdir
return bb.process.run(cmd, cwd=cwd)[0]
def fetch(self, uri=None):
uris = self.d.getVar('SRC_URI').split()
uri = uris[0]
d = self.d
fetcher = bb.fetch2.Fetch(uris, d)
fetcher.download()
ud = fetcher.ud[uri]
return fetcher, ud
def test_lfs_enabled(self):
import shutil
uri = 'git://%s;protocol=file;subdir=${S};lfs=1' % self.srcdir
self.d.setVar('SRC_URI', uri)
fetcher, ud = self.fetch()
self.assertIsNotNone(ud.method._find_git_lfs)
# If git-lfs can be found, the unpack should be successful
ud.method._find_git_lfs = lambda d: True
shutil.rmtree(self.gitdir, ignore_errors=True)
fetcher.unpack(self.d.getVar('WORKDIR'))
# If git-lfs cannot be found, the unpack should throw an error
with self.assertRaises(bb.fetch2.FetchError):
ud.method._find_git_lfs = lambda d: False
shutil.rmtree(self.gitdir, ignore_errors=True)
fetcher.unpack(self.d.getVar('WORKDIR'))
def test_lfs_disabled(self):
import shutil
uri = 'git://%s;protocol=file;subdir=${S};lfs=0' % self.srcdir
self.d.setVar('SRC_URI', uri)
fetcher, ud = self.fetch()
self.assertIsNotNone(ud.method._find_git_lfs)
# If git-lfs can be found, the unpack should be successful
ud.method._find_git_lfs = lambda d: True
shutil.rmtree(self.gitdir, ignore_errors=True)
fetcher.unpack(self.d.getVar('WORKDIR'))
# If git-lfs cannot be found, the unpack should be successful
ud.method._find_git_lfs = lambda d: False
shutil.rmtree(self.gitdir, ignore_errors=True)
fetcher.unpack(self.d.getVar('WORKDIR'))

View File

@@ -5,18 +5,30 @@ def stamptask(d):
import time
thistask = d.expand("${PN}:${BB_CURRENTTASK}")
with open(d.expand("${TOPDIR}/%s.run") % thistask, "a+") as f:
f.write("\n")
stampname = d.expand("${TOPDIR}/%s.run" % thistask)
with open(stampname, "a+") as f:
f.write(d.getVar("BB_UNIHASH") + "\n")
if d.getVar("BB_CURRENT_MC") != "default":
thistask = d.expand("${BB_CURRENT_MC}:${PN}:${BB_CURRENTTASK}")
if thistask in d.getVar("SLOWTASKS").split():
bb.note("Slowing task %s" % thistask)
time.sleep(0.5)
if d.getVar("BB_HASHSERVE"):
task = d.getVar("BB_CURRENTTASK")
if task in ['package', 'package_qa', 'packagedata', 'package_write_ipk', 'package_write_rpm', 'populate_lic', 'populate_sysroot']:
bb.parse.siggen.report_unihash(os.getcwd(), d.getVar("BB_CURRENTTASK"), d)
with open(d.expand("${TOPDIR}/task.log"), "a+") as f:
f.write(thistask + "\n")
def sstate_output_hash(path, sigfile, task, d):
import hashlib
h = hashlib.sha256()
h.update(d.expand("${PN}:${BB_CURRENTTASK}").encode('utf-8'))
return h.hexdigest()
python do_fetch() {
# fetch
stamptask(d)
@@ -216,27 +228,35 @@ def setscene_depvalid(task, taskdependees, notneeded, d, log=None):
BB_HASHCHECK_FUNCTION = "sstate_checkhashes"
def sstate_checkhashes(sq_fn, sq_task, sq_hash, sq_hashfn, d, siginfo=False, *, sq_unihash=None):
def sstate_checkhashes(sq_data, d, siginfo=False, currentcount=0, **kwargs):
ret = []
missed = []
found = set()
missed = set()
valid = d.getVar("SSTATEVALID").split()
for task in range(len(sq_fn)):
n = os.path.basename(sq_fn[task]).rsplit(".", 1)[0] + ":" + sq_task[task]
for tid in sorted(sq_data['hash']):
n = os.path.basename(bb.runqueue.fn_from_tid(tid)).split(".")[0] + ":do_" + bb.runqueue.taskname_from_tid(tid)[3:]
print(n)
stampfile = d.expand("${TOPDIR}/%s.run" % n.replace("do_", ""))
if n in valid:
bb.note("SState: Found valid sstate for %s" % n)
ret.append(task)
elif os.path.exists(d.expand("${TOPDIR}/%s.run" % n.replace("do_", ""))):
bb.note("SState: Found valid sstate for %s (already run)" % n)
ret.append(task)
found.add(tid)
elif n + ":" + sq_data['hash'][tid] in valid:
bb.note("SState: Found valid sstate for %s" % n)
found.add(tid)
elif os.path.exists(stampfile):
with open(stampfile, "r") as f:
hash = f.readline().strip()
if hash == sq_data['hash'][tid]:
bb.note("SState: Found valid sstate for %s (already run)" % n)
found.add(tid)
else:
bb.note("SState: sstate hash didn't match previous run for %s (%s vs %s)" % (n, sq_data['hash'][tid], hash))
missed.add(tid)
else:
missed.append(task)
bb.note("SState: Found no valid sstate for %s" % n)
missed.add(tid)
bb.note("SState: Found no valid sstate for %s (%s)" % (n, sq_data['hash'][tid]))
if hasattr(bb.parse.siggen, "checkhashes"):
bb.parse.siggen.checkhashes(missed, ret, sq_fn, sq_task, sq_hash, sq_hashfn, d)
return ret
return found

View File

@@ -11,6 +11,6 @@ STAMP = "${TMPDIR}/stamps/${PN}"
T = "${TMPDIR}/workdir/${PN}/temp"
BB_NUMBER_THREADS = "4"
BB_HASHBASE_WHITELIST = "BB_CURRENT_MC"
BB_HASHBASE_WHITELIST = "BB_CURRENT_MC BB_HASHSERVE TMPDIR TOPDIR SLOWTASKS SSTATEVALID FILE"
include conf/multiconfig/${BB_CURRENT_MC}.conf

View File

@@ -0,0 +1 @@
DEPENDS = "b1"

View File

@@ -11,6 +11,8 @@ import bb
import os
import tempfile
import subprocess
import sys
import time
#
# TODO:
@@ -25,7 +27,7 @@ class RunQueueTests(unittest.TestCase):
a1_sstatevalid = "a1:do_package a1:do_package_qa a1:do_packagedata a1:do_package_write_ipk a1:do_package_write_rpm a1:do_populate_lic a1:do_populate_sysroot"
b1_sstatevalid = "b1:do_package b1:do_package_qa b1:do_packagedata b1:do_package_write_ipk b1:do_package_write_rpm b1:do_populate_lic b1:do_populate_sysroot"
def run_bitbakecmd(self, cmd, builddir, sstatevalid="", slowtasks="", extraenv=None):
def run_bitbakecmd(self, cmd, builddir, sstatevalid="", slowtasks="", extraenv=None, cleanup=False):
env = os.environ.copy()
env["BBPATH"] = os.path.realpath(os.path.join(os.path.dirname(__file__), "runqueue-tests"))
env["BB_ENV_EXTRAWHITE"] = "SSTATEVALID SLOWTASKS"
@@ -37,11 +39,16 @@ class RunQueueTests(unittest.TestCase):
env["BB_ENV_EXTRAWHITE"] = env["BB_ENV_EXTRAWHITE"] + " " + k
try:
output = subprocess.check_output(cmd, env=env, stderr=subprocess.STDOUT,universal_newlines=True, cwd=builddir)
print(output)
except subprocess.CalledProcessError as e:
self.fail("Command %s failed with %s" % (cmd, e.output))
tasks = []
with open(builddir + "/task.log", "r") as f:
tasks = [line.rstrip() for line in f]
tasklog = builddir + "/task.log"
if os.path.exists(tasklog):
with open(tasklog, "r") as f:
tasks = [line.rstrip() for line in f]
if cleanup:
os.remove(tasklog)
return tasks
def test_no_setscenevalid(self):
@@ -226,3 +233,91 @@ class RunQueueTests(unittest.TestCase):
expected.remove(x)
self.assertEqual(set(tasks), set(expected))
@unittest.skipIf(sys.version_info < (3, 5, 0), 'Python 3.5 or later required')
def test_hashserv_single(self):
with tempfile.TemporaryDirectory(prefix="runqueuetest") as tempdir:
extraenv = {
"BB_HASHSERVE" : "auto",
"BB_SIGNATURE_HANDLER" : "TestEquivHash"
}
cmd = ["bitbake", "a1", "b1"]
setscenetasks = ['package_write_ipk_setscene', 'package_write_rpm_setscene', 'packagedata_setscene',
'populate_sysroot_setscene', 'package_qa_setscene']
sstatevalid = ""
tasks = self.run_bitbakecmd(cmd, tempdir, sstatevalid, extraenv=extraenv, cleanup=True)
expected = ['a1:' + x for x in self.alltasks] + ['b1:' + x for x in self.alltasks]
self.assertEqual(set(tasks), set(expected))
cmd = ["bitbake", "a1", "-c", "install", "-f"]
tasks = self.run_bitbakecmd(cmd, tempdir, sstatevalid, extraenv=extraenv, cleanup=True)
expected = ['a1:install']
self.assertEqual(set(tasks), set(expected))
cmd = ["bitbake", "a1", "b1"]
tasks = self.run_bitbakecmd(cmd, tempdir, sstatevalid, extraenv=extraenv, cleanup=True)
expected = ['a1:populate_sysroot', 'a1:package', 'a1:package_write_rpm_setscene', 'a1:packagedata_setscene',
'a1:package_write_ipk_setscene', 'a1:package_qa_setscene']
self.assertEqual(set(tasks), set(expected))
self.shutdown(tempdir)
@unittest.skipIf(sys.version_info < (3, 5, 0), 'Python 3.5 or later required')
def test_hashserv_double(self):
with tempfile.TemporaryDirectory(prefix="runqueuetest") as tempdir:
extraenv = {
"BB_HASHSERVE" : "auto",
"BB_SIGNATURE_HANDLER" : "TestEquivHash"
}
cmd = ["bitbake", "a1", "b1", "e1"]
setscenetasks = ['package_write_ipk_setscene', 'package_write_rpm_setscene', 'packagedata_setscene',
'populate_sysroot_setscene', 'package_qa_setscene']
sstatevalid = ""
tasks = self.run_bitbakecmd(cmd, tempdir, sstatevalid, extraenv=extraenv, cleanup=True)
expected = ['a1:' + x for x in self.alltasks] + ['b1:' + x for x in self.alltasks] + ['e1:' + x for x in self.alltasks]
self.assertEqual(set(tasks), set(expected))
cmd = ["bitbake", "a1", "b1", "-c", "install", "-fn"]
tasks = self.run_bitbakecmd(cmd, tempdir, sstatevalid, extraenv=extraenv, cleanup=True)
cmd = ["bitbake", "e1"]
tasks = self.run_bitbakecmd(cmd, tempdir, sstatevalid, extraenv=extraenv, cleanup=True)
expected = ['a1:package', 'a1:install', 'b1:package', 'b1:install', 'a1:populate_sysroot', 'b1:populate_sysroot',
'a1:package_write_ipk_setscene', 'b1:packagedata_setscene', 'b1:package_write_rpm_setscene',
'a1:package_write_rpm_setscene', 'b1:package_write_ipk_setscene', 'a1:packagedata_setscene']
self.assertEqual(set(tasks), set(expected))
self.shutdown(tempdir)
@unittest.skipIf(sys.version_info < (3, 5, 0), 'Python 3.5 or later required')
def test_hashserv_multiple_setscene(self):
# Runs e1:do_package_setscene twice
with tempfile.TemporaryDirectory(prefix="runqueuetest") as tempdir:
extraenv = {
"BB_HASHSERVE" : "auto",
"BB_SIGNATURE_HANDLER" : "TestEquivHash"
}
cmd = ["bitbake", "a1", "b1", "e1"]
setscenetasks = ['package_write_ipk_setscene', 'package_write_rpm_setscene', 'packagedata_setscene',
'populate_sysroot_setscene', 'package_qa_setscene']
sstatevalid = ""
tasks = self.run_bitbakecmd(cmd, tempdir, sstatevalid, extraenv=extraenv, cleanup=True)
expected = ['a1:' + x for x in self.alltasks] + ['b1:' + x for x in self.alltasks] + ['e1:' + x for x in self.alltasks]
self.assertEqual(set(tasks), set(expected))
cmd = ["bitbake", "a1", "b1", "-c", "install", "-fn"]
tasks = self.run_bitbakecmd(cmd, tempdir, sstatevalid, extraenv=extraenv, cleanup=True)
cmd = ["bitbake", "e1"]
sstatevalid = "e1:do_package"
tasks = self.run_bitbakecmd(cmd, tempdir, sstatevalid, extraenv=extraenv, cleanup=True, slowtasks="a1:populate_sysroot b1:populate_sysroot")
expected = ['a1:package', 'a1:install', 'b1:package', 'b1:install', 'a1:populate_sysroot', 'b1:populate_sysroot',
'a1:package_write_ipk_setscene', 'b1:packagedata_setscene', 'b1:package_write_rpm_setscene',
'a1:package_write_rpm_setscene', 'b1:package_write_ipk_setscene', 'a1:packagedata_setscene',
'e1:package_setscene']
self.assertEqual(set(tasks), set(expected))
for i in expected:
self.assertEqual(tasks.count(i), 1, "%s not in task list once" % i)
self.shutdown(tempdir)
def shutdown(self, tempdir):
# Wait for the hashserve socket to disappear else we'll see races with the tempdir cleanup
while os.path.exists(tempdir + "/hashserve.sock"):
time.sleep(0.5)

View File

@@ -646,6 +646,9 @@ class ORMWrapper(object):
Target_Installed_Package.objects.create(target = target_obj, package = packagedict[p]['object'])
packagedeps_objs = []
pattern_so = re.compile(r'.*\.so(\.\d*)?$')
pattern_lib = re.compile(r'.*\-suffix(\d*)?$')
pattern_ko = re.compile(r'^kernel-module-.*')
for p in packagedict:
for (px,deptype) in packagedict[p]['depends']:
if deptype == 'depends':
@@ -654,6 +657,13 @@ class ORMWrapper(object):
tdeptype = Package_Dependency.TYPE_TRECOMMENDS
try:
# Skip known non-package objects like libraries and kernel modules
if pattern_so.match(px) or pattern_lib.match(px):
logger.info("Toaster does not add library file dependencies to packages (%s,%s)", p, px)
continue
if pattern_ko.match(px):
logger.info("Toaster does not add kernel module dependencies to packages (%s,%s)", p, px)
continue
packagedeps_objs.append(Package_Dependency(
package = packagedict[p]['object'],
depends_on = packagedict[px]['object'],

View File

@@ -689,17 +689,27 @@ def main(server, eventHandler, params, tf = TerminalFilter):
if params.observe_only:
print("\nKeyboard Interrupt, exiting observer...")
main.shutdown = 2
if not params.observe_only and main.shutdown == 1:
def state_force_shutdown():
print("\nSecond Keyboard Interrupt, stopping...\n")
_, error = server.runCommand(["stateForceShutdown"])
if error:
logger.error("Unable to cleanly stop: %s" % error)
if not params.observe_only and main.shutdown == 1:
state_force_shutdown()
if not params.observe_only and main.shutdown == 0:
print("\nKeyboard Interrupt, closing down...\n")
interrupted = True
_, error = server.runCommand(["stateShutdown"])
if error:
logger.error("Unable to cleanly shutdown: %s" % error)
# Capture the second KeyboardInterrupt during stateShutdown is running
try:
_, error = server.runCommand(["stateShutdown"])
if error:
logger.error("Unable to cleanly shutdown: %s" % error)
except KeyboardInterrupt:
state_force_shutdown()
main.shutdown = main.shutdown + 1
pass
except Exception as e:

View File

@@ -394,7 +394,7 @@ def better_exec(code, context, text = None, realfile = "<code>", pythonexception
code = better_compile(code, realfile, realfile)
try:
exec(code, get_context(), context)
except (bb.BBHandledException, bb.parse.SkipRecipe, bb.build.FuncFailed, bb.data_smart.ExpansionError):
except (bb.BBHandledException, bb.parse.SkipRecipe, bb.data_smart.ExpansionError):
# Error already shown so passthrough, no need for traceback
raise
except Exception as e:
@@ -677,7 +677,7 @@ def _check_unsafe_delete_path(path):
return True
return False
def remove(path, recurse=False):
def remove(path, recurse=False, ionice=False):
"""Equivalent to rm -f or rm -rf"""
if not path:
return
@@ -686,7 +686,10 @@ def remove(path, recurse=False):
if _check_unsafe_delete_path(path):
raise Exception('bb.utils.remove: called with dangerous path "%s" and recurse=True, refusing to delete!' % path)
# shutil.rmtree(name) would be ideal but its too slow
subprocess.check_call(['rm', '-rf'] + glob.glob(path))
cmd = []
if ionice:
cmd = ['ionice', '-c', '3']
subprocess.check_call(cmd + ['rm', '-rf'] + glob.glob(path))
return
for name in glob.glob(path):
try:
@@ -695,12 +698,12 @@ def remove(path, recurse=False):
if exc.errno != errno.ENOENT:
raise
def prunedir(topdir):
def prunedir(topdir, ionice=False):
# Delete everything reachable from the directory named in 'topdir'.
# CAUTION: This is dangerous!
if _check_unsafe_delete_path(topdir):
raise Exception('bb.utils.prunedir: called with dangerous path "%s", refusing to delete!' % topdir)
remove(topdir, recurse=True)
remove(topdir, recurse=True, ionice=ionice)
#
# Could also use return re.compile("(%s)" % "|".join(map(re.escape, suffixes))).sub(lambda mo: "", var)
@@ -780,7 +783,7 @@ def movefile(src, dest, newmtime = None, sstat = None):
os.rename(src, destpath)
renamefailed = 0
except Exception as e:
if e[0] != errno.EXDEV:
if e.errno != errno.EXDEV:
# Some random error.
print("movefile: Failed to move", src, "to", dest, e)
return None

View File

@@ -46,7 +46,7 @@ layer, with the preferred version first. Note that skipped recipes that
are overlayed will also be listed, with a " (skipped)" suffix.
"""
items_listed = self.list_recipes('Overlayed recipes', None, True, args.same_version, args.filenames, True, None)
items_listed = self.list_recipes('Overlayed recipes', None, True, args.same_version, args.filenames, False, True, None, False, None)
# Check for overlayed .bbclass files
classes = collections.defaultdict(list)
@@ -112,9 +112,9 @@ skipped recipes will also be listed, with a " (skipped)" suffix.
title = 'Matching recipes:'
else:
title = 'Available recipes:'
self.list_recipes(title, args.pnspec, False, False, args.filenames, args.multiple, inheritlist)
self.list_recipes(title, args.pnspec, False, False, args.filenames, args.recipes_only, args.multiple, args.layer, args.bare, inheritlist)
def list_recipes(self, title, pnspec, show_overlayed_only, show_same_ver_only, show_filenames, show_multi_provider_only, inherits):
def list_recipes(self, title, pnspec, show_overlayed_only, show_same_ver_only, show_filenames, show_recipes_only, show_multi_provider_only, selected_layer, bare, inherits):
if inherits:
bbpath = str(self.tinfoil.config_data.getVar('BBPATH'))
for classname in inherits:
@@ -144,24 +144,30 @@ skipped recipes will also be listed, with a " (skipped)" suffix.
preferred_versions[p] = (ver, fn)
def print_item(f, pn, ver, layer, ispref):
if f in skiplist:
skipped = ' (skipped)'
else:
skipped = ''
if show_filenames:
if ispref:
logger.plain("%s%s", f, skipped)
if not selected_layer or layer == selected_layer:
if not bare and f in skiplist:
skipped = ' (skipped)'
else:
logger.plain(" %s%s", f, skipped)
else:
if ispref:
logger.plain("%s:", pn)
logger.plain(" %s %s%s", layer.ljust(20), ver, skipped)
skipped = ''
if show_filenames:
if ispref:
logger.plain("%s%s", f, skipped)
else:
logger.plain(" %s%s", f, skipped)
elif show_recipes_only:
if pn not in show_unique_pn:
show_unique_pn.append(pn)
logger.plain("%s%s", pn, skipped)
else:
if ispref:
logger.plain("%s:", pn)
logger.plain(" %s %s%s", layer.ljust(20), ver, skipped)
global_inherit = (self.tinfoil.config_data.getVar('INHERIT') or "").split()
cls_re = re.compile('classes/')
preffiles = []
show_unique_pn = []
items_listed = False
for p in sorted(pkg_pn):
if pnspec:
@@ -493,8 +499,11 @@ NOTE: .bbappend files can impact the dependencies.
parser_show_recipes = self.add_command(sp, 'show-recipes', self.do_show_recipes)
parser_show_recipes.add_argument('-f', '--filenames', help='instead of the default formatting, list filenames of higher priority recipes with the ones they overlay indented underneath', action='store_true')
parser_show_recipes.add_argument('-r', '--recipes-only', help='instead of the default formatting, list recipes only', action='store_true')
parser_show_recipes.add_argument('-m', '--multiple', help='only list where multiple recipes (in the same layer or different layers) exist for the same recipe name', action='store_true')
parser_show_recipes.add_argument('-i', '--inherits', help='only list recipes that inherit the named class(es) - separate multiple classes using , (without spaces)', metavar='CLASS', default='')
parser_show_recipes.add_argument('-l', '--layer', help='only list recipes from the selected layer', default='')
parser_show_recipes.add_argument('-b', '--bare', help='output just names without the "(skipped)" marker', action='store_true')
parser_show_recipes.add_argument('pnspec', nargs='*', help='optional recipe name specification (wildcards allowed, enclose in quotes to avoid shell expansion)')
parser_show_appends = self.add_command(sp, 'show-appends', self.do_show_appends)

View File

@@ -1,126 +1,25 @@
# Copyright (C) 2018 Garmin Ltd.
# Copyright (C) 2018-2019 Garmin Ltd.
#
# SPDX-License-Identifier: GPL-2.0-only
#
from http.server import BaseHTTPRequestHandler, HTTPServer
import contextlib
import urllib.parse
from contextlib import closing
import re
import sqlite3
import json
import traceback
import logging
from datetime import datetime
logger = logging.getLogger('hashserv')
UNIX_PREFIX = "unix://"
class HashEquivalenceServer(BaseHTTPRequestHandler):
def log_message(self, f, *args):
logger.debug(f, *args)
ADDR_TYPE_UNIX = 0
ADDR_TYPE_TCP = 1
def do_GET(self):
try:
p = urllib.parse.urlparse(self.path)
if p.path != self.prefix + '/v1/equivalent':
self.send_error(404)
return
query = urllib.parse.parse_qs(p.query, strict_parsing=True)
method = query['method'][0]
taskhash = query['taskhash'][0]
d = None
with contextlib.closing(self.db.cursor()) as cursor:
cursor.execute('SELECT taskhash, method, unihash FROM tasks_v1 WHERE method=:method AND taskhash=:taskhash ORDER BY created ASC LIMIT 1',
{'method': method, 'taskhash': taskhash})
row = cursor.fetchone()
if row is not None:
logger.debug('Found equivalent task %s', row['taskhash'])
d = {k: row[k] for k in ('taskhash', 'method', 'unihash')}
self.send_response(200)
self.send_header('Content-Type', 'application/json; charset=utf-8')
self.end_headers()
self.wfile.write(json.dumps(d).encode('utf-8'))
except:
logger.exception('Error in GET')
self.send_error(400, explain=traceback.format_exc())
return
def do_POST(self):
try:
p = urllib.parse.urlparse(self.path)
if p.path != self.prefix + '/v1/equivalent':
self.send_error(404)
return
length = int(self.headers['content-length'])
data = json.loads(self.rfile.read(length).decode('utf-8'))
with contextlib.closing(self.db.cursor()) as cursor:
cursor.execute('''
SELECT taskhash, method, unihash FROM tasks_v1 WHERE method=:method AND outhash=:outhash
ORDER BY CASE WHEN taskhash=:taskhash THEN 1 ELSE 2 END,
created ASC
LIMIT 1
''', {k: data[k] for k in ('method', 'outhash', 'taskhash')})
row = cursor.fetchone()
if row is None or row['taskhash'] != data['taskhash']:
unihash = data['unihash']
if row is not None:
unihash = row['unihash']
insert_data = {
'method': data['method'],
'outhash': data['outhash'],
'taskhash': data['taskhash'],
'unihash': unihash,
'created': datetime.now()
}
for k in ('owner', 'PN', 'PV', 'PR', 'task', 'outhash_siginfo'):
if k in data:
insert_data[k] = data[k]
cursor.execute('''INSERT INTO tasks_v1 (%s) VALUES (%s)''' % (
', '.join(sorted(insert_data.keys())),
', '.join(':' + k for k in sorted(insert_data.keys()))),
insert_data)
logger.info('Adding taskhash %s with unihash %s', data['taskhash'], unihash)
cursor.execute('SELECT taskhash, method, unihash FROM tasks_v1 WHERE id=:id', {'id': cursor.lastrowid})
row = cursor.fetchone()
self.db.commit()
d = {k: row[k] for k in ('taskhash', 'method', 'unihash')}
self.send_response(200)
self.send_header('Content-Type', 'application/json; charset=utf-8')
self.end_headers()
self.wfile.write(json.dumps(d).encode('utf-8'))
except:
logger.exception('Error in POST')
self.send_error(400, explain=traceback.format_exc())
return
def create_server(addr, db, prefix=''):
class Handler(HashEquivalenceServer):
pass
Handler.prefix = prefix
Handler.db = db
def setup_database(database, sync=True):
db = sqlite3.connect(database)
db.row_factory = sqlite3.Row
with contextlib.closing(db.cursor()) as cursor:
with closing(db.cursor()) as cursor:
cursor.execute('''
CREATE TABLE IF NOT EXISTS tasks_v1 (
CREATE TABLE IF NOT EXISTS tasks_v2 (
id INTEGER PRIMARY KEY AUTOINCREMENT,
method TEXT NOT NULL,
outhash TEXT NOT NULL,
@@ -134,9 +33,61 @@ def create_server(addr, db, prefix=''):
PV TEXT,
PR TEXT,
task TEXT,
outhash_siginfo TEXT
outhash_siginfo TEXT,
UNIQUE(method, outhash, taskhash)
)
''')
cursor.execute('PRAGMA journal_mode = WAL')
cursor.execute('PRAGMA synchronous = %s' % ('NORMAL' if sync else 'OFF'))
logger.info('Starting server on %s', addr)
return HTTPServer(addr, Handler)
# Drop old indexes
cursor.execute('DROP INDEX IF EXISTS taskhash_lookup')
cursor.execute('DROP INDEX IF EXISTS outhash_lookup')
# Create new indexes
cursor.execute('CREATE INDEX IF NOT EXISTS taskhash_lookup_v2 ON tasks_v2 (method, taskhash, created)')
cursor.execute('CREATE INDEX IF NOT EXISTS outhash_lookup_v2 ON tasks_v2 (method, outhash)')
return db
def parse_address(addr):
if addr.startswith(UNIX_PREFIX):
return (ADDR_TYPE_UNIX, (addr[len(UNIX_PREFIX):],))
else:
m = re.match(r'\[(?P<host>[^\]]*)\]:(?P<port>\d+)$', addr)
if m is not None:
host = m.group('host')
port = m.group('port')
else:
host, port = addr.split(':')
return (ADDR_TYPE_TCP, (host, int(port)))
def create_server(addr, dbname, *, sync=True):
from . import server
db = setup_database(dbname, sync=sync)
s = server.Server(db)
(typ, a) = parse_address(addr)
if typ == ADDR_TYPE_UNIX:
s.start_unix_server(*a)
else:
s.start_tcp_server(*a)
return s
def create_client(addr):
from . import client
c = client.Client()
(typ, a) = parse_address(addr)
if typ == ADDR_TYPE_UNIX:
c.connect_unix(*a)
else:
c.connect_tcp(*a)
return c

View File

@@ -0,0 +1,157 @@
# Copyright (C) 2019 Garmin Ltd.
#
# SPDX-License-Identifier: GPL-2.0-only
#
from contextlib import closing
import json
import logging
import socket
import os
logger = logging.getLogger('hashserv.client')
class HashConnectionError(Exception):
pass
class Client(object):
MODE_NORMAL = 0
MODE_GET_STREAM = 1
def __init__(self):
self._socket = None
self.reader = None
self.writer = None
self.mode = self.MODE_NORMAL
def connect_tcp(self, address, port):
def connect_sock():
s = socket.create_connection((address, port))
s.setsockopt(socket.SOL_TCP, socket.TCP_NODELAY, 1)
s.setsockopt(socket.SOL_TCP, socket.TCP_QUICKACK, 1)
s.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
return s
self._connect_sock = connect_sock
def connect_unix(self, path):
def connect_sock():
s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
# AF_UNIX has path length issues so chdir here to workaround
cwd = os.getcwd()
try:
os.chdir(os.path.dirname(path))
s.connect(os.path.basename(path))
finally:
os.chdir(cwd)
return s
self._connect_sock = connect_sock
def connect(self):
if self._socket is None:
self._socket = self._connect_sock()
self.reader = self._socket.makefile('r', encoding='utf-8')
self.writer = self._socket.makefile('w', encoding='utf-8')
self.writer.write('OEHASHEQUIV 1.0\n\n')
self.writer.flush()
# Restore mode if the socket is being re-created
cur_mode = self.mode
self.mode = self.MODE_NORMAL
self._set_mode(cur_mode)
return self._socket
def close(self):
if self._socket is not None:
self._socket.close()
self._socket = None
self.reader = None
self.writer = None
def _send_wrapper(self, proc):
count = 0
while True:
try:
self.connect()
return proc()
except (OSError, HashConnectionError, json.JSONDecodeError, UnicodeDecodeError) as e:
logger.warning('Error talking to server: %s' % e)
if count >= 3:
if not isinstance(e, HashConnectionError):
raise HashConnectionError(str(e))
raise e
self.close()
count += 1
def send_message(self, msg):
def proc():
self.writer.write('%s\n' % json.dumps(msg))
self.writer.flush()
l = self.reader.readline()
if not l:
raise HashConnectionError('Connection closed')
if not l.endswith('\n'):
raise HashConnectionError('Bad message %r' % message)
return json.loads(l)
return self._send_wrapper(proc)
def send_stream(self, msg):
def proc():
self.writer.write("%s\n" % msg)
self.writer.flush()
l = self.reader.readline()
if not l:
raise HashConnectionError('Connection closed')
return l.rstrip()
return self._send_wrapper(proc)
def _set_mode(self, new_mode):
if new_mode == self.MODE_NORMAL and self.mode == self.MODE_GET_STREAM:
r = self.send_stream('END')
if r != 'ok':
raise HashConnectionError('Bad response from server %r' % r)
elif new_mode == self.MODE_GET_STREAM and self.mode == self.MODE_NORMAL:
r = self.send_message({'get-stream': None})
if r != 'ok':
raise HashConnectionError('Bad response from server %r' % r)
elif new_mode != self.mode:
raise Exception('Undefined mode transition %r -> %r' % (self.mode, new_mode))
self.mode = new_mode
def get_unihash(self, method, taskhash):
self._set_mode(self.MODE_GET_STREAM)
r = self.send_stream('%s %s' % (method, taskhash))
if not r:
return None
return r
def report_unihash(self, taskhash, method, outhash, unihash, extra={}):
self._set_mode(self.MODE_NORMAL)
m = extra.copy()
m['taskhash'] = taskhash
m['method'] = method
m['outhash'] = outhash
m['unihash'] = unihash
return self.send_message({'report': m})
def get_stats(self):
self._set_mode(self.MODE_NORMAL)
return self.send_message({'get-stats': None})
def reset_stats(self):
self._set_mode(self.MODE_NORMAL)
return self.send_message({'reset-stats': None})

View File

@@ -0,0 +1,414 @@
# Copyright (C) 2019 Garmin Ltd.
#
# SPDX-License-Identifier: GPL-2.0-only
#
from contextlib import closing
from datetime import datetime
import asyncio
import json
import logging
import math
import os
import signal
import socket
import time
logger = logging.getLogger('hashserv.server')
class Measurement(object):
def __init__(self, sample):
self.sample = sample
def start(self):
self.start_time = time.perf_counter()
def end(self):
self.sample.add(time.perf_counter() - self.start_time)
def __enter__(self):
self.start()
return self
def __exit__(self, *args, **kwargs):
self.end()
class Sample(object):
def __init__(self, stats):
self.stats = stats
self.num_samples = 0
self.elapsed = 0
def measure(self):
return Measurement(self)
def __enter__(self):
return self
def __exit__(self, *args, **kwargs):
self.end()
def add(self, elapsed):
self.num_samples += 1
self.elapsed += elapsed
def end(self):
if self.num_samples:
self.stats.add(self.elapsed)
self.num_samples = 0
self.elapsed = 0
class Stats(object):
def __init__(self):
self.reset()
def reset(self):
self.num = 0
self.total_time = 0
self.max_time = 0
self.m = 0
self.s = 0
self.current_elapsed = None
def add(self, elapsed):
self.num += 1
if self.num == 1:
self.m = elapsed
self.s = 0
else:
last_m = self.m
self.m = last_m + (elapsed - last_m) / self.num
self.s = self.s + (elapsed - last_m) * (elapsed - self.m)
self.total_time += elapsed
if self.max_time < elapsed:
self.max_time = elapsed
def start_sample(self):
return Sample(self)
@property
def average(self):
if self.num == 0:
return 0
return self.total_time / self.num
@property
def stdev(self):
if self.num <= 1:
return 0
return math.sqrt(self.s / (self.num - 1))
def todict(self):
return {k: getattr(self, k) for k in ('num', 'total_time', 'max_time', 'average', 'stdev')}
class ServerClient(object):
def __init__(self, reader, writer, db, request_stats):
self.reader = reader
self.writer = writer
self.db = db
self.request_stats = request_stats
async def process_requests(self):
try:
self.addr = self.writer.get_extra_info('peername')
logger.debug('Client %r connected' % (self.addr,))
# Read protocol and version
protocol = await self.reader.readline()
if protocol is None:
return
(proto_name, proto_version) = protocol.decode('utf-8').rstrip().split()
if proto_name != 'OEHASHEQUIV' or proto_version != '1.0':
return
# Read headers. Currently, no headers are implemented, so look for
# an empty line to signal the end of the headers
while True:
line = await self.reader.readline()
if line is None:
return
line = line.decode('utf-8').rstrip()
if not line:
break
# Handle messages
handlers = {
'get': self.handle_get,
'report': self.handle_report,
'get-stream': self.handle_get_stream,
'get-stats': self.handle_get_stats,
'reset-stats': self.handle_reset_stats,
}
while True:
d = await self.read_message()
if d is None:
break
for k in handlers.keys():
if k in d:
logger.debug('Handling %s' % k)
if 'stream' in k:
await handlers[k](d[k])
else:
with self.request_stats.start_sample() as self.request_sample, \
self.request_sample.measure():
await handlers[k](d[k])
break
else:
logger.warning("Unrecognized command %r" % d)
break
await self.writer.drain()
finally:
self.writer.close()
def write_message(self, msg):
self.writer.write(('%s\n' % json.dumps(msg)).encode('utf-8'))
async def read_message(self):
l = await self.reader.readline()
if not l:
return None
try:
message = l.decode('utf-8')
if not message.endswith('\n'):
return None
return json.loads(message)
except (json.JSONDecodeError, UnicodeDecodeError) as e:
logger.error('Bad message from client: %r' % message)
raise e
async def handle_get(self, request):
method = request['method']
taskhash = request['taskhash']
row = self.query_equivalent(method, taskhash)
if row is not None:
logger.debug('Found equivalent task %s -> %s', (row['taskhash'], row['unihash']))
d = {k: row[k] for k in ('taskhash', 'method', 'unihash')}
self.write_message(d)
else:
self.write_message(None)
async def handle_get_stream(self, request):
self.write_message('ok')
while True:
l = await self.reader.readline()
if not l:
return
try:
# This inner loop is very sensitive and must be as fast as
# possible (which is why the request sample is handled manually
# instead of using 'with', and also why logging statements are
# commented out.
self.request_sample = self.request_stats.start_sample()
request_measure = self.request_sample.measure()
request_measure.start()
l = l.decode('utf-8').rstrip()
if l == 'END':
self.writer.write('ok\n'.encode('utf-8'))
return
(method, taskhash) = l.split()
#logger.debug('Looking up %s %s' % (method, taskhash))
row = self.query_equivalent(method, taskhash)
if row is not None:
msg = ('%s\n' % row['unihash']).encode('utf-8')
#logger.debug('Found equivalent task %s -> %s', (row['taskhash'], row['unihash']))
else:
msg = '\n'.encode('utf-8')
self.writer.write(msg)
finally:
request_measure.end()
self.request_sample.end()
await self.writer.drain()
async def handle_report(self, data):
with closing(self.db.cursor()) as cursor:
cursor.execute('''
-- Find tasks with a matching outhash (that is, tasks that
-- are equivalent)
SELECT taskhash, method, unihash FROM tasks_v2 WHERE method=:method AND outhash=:outhash
-- If there is an exact match on the taskhash, return it.
-- Otherwise return the oldest matching outhash of any
-- taskhash
ORDER BY CASE WHEN taskhash=:taskhash THEN 1 ELSE 2 END,
created ASC
-- Only return one row
LIMIT 1
''', {k: data[k] for k in ('method', 'outhash', 'taskhash')})
row = cursor.fetchone()
# If no matching outhash was found, or one *was* found but it
# wasn't an exact match on the taskhash, a new entry for this
# taskhash should be added
if row is None or row['taskhash'] != data['taskhash']:
# If a row matching the outhash was found, the unihash for
# the new taskhash should be the same as that one.
# Otherwise the caller provided unihash is used.
unihash = data['unihash']
if row is not None:
unihash = row['unihash']
insert_data = {
'method': data['method'],
'outhash': data['outhash'],
'taskhash': data['taskhash'],
'unihash': unihash,
'created': datetime.now()
}
for k in ('owner', 'PN', 'PV', 'PR', 'task', 'outhash_siginfo'):
if k in data:
insert_data[k] = data[k]
cursor.execute('''INSERT INTO tasks_v2 (%s) VALUES (%s)''' % (
', '.join(sorted(insert_data.keys())),
', '.join(':' + k for k in sorted(insert_data.keys()))),
insert_data)
self.db.commit()
logger.info('Adding taskhash %s with unihash %s',
data['taskhash'], unihash)
d = {
'taskhash': data['taskhash'],
'method': data['method'],
'unihash': unihash
}
else:
d = {k: row[k] for k in ('taskhash', 'method', 'unihash')}
self.write_message(d)
async def handle_get_stats(self, request):
d = {
'requests': self.request_stats.todict(),
}
self.write_message(d)
async def handle_reset_stats(self, request):
d = {
'requests': self.request_stats.todict(),
}
self.request_stats.reset()
self.write_message(d)
def query_equivalent(self, method, taskhash):
# This is part of the inner loop and must be as fast as possible
try:
cursor = self.db.cursor()
cursor.execute('SELECT taskhash, method, unihash FROM tasks_v2 WHERE method=:method AND taskhash=:taskhash ORDER BY created ASC LIMIT 1',
{'method': method, 'taskhash': taskhash})
return cursor.fetchone()
except:
cursor.close()
class Server(object):
def __init__(self, db, loop=None):
self.request_stats = Stats()
self.db = db
if loop is None:
self.loop = asyncio.new_event_loop()
self.close_loop = True
else:
self.loop = loop
self.close_loop = False
self._cleanup_socket = None
def start_tcp_server(self, host, port):
self.server = self.loop.run_until_complete(
asyncio.start_server(self.handle_client, host, port, loop=self.loop)
)
for s in self.server.sockets:
logger.info('Listening on %r' % (s.getsockname(),))
# Newer python does this automatically. Do it manually here for
# maximum compatibility
s.setsockopt(socket.SOL_TCP, socket.TCP_NODELAY, 1)
s.setsockopt(socket.SOL_TCP, socket.TCP_QUICKACK, 1)
name = self.server.sockets[0].getsockname()
if self.server.sockets[0].family == socket.AF_INET6:
self.address = "[%s]:%d" % (name[0], name[1])
else:
self.address = "%s:%d" % (name[0], name[1])
def start_unix_server(self, path):
def cleanup():
os.unlink(path)
cwd = os.getcwd()
try:
# Work around path length limits in AF_UNIX
os.chdir(os.path.dirname(path))
self.server = self.loop.run_until_complete(
asyncio.start_unix_server(self.handle_client, os.path.basename(path), loop=self.loop)
)
finally:
os.chdir(cwd)
logger.info('Listening on %r' % path)
self._cleanup_socket = cleanup
self.address = "unix://%s" % os.path.abspath(path)
async def handle_client(self, reader, writer):
# writer.transport.set_write_buffer_limits(0)
try:
client = ServerClient(reader, writer, self.db, self.request_stats)
await client.process_requests()
except Exception as e:
import traceback
logger.error('Error from client: %s' % str(e), exc_info=True)
traceback.print_exc()
writer.close()
logger.info('Client disconnected')
def serve_forever(self):
def signal_handler():
self.loop.stop()
self.loop.add_signal_handler(signal.SIGTERM, signal_handler)
try:
self.loop.run_forever()
except KeyboardInterrupt:
pass
self.server.close()
self.loop.run_until_complete(self.server.wait_closed())
logger.info('Server shutting down')
if self.close_loop:
self.loop.close()
if self._cleanup_socket is not None:
self._cleanup_socket()

View File

@@ -1,48 +1,48 @@
#! /usr/bin/env python3
#
# Copyright (C) 2018 Garmin Ltd.
# Copyright (C) 2018-2019 Garmin Ltd.
#
# SPDX-License-Identifier: GPL-2.0-only
#
import unittest
import threading
import sqlite3
from . import create_server, create_client
import hashlib
import urllib.request
import json
from . import create_server
import logging
import multiprocessing
import sys
import tempfile
import threading
import unittest
class TestHashEquivalenceServer(object):
METHOD = 'TestMethod'
def _run_server(self):
# logging.basicConfig(level=logging.DEBUG, filename='bbhashserv.log', filemode='w',
# format='%(levelname)s %(filename)s:%(lineno)d %(message)s')
self.server.serve_forever()
class TestHashEquivalenceServer(unittest.TestCase):
def setUp(self):
# Start an in memory hash equivalence server in the background bound to
# an ephemeral port
db = sqlite3.connect(':memory:', check_same_thread=False)
self.server = create_server(('localhost', 0), db)
self.server_addr = 'http://localhost:%d' % self.server.socket.getsockname()[1]
self.server_thread = threading.Thread(target=self.server.serve_forever)
if sys.version_info < (3, 5, 0):
self.skipTest('Python 3.5 or later required')
self.temp_dir = tempfile.TemporaryDirectory(prefix='bb-hashserv')
self.dbfile = os.path.join(self.temp_dir.name, 'db.sqlite')
self.server = create_server(self.get_server_addr(), self.dbfile)
self.server_thread = multiprocessing.Process(target=self._run_server)
self.server_thread.start()
self.client = create_client(self.server.address)
def tearDown(self):
# Shutdown server
s = getattr(self, 'server', None)
if s is not None:
self.server.shutdown()
self.server_thread.terminate()
self.server_thread.join()
self.server.server_close()
def send_get(self, path):
url = '%s/%s' % (self.server_addr, path)
request = urllib.request.Request(url)
response = urllib.request.urlopen(request)
return json.loads(response.read().decode('utf-8'))
def send_post(self, path, data):
headers = {'content-type': 'application/json'}
url = '%s/%s' % (self.server_addr, path)
request = urllib.request.Request(url, json.dumps(data).encode('utf-8'), headers)
response = urllib.request.urlopen(request)
return json.loads(response.read().decode('utf-8'))
self.client.close()
self.temp_dir.cleanup()
def test_create_hash(self):
# Simple test that hashes can be created
@@ -50,16 +50,11 @@ class TestHashEquivalenceServer(unittest.TestCase):
outhash = '2765d4a5884be49b28601445c2760c5f21e7e5c0ee2b7e3fce98fd7e5970796f'
unihash = 'f46d3fbb439bd9b921095da657a4de906510d2cd'
d = self.send_get('v1/equivalent?method=TestMethod&taskhash=%s' % taskhash)
self.assertIsNone(d, msg='Found unexpected task, %r' % d)
result = self.client.get_unihash(self.METHOD, taskhash)
self.assertIsNone(result, msg='Found unexpected task, %r' % result)
d = self.send_post('v1/equivalent', {
'taskhash': taskhash,
'method': 'TestMethod',
'outhash': outhash,
'unihash': unihash,
})
self.assertEqual(d['unihash'], unihash, 'Server returned bad unihash')
result = self.client.report_unihash(taskhash, self.METHOD, outhash, unihash)
self.assertEqual(result['unihash'], unihash, 'Server returned bad unihash')
def test_create_equivalent(self):
# Tests that a second reported task with the same outhash will be
@@ -67,25 +62,16 @@ class TestHashEquivalenceServer(unittest.TestCase):
taskhash = '53b8dce672cb6d0c73170be43f540460bfc347b4'
outhash = '5a9cb1649625f0bf41fc7791b635cd9c2d7118c7f021ba87dcd03f72b67ce7a8'
unihash = 'f37918cc02eb5a520b1aff86faacbc0a38124646'
d = self.send_post('v1/equivalent', {
'taskhash': taskhash,
'method': 'TestMethod',
'outhash': outhash,
'unihash': unihash,
})
self.assertEqual(d['unihash'], unihash, 'Server returned bad unihash')
result = self.client.report_unihash(taskhash, self.METHOD, outhash, unihash)
self.assertEqual(result['unihash'], unihash, 'Server returned bad unihash')
# Report a different task with the same outhash. The returned unihash
# should match the first task
taskhash2 = '3bf6f1e89d26205aec90da04854fbdbf73afe6b4'
unihash2 = 'af36b199320e611fbb16f1f277d3ee1d619ca58b'
d = self.send_post('v1/equivalent', {
'taskhash': taskhash2,
'method': 'TestMethod',
'outhash': outhash,
'unihash': unihash2,
})
self.assertEqual(d['unihash'], unihash, 'Server returned bad unihash')
result = self.client.report_unihash(taskhash2, self.METHOD, outhash, unihash2)
self.assertEqual(result['unihash'], unihash, 'Server returned bad unihash')
def test_duplicate_taskhash(self):
# Tests that duplicate reports of the same taskhash with different
@@ -94,38 +80,63 @@ class TestHashEquivalenceServer(unittest.TestCase):
taskhash = '8aa96fcffb5831b3c2c0cb75f0431e3f8b20554a'
outhash = 'afe240a439959ce86f5e322f8c208e1fedefea9e813f2140c81af866cc9edf7e'
unihash = '218e57509998197d570e2c98512d0105985dffc9'
d = self.send_post('v1/equivalent', {
'taskhash': taskhash,
'method': 'TestMethod',
'outhash': outhash,
'unihash': unihash,
})
self.client.report_unihash(taskhash, self.METHOD, outhash, unihash)
d = self.send_get('v1/equivalent?method=TestMethod&taskhash=%s' % taskhash)
self.assertEqual(d['unihash'], unihash)
result = self.client.get_unihash(self.METHOD, taskhash)
self.assertEqual(result, unihash)
outhash2 = '0904a7fe3dc712d9fd8a74a616ddca2a825a8ee97adf0bd3fc86082c7639914d'
unihash2 = 'ae9a7d252735f0dafcdb10e2e02561ca3a47314c'
d = self.send_post('v1/equivalent', {
'taskhash': taskhash,
'method': 'TestMethod',
'outhash': outhash2,
'unihash': unihash2
})
self.client.report_unihash(taskhash, self.METHOD, outhash2, unihash2)
d = self.send_get('v1/equivalent?method=TestMethod&taskhash=%s' % taskhash)
self.assertEqual(d['unihash'], unihash)
result = self.client.get_unihash(self.METHOD, taskhash)
self.assertEqual(result, unihash)
outhash3 = '77623a549b5b1a31e3732dfa8fe61d7ce5d44b3370f253c5360e136b852967b4'
unihash3 = '9217a7d6398518e5dc002ed58f2cbbbc78696603'
d = self.send_post('v1/equivalent', {
'taskhash': taskhash,
'method': 'TestMethod',
'outhash': outhash3,
'unihash': unihash3
})
self.client.report_unihash(taskhash, self.METHOD, outhash3, unihash3)
d = self.send_get('v1/equivalent?method=TestMethod&taskhash=%s' % taskhash)
self.assertEqual(d['unihash'], unihash)
result = self.client.get_unihash(self.METHOD, taskhash)
self.assertEqual(result, unihash)
def test_stress(self):
def query_server(failures):
client = Client(self.server.address)
try:
for i in range(1000):
taskhash = hashlib.sha256()
taskhash.update(str(i).encode('utf-8'))
taskhash = taskhash.hexdigest()
result = client.get_unihash(self.METHOD, taskhash)
if result != taskhash:
failures.append("taskhash mismatch: %s != %s" % (result, taskhash))
finally:
client.close()
# Report hashes
for i in range(1000):
taskhash = hashlib.sha256()
taskhash.update(str(i).encode('utf-8'))
taskhash = taskhash.hexdigest()
self.client.report_unihash(taskhash, self.METHOD, taskhash, taskhash)
failures = []
threads = [threading.Thread(target=query_server, args=(failures,)) for t in range(100)]
for t in threads:
t.start()
for t in threads:
t.join()
self.assertFalse(failures)
class TestHashEquivalenceUnixServer(TestHashEquivalenceServer, unittest.TestCase):
def get_server_addr(self):
return "unix://" + os.path.join(self.temp_dir.name, 'sock')
class TestHashEquivalenceTCPServer(TestHashEquivalenceServer, unittest.TestCase):
def get_server_addr(self):
return "localhost:0"

View File

@@ -376,7 +376,7 @@ layerBranches set. If not, they are effectively blank.'''
invalid.append(name)
def _resolve_dependencies(layerbranches, ignores, dependencies, invalid):
def _resolve_dependencies(layerbranches, ignores, dependencies, invalid, processed=None):
for layerbranch in layerbranches:
if ignores and layerbranch.layer.name in ignores:
continue
@@ -388,6 +388,13 @@ layerBranches set. If not, they are effectively blank.'''
if ignores and deplayerbranch.layer.name in ignores:
continue
# Since this is depth first, we need to know what we're currently processing
# in order to avoid infinite recursion on a loop.
if processed and deplayerbranch.layer.name in processed:
# We have found a recursion...
logger.warning('Circular layer dependency found: %s -> %s' % (processed, deplayerbranch.layer.name))
continue
# This little block is why we can't re-use the LayerIndexObj version,
# we must be able to satisfy each dependencies across layer indexes and
# use the layer index order for priority. (r stands for replacement below)
@@ -411,7 +418,17 @@ layerBranches set. If not, they are effectively blank.'''
# New dependency, we need to resolve it now... depth-first
if deplayerbranch.layer.name not in dependencies:
(dependencies, invalid) = _resolve_dependencies([deplayerbranch], ignores, dependencies, invalid)
# Avoid recursion on this branch.
# We copy so we don't end up polluting the depth-first branch with other
# branches. Duplication between individual branches IS expected and
# handled by 'dependencies' processing.
if not processed:
local_processed = []
else:
local_processed = processed.copy()
local_processed.append(deplayerbranch.layer.name)
(dependencies, invalid) = _resolve_dependencies([deplayerbranch], ignores, dependencies, invalid, local_processed)
if deplayerbranch.layer.name not in dependencies:
dependencies[deplayerbranch.layer.name] = [deplayerbranch, layerdependency]

View File

@@ -257,7 +257,7 @@ class PRData(object):
self.connection=sqlite3.connect(self.filename, isolation_level="EXCLUSIVE", check_same_thread = False)
self.connection.row_factory=sqlite3.Row
self.connection.execute("pragma synchronous = off;")
self.connection.execute("PRAGMA journal_mode = WAL;")
self.connection.execute("PRAGMA journal_mode = MEMORY;")
self._tables={}
def disconnect(self):

View File

@@ -965,12 +965,12 @@ class TargetSDKFile(models.Model):
class Target_Image_File(models.Model):
# valid suffixes for image files produced by a build
SUFFIXES = {
'btrfs', 'cpio', 'cpio.gz', 'cpio.lz4', 'cpio.lzma', 'cpio.xz',
'cramfs', 'elf', 'ext2', 'ext2.bz2', 'ext2.gz', 'ext2.lzma', 'ext4',
'ext4.gz', 'ext3', 'ext3.gz', 'hdddirect', 'hddimg', 'iso', 'jffs2',
'jffs2.sum', 'multiubi', 'qcow2', 'squashfs', 'squashfs-lzo',
'btrfs', 'container', 'cpio', 'cpio.gz', 'cpio.lz4', 'cpio.lzma',
'cpio.xz', 'cramfs', 'ext2', 'ext2.bz2', 'ext2.gz', 'ext2.lzma',
'ext3', 'ext3.gz', 'ext4', 'ext4.gz', 'f2fs', 'hddimg', 'iso', 'jffs2',
'jffs2.sum', 'multiubi', 'squashfs', 'squashfs-lz4', 'squashfs-lzo',
'squashfs-xz', 'tar', 'tar.bz2', 'tar.gz', 'tar.lz4', 'tar.xz', 'ubi',
'ubifs', 'vdi', 'vmdk', 'wic', 'wic.bmap', 'wic.bz2', 'wic.gz', 'wic.lzma'
'ubifs', 'wic', 'wic.bz2', 'wic.gz', 'wic.lzma'
}
target = models.ForeignKey(Target)

View File

@@ -17,11 +17,15 @@ function importLayerPageInit (ctx) {
var currentLayerDepSelection;
var validLayerName = /^(\w|-)+$/;
/* Catch 'disable' race condition between type-ahead started and "input change" */
var typeAheadStarted = 0;
libtoaster.makeTypeahead(layerDepInput,
libtoaster.ctx.layersTypeAheadUrl,
{ include_added: "true" }, function(item){
currentLayerDepSelection = item;
layerDepBtn.removeAttr("disabled");
typeAheadStarted = 1;
});
layerDepInput.on("typeahead:select", function(event, data){
@@ -34,7 +38,10 @@ function importLayerPageInit (ctx) {
// disable the "Add layer" button when the layer input typeahead is empty
// or not in the typeahead choices
layerDepInput.on("input change", function(){
layerDepBtn.attr("disabled","disabled");
if (0 == typeAheadStarted) {
layerDepBtn.attr("disabled","disabled");
}
typeAheadStarted = 0;
});
/* We automatically add "openembedded-core" layer for convenience as a
@@ -50,6 +57,7 @@ function importLayerPageInit (ctx) {
});
layerDepBtn.click(function(){
typeAheadStarted = 0;
if (currentLayerDepSelection == undefined)
return;
@@ -77,7 +85,7 @@ function importLayerPageInit (ctx) {
$("#layer-deps-list").append(newLayerDep);
libtoaster.getLayerDepsForProject(currentLayerDepSelection.layerdetailurl,
libtoaster.getLayerDepsForProject(currentLayerDepSelection.xhrLayerUrl,
function (data){
/* These are the dependencies of the layer added as a dependency */
if (data.list.length > 0) {

View File

@@ -23,9 +23,8 @@
It might not be immediately clear how you can use the Yocto
Project in a team development environment, or how to scale it for a
large team of developers.
One of the strengths of the Yocto Project is that it is extremely
flexible.
Thus, you can adapt it to many different use cases and scenarios.
You can adapt the Yocto Project to many different use cases and
scenarios.
However, this flexibility could cause difficulties if you are trying
to create a working setup that scales across a large team.
</para>

View File

@@ -60,7 +60,7 @@
<!ENTITY UBUNTU_HOST_PACKAGES_ESSENTIAL "gawk wget git-core diffstat unzip texinfo gcc-multilib \
build-essential chrpath socat cpio python python3 python3-pip python3-pexpect \
xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev \
xterm">
pylint3 xterm">
<!ENTITY FEDORA_HOST_PACKAGES_ESSENTIAL "gawk make wget tar bzip2 gzip python3 unzip perl patch \
diffutils diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath \
ccache perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue perl-bignum socat \

View File

@@ -318,23 +318,6 @@
</para>
</section>
<section id='ref-classes-bluetooth'>
<title><filename>bluetooth.bbclass</filename></title>
<para>
The <filename>bluetooth</filename> class defines a variable that
expands to the recipe (package) providing core
bluetooth support on the platform.
</para>
<para>
For details on how the class works, see the
<filename>meta/classes/bluetooth.bbclass</filename> file in the Yocto
Project
<link linkend='source-directory'>Source Directory</link>.
</para>
</section>
<section id='ref-classes-buildhistory'>
<title><filename>buildhistory.bbclass</filename></title>
@@ -937,21 +920,6 @@
</para>
</section>
<section id='ref-classes-gnome'>
<title><filename>gnome.bbclass</filename></title>
<para>
The <filename>gnome</filename> class supports recipes that
build software from the GNOME stack.
This class inherits the
<link linkend='ref-classes-gnomebase'><filename>gnomebase</filename></link>,
<link linkend='ref-classes-gtk-icon-cache'><filename>gtk-icon-cache</filename></link>,
<link linkend='ref-classes-gconf'><filename>gconf</filename></link> and
<link linkend='ref-classes-mime'><filename>mime</filename></link> classes.
The class also disables GObject introspection where applicable.
</para>
</section>
<section id='ref-classes-gnomebase'>
<title><filename>gnomebase.bbclass</filename></title>

View File

@@ -629,18 +629,18 @@
<title>Building Your Recipe</title>
<para>
Use the <filename>devtool build</filename> command to cause the
OpenEmbedded build system to build your recipe.
Use the <filename>devtool build</filename> command to build your
recipe.
The <filename>devtool build</filename> command is equivalent to
<filename>bitbake -c populate_sysroot</filename>.
the <filename>bitbake -c populate_sysroot</filename> command.
</para>
<para>
When you use the <filename>devtool build</filename> command,
you must supply the root name of the recipe (i.e. no version,
paths, or extensions).
you must supply the root name of the recipe (i.e. do not provide
versions, paths, or extensions).
You can use either the "-s" or the "--disable-parallel-make"
option to disable parallel makes during the build.
options to disable parallel makes during the build.
Here is an example:
<literallayout class='monospaced'>
$ devtool build <replaceable>recipe</replaceable>

View File

@@ -154,27 +154,6 @@
</para></listitem>
<listitem><para><emphasis>bluetooth:</emphasis> Include
bluetooth support (integrated BT only).</para></listitem>
<listitem><para><emphasis>bluez5:</emphasis> Include
BlueZ Version 5, which provides core Bluetooth layers and
protocols support.
<note>
The default value for the
<filename>DISTRO FEATURES</filename> variable includes
"bluetooth", which causes bluez5 to be backfilled in
for bluetooth support.
If you do not want bluez5 backfilled and would rather
use bluez4, you need to use the
<link linkend='var-DISTRO_FEATURES_BACKFILL_CONSIDERED'><filename>DISTRO_FEATURES_BACKFILL_CONSIDERED</filename></link>
variable as follows:
<literallayout class='monospaced'>
DISTRO_FEATURES_BACKFILL_CONSIDERED = "bluez5"
</literallayout>
Setting this variable tells the OpenEmbedded build
system that you have considered but ruled
out using the bluez5 feature and that bluez4 will be
used.
</note>
</para></listitem>
<listitem><para><emphasis>cramfs:</emphasis> Include CramFS
support.</para></listitem>
<listitem><para><emphasis>directfb:</emphasis>

View File

@@ -95,6 +95,7 @@
<listitem><para>CentOS 7.x</para></listitem>
<listitem><para>Debian GNU/Linux 8.x (Jessie)</para></listitem>
<listitem><para>Debian GNU/Linux 9.x (Stretch)</para></listitem>
<listitem><para>Debian GNU/Linux 10.x (Buster)</para></listitem>
<listitem><para>OpenSUSE 42.3</para></listitem>
</itemizedlist>
</para>

View File

@@ -335,7 +335,7 @@
<glossdef>
<para role="glossdeffirst">
<!-- <para role="glossdeffirst"><imagedata fileref="figures/define-generic.png" /> -->
The minimal command and arguments used to run the
Minimal command and arguments needed to run the
assembler.
</para>
</glossdef>
@@ -6606,6 +6606,7 @@
by default:
<literallayout class='monospaced'>
btrfs
container
cpio
cpio.gz
cpio.lz4
@@ -6621,13 +6622,14 @@
ext3.gz
ext4
ext4.gz
hdddirect
f2fs
hddimg
iso
jffs2
jffs2.sum
multiubi
squashfs
squashfs-lz4
squashfs-lzo
squashfs-xz
tar
@@ -7580,15 +7582,9 @@
However, providing just the <filename>.dtb</filename>
file is preferred.
</note>
In order to use this variable, you must have the include
files in your kernel recipe:
<literallayout class='monospaced'>
require recipes-kernel/linux/linux-dtb.inc
</literallayout>
or
<literallayout class='monospaced'>
require recipes-kernel/linux/linux-yocto.inc
</literallayout>
In order to use this variable, the
<link linkend='ref-classes-kernel-devicetree'><filename>kernel-devicetree</filename></link>
class must be inherited.
</para>
</glossdef>
</glossentry>

View File

@@ -10,3 +10,8 @@ Common targets are:
meta-ide-support
You can also run generated qemu images with a command like 'runqemu qemux86'
Other commonly useful commands are:
- 'devtool' and 'recipetool' handle common recipe tasks
- 'bitbake-layers' handles common layer tasks
- 'oe-pkgdata-util' handles common target package tasks

View File

@@ -1,2 +1,8 @@
# Add an extra DISTRO_FEATURE
DISTRO_FEATURES_append = " pam"
PREFERRED_VERSION_linux-yocto_linuxstdbase ?= "4.19%"
# Use the LTSI Kernel
PREFERRED_VERSION_linux-yocto ?= "4.19%"
# Ensure the kernel nfs server is enabled
KERNEL_FEATURES_append_pn-linux-yocto = " features/nfsd/nfsd-enable.scc"

View File

@@ -0,0 +1,15 @@
#
# An example of subclassing a distro, primarily used for testing alternate configuration
# combinations on the Yocto Project autobuilder
#
require conf/distro/poky.conf
DISTRO = "poky-altcfg"
DISTROOVERRIDES = "poky:poky-altcfg"
#DISTROOVERRIDES = "poky:linuxstdbase"
INIT_MANAGER ?= "systemd"
# systemd isn't suitable with musl
INIT_MANAGER_libc-musl ?= "sysvinit"
require conf/distro/include/poky-distro-alt-test-config.inc

View File

@@ -1,13 +0,0 @@
require conf/distro/poky.conf
DISTRO = "poky-lsb"
DISTROOVERRIDES = "poky:linuxstdbase"
DISTRO_FEATURES_append = " pam"
# Ensure the kernel nfs server is enabled
KERNEL_FEATURES_append_pn-linux-yocto = " features/nfsd/nfsd-enable.scc"
# Use the LTSI Kernel for LSB Testing
PREFERRED_VERSION_linux-yocto_linuxstdbase ?= "4.19%"

View File

@@ -82,12 +82,7 @@ DISTRO_FEATURES_class-native = "${DISTRO_FEATURES_DEFAULT} ${POKY_DEFAULT_DISTRO
DISTRO_FEATURES_class-nativesdk = "${DISTRO_FEATURES_DEFAULT} ${POKY_DEFAULT_DISTRO_FEATURES}"
# enable mdev/busybox for init
VIRTUAL-RUNTIME_dev_manager = "busybox-mdev"
VIRTUAL-RUNTIME_login_manager = "busybox"
VIRTUAL-RUNTIME_init_manager = "busybox"
VIRTUAL-RUNTIME_initscripts = "initscripts"
VIRTUAL-RUNTIME_keymaps = "keymaps"
DISTRO_FEATURES_BACKFILL_CONSIDERED += "sysvinit"
INIT_MANAGER ?= "mdev-busybox"
# FIXME: Consider adding "modules" to MACHINE_FEATURES and using that in
# packagegroup-core-base to select modutils-initscripts or not. Similar with "net" and
@@ -117,9 +112,6 @@ PNBLACKLIST[build-appliance-image] = "not buildable with poky-tiny"
PNBLACKLIST[core-image-base] = "not buildable with poky-tiny"
PNBLACKLIST[core-image-clutter] = "not buildable with poky-tiny"
PNBLACKLIST[core-image-full-cmdline] = "not buildable with poky-tiny"
PNBLACKLIST[core-image-lsb] = "not buildable with poky-tiny"
PNBLACKLIST[core-image-lsb-dev] = "not buildable with poky-tiny"
PNBLACKLIST[core-image-lsb-sdk] = "not buildable with poky-tiny"
PNBLACKLIST[core-image-rt] = "not buildable with poky-tiny"
PNBLACKLIST[core-image-rt-sdk] = "not buildable with poky-tiny"
PNBLACKLIST[core-image-sato] = "not buildable with poky-tiny"

View File

@@ -21,7 +21,7 @@ POKY_DEFAULT_EXTRA_RRECOMMENDS = "kernel-module-af-packet"
DISTRO_FEATURES ?= "${DISTRO_FEATURES_DEFAULT} ${POKY_DEFAULT_DISTRO_FEATURES}"
PREFERRED_VERSION_linux-yocto ?= "5.0%"
PREFERRED_VERSION_linux-yocto ?= "5.2%"
SDK_NAME = "${DISTRO}-${TCLIBC}-${SDKMACHINE}-${IMAGE_BASENAME}-${TUNE_PKGARCH}-${MACHINE}"
SDKPATH = "/opt/${DISTRO}/${SDK_VERSION}"
@@ -61,7 +61,6 @@ SANITY_TESTED_DISTROS ?= " \
debian-8 \n \
debian-9 \n \
debian-10 \n \
opensuse-42.3 \n \
opensuseleap-15.1 \n \
"
#

View File

@@ -237,14 +237,31 @@ BB_DISKMON_DIRS ??= "\
#
# Qemu configuration
#
# By default qemu will build with a builtin VNC server where graphical output can be
# seen. The two lines below enable the SDL backend too. By default libsdl2-native will
# be built, if you want to use your host's libSDL instead of the minimal libsdl built
# by libsdl2-native then uncomment the ASSUME_PROVIDED line below.
# By default native qemu will build with a builtin VNC server where graphical output can be
# seen. The line below enables the SDL UI frontend too.
PACKAGECONFIG_append_pn-qemu-system-native = " sdl"
PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"
# By default libsdl2-native will be built, if you want to use your host's libSDL instead of
# the minimal libsdl built by libsdl2-native then uncomment the ASSUME_PROVIDED line below.
#ASSUME_PROVIDED += "libsdl2-native"
# You can also enable the Gtk UI frontend, which takes somewhat longer to build, but adds
# a handy set of menus for controlling the emulator.
#PACKAGECONFIG_append_pn-qemu-system-native = " gtk+"
#
# Hash Equivalence
#
# Enable support for automatically running a local hash equivalence server and
# instruct bitbake to use a hash equivalence aware signature generator. Hash
# equivalence improves reuse of sstate by detecting when a given sstate
# artifact can be reused as equivalent, even if the current task hash doesn't
# match the one that generated the artifact.
#
# A shared hash equivalent server can be set with "<HOSTNAME>:<PORT>" format
#
#BB_HASHSERVE = "auto"
#BB_SIGNATURE_HANDLER = "OEEquivHash"
# CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to
# track the version of this file when it was generated. This can safely be ignored if
# this doesn't mean anything to you.

View File

@@ -270,7 +270,7 @@ DISTRO_FEATURES_remove = "x11"
#
# By including the security_flags include file you enable flags
# to the compiler and linker that cause them to generate more secure
# code, this is enabled by default in the poky-lsb distro.
# code.
# This does affect compile speed slightly.
#
# Use the following line to enable the security compiler and linker flags to your build

View File

@@ -8,8 +8,6 @@ SECTION = "console/utils"
LICENSE = "LGPLv2 | LGPLv2.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
PR = "r1"
SRC_URI = "${GNU_MIRROR}/aspell/aspell-${PV}.tar.gz"
SRC_URI[md5sum] = "e66a9c9af6a60dc46134fdacf6ce97d7"
SRC_URI[sha256sum] = "f52583a83a63633701c5f71db3dc40aab87b7f76b29723aeb27941eff42df6e1"

View File

@@ -11,15 +11,14 @@ SECURITY_CFLAGS = ""
SECURITY_LDFLAGS = ""
do_compile() {
${HOST_PREFIX}gfortran ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS} ${LDFLAGS} ${WORKDIR}/hello.f95 -o ${B}/fortran-hello
${FC} ${LDFLAGS} ${WORKDIR}/hello.f95 -o ${B}/fortran-hello
}
do_install() {
install -d ${D}${bindir}
install ${B}/fortran-hello ${D}${bindir}
install -D ${B}/fortran-hello ${D}${bindir}/fortran-hello
}
python () {
if not d.getVar("FORTRAN"):
raise bb.parse.SkipRecipe("Fortran isn't enabled")
}
}

View File

@@ -0,0 +1,11 @@
SUMMARY = "Test Multiconfig Parsing"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
INHIBIT_DEFAULT_DEPS = "1"
do_showvar() {
bbplain "MCTESTVAR=${MCTESTVAR}"
}
addtask do_showvar

View File

@@ -24,7 +24,7 @@ SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyO0 115200;ttyAMA0"
SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
PREFERRED_VERSION_linux-yocto ?= "5.0%"
PREFERRED_VERSION_linux-yocto ?= "5.2%"
KERNEL_IMAGETYPE = "zImage"
KERNEL_DEVICETREE = "am335x-bone.dtb am335x-boneblack.dtb am335x-bonegreen.dtb"
@@ -47,7 +47,6 @@ QB_DEFAULT_FSTYPE = "wic"
QB_FSINFO = "wic:no-kernel-in-fs"
QB_KERNEL_ROOT = "/dev/vda2"
QB_SYSTEM_NAME = "qemu-system-arm"
QB_MEM = "-m 512"
QB_MACHINE = "-machine virt"
QB_CPU = "-cpu cortex-a15"
QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0 systemd.mask=systemd-networkd"

View File

@@ -11,7 +11,7 @@ KERNEL_ALT_IMAGETYPE = "vmlinux.bin"
KERNEL_IMAGE_STRIP_EXTRA_SECTIONS = ".comment"
PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
PREFERRED_VERSION_linux-yocto ?= "5.0%"
PREFERRED_VERSION_linux-yocto ?= "5.2%"
SERIAL_CONSOLES = "115200;ttyS0"
USE_VT ?= "0"

View File

@@ -7,3 +7,5 @@ require conf/machine/include/tune-core2.inc
require conf/machine/include/genericx86-common.inc
SERIAL_CONSOLES_CHECK = "ttyS0"
#For runqemu
QB_SYSTEM_NAME = "qemu-system-x86_64"

View File

@@ -7,3 +7,5 @@ require conf/machine/include/tune-core2.inc
require conf/machine/include/genericx86-common.inc
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "gma500-gfx-check"
#For runqemu
QB_SYSTEM_NAME = "qemu-system-i386"

View File

@@ -15,7 +15,7 @@ SERIAL_CONSOLES = "115200;ttyS0"
MACHINE_FEATURES = "keyboard pci ext2 ext3 serial"
PREFERRED_VERSION_linux-yocto ?= "5.0%"
PREFERRED_VERSION_linux-yocto ?= "5.2%"
PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"

View File

@@ -1,27 +0,0 @@
KBRANCH_genericx86 = "v5.0/standard/base"
KBRANCH_genericx86-64 = "v5.0/standard/base"
KBRANCH_edgerouter = "v5.0/standard/edgerouter"
KBRANCH_beaglebone-yocto = "v5.0/standard/beaglebone"
KBRANCH_mpc8315e-rdb = "v5.0/standard/fsl-mpc8315e-rdb"
KMACHINE_genericx86 ?= "common-pc"
KMACHINE_genericx86-64 ?= "common-pc-64"
KMACHINE_beaglebone-yocto ?= "beaglebone"
SRCREV_machine_genericx86 ?= "f990fd0ce123aa6035042efad09b2ddc3e7d48f4"
SRCREV_machine_genericx86-64 ?= "f990fd0ce123aa6035042efad09b2ddc3e7d48f4"
SRCREV_machine_edgerouter ?= "f990fd0ce123aa6035042efad09b2ddc3e7d48f4"
SRCREV_machine_beaglebone-yocto ?= "f990fd0ce123aa6035042efad09b2ddc3e7d48f4"
SRCREV_machine_mpc8315e-rdb ?= "670ce7e9db627d0c2067cfdb571ddc1f117818d8"
COMPATIBLE_MACHINE_genericx86 = "genericx86"
COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64"
COMPATIBLE_MACHINE_edgerouter = "edgerouter"
COMPATIBLE_MACHINE_beaglebone-yocto = "beaglebone-yocto"
COMPATIBLE_MACHINE_mpc8315e-rdb = "mpc8315e-rdb"
LINUX_VERSION_genericx86 = "5.0.13"
LINUX_VERSION_genericx86-64 = "5.0.13"
LINUX_VERSION_edgerouter = "5.0.13"
LINUX_VERSION_beaglebone-yocto = "5.0.13"
LINUX_VERSION_mpc8315e-rdb = "5.0.13"

View File

@@ -0,0 +1,27 @@
KBRANCH_genericx86 = "v5.2/standard/base"
KBRANCH_genericx86-64 = "v5.2/standard/base"
KBRANCH_edgerouter = "v5.2/standard/edgerouter"
KBRANCH_beaglebone-yocto = "v5.2/standard/beaglebone"
KBRANCH_mpc8315e-rdb = "v5.2/standard/fsl-mpc8315e-rdb"
KMACHINE_genericx86 ?= "common-pc"
KMACHINE_genericx86-64 ?= "common-pc-64"
KMACHINE_beaglebone-yocto ?= "beaglebone"
SRCREV_machine_genericx86 ?= "25b14cdf9659c68ab32d66616dfdbbe2ece3fd94"
SRCREV_machine_genericx86-64 ?= "25b14cdf9659c68ab32d66616dfdbbe2ece3fd94"
SRCREV_machine_edgerouter ?= "25b14cdf9659c68ab32d66616dfdbbe2ece3fd94"
SRCREV_machine_beaglebone-yocto ?= "25b14cdf9659c68ab32d66616dfdbbe2ece3fd94"
SRCREV_machine_mpc8315e-rdb ?= "77f031b182885c177b3a96098ae61271911a7954"
COMPATIBLE_MACHINE_genericx86 = "genericx86"
COMPATIBLE_MACHINE_genericx86-64 = "genericx86-64"
COMPATIBLE_MACHINE_edgerouter = "edgerouter"
COMPATIBLE_MACHINE_beaglebone-yocto = "beaglebone-yocto"
COMPATIBLE_MACHINE_mpc8315e-rdb = "mpc8315e-rdb"
LINUX_VERSION_genericx86 = "5.2.17"
LINUX_VERSION_genericx86-64 = "5.2.17"
LINUX_VERSION_edgerouter = "5.2.17"
LINUX_VERSION_beaglebone-yocto = "5.2.17"
LINUX_VERSION_mpc8315e-rdb = "5.2.17"

View File

@@ -78,6 +78,9 @@ python () {
bb.debug(1, 'archiver: %s is excluded, covered by gcc-source' % pn)
return
def hasTask(task):
return bool(d.getVarFlag(task, "task", False)) and not bool(d.getVarFlag(task, "noexec", False))
ar_src = d.getVarFlag('ARCHIVER_MODE', 'src')
ar_dumpdata = d.getVarFlag('ARCHIVER_MODE', 'dumpdata')
ar_recipe = d.getVarFlag('ARCHIVER_MODE', 'recipe')
@@ -98,9 +101,6 @@ python () {
# There is a corner case with "gcc-source-${PV}" recipes, they don't have
# the "do_configure" task, so we need to use "do_preconfigure"
def hasTask(task):
return bool(d.getVarFlag(task, "task", False)) and not bool(d.getVarFlag(task, "noexec", False))
if hasTask("do_preconfigure"):
d.appendVarFlag('do_ar_configured', 'depends', ' %s:do_preconfigure' % pn)
elif hasTask("do_configure"):
@@ -118,7 +118,11 @@ python () {
# Output the SRPM package
if d.getVarFlag('ARCHIVER_MODE', 'srpm') == "1" and d.getVar('PACKAGES'):
if "package_rpm" in d.getVar('PACKAGE_CLASSES'):
if "package_rpm" not in d.getVar('PACKAGE_CLASSES'):
bb.fatal("ARCHIVER_MODE[srpm] needs package_rpm in PACKAGE_CLASSES")
# Some recipes do not have any packaging tasks
if hasTask("do_package_write_rpm"):
d.appendVarFlag('do_deploy_archives', 'depends', ' %s:do_package_write_rpm' % pn)
d.appendVarFlag('do_package_write_rpm', 'dirs', ' ${ARCHIVER_RPMTOPDIR}')
d.appendVarFlag('do_package_write_rpm', 'sstate-inputdirs', ' ${ARCHIVER_RPMTOPDIR}')
@@ -133,8 +137,6 @@ python () {
d.appendVarFlag('do_package_write_rpm', 'depends', ' %s:do_ar_patched' % pn)
elif ar_src == "configured":
d.appendVarFlag('do_package_write_rpm', 'depends', ' %s:do_ar_configured' % pn)
else:
bb.fatal("ARCHIVER_MODE[srpm] needs package_rpm in PACKAGE_CLASSES")
}
# Take all the sources for a recipe and puts them in WORKDIR/archiver-work/.
@@ -219,9 +221,10 @@ python do_ar_patched() {
# Get the ARCHIVER_OUTDIR before we reset the WORKDIR
ar_outdir = d.getVar('ARCHIVER_OUTDIR')
ar_workdir = d.getVar('ARCHIVER_WORKDIR')
if not is_work_shared(d):
ar_workdir = d.getVar('ARCHIVER_WORKDIR')
d.setVar('WORKDIR', ar_workdir)
bb.note('Archiving the patched source...')
d.setVar('WORKDIR', ar_workdir)
create_tarball(d, d.getVar('S'), 'patched', ar_outdir)
}

View File

@@ -25,7 +25,9 @@ inherit siteinfo
# Space separated list of shell scripts with variables defined to supply test
# results for autoconf tests we cannot run at build time.
export CONFIG_SITE = "${@siteinfo_get_files(d)}"
# The value of this variable is filled in in a prefunc because it depends on
# the contents of the sysroot.
export CONFIG_SITE
acpaths ?= "default"
EXTRA_AUTORECONF = "--exclude=autopoint"
@@ -132,6 +134,8 @@ EXTRACONFFUNCS ??= ""
EXTRA_OECONF_append = " ${PACKAGECONFIG_CONFARGS}"
do_configure[prefuncs] += "autotools_preconfigure autotools_aclocals ${EXTRACONFFUNCS}"
do_compile[prefuncs] += "autotools_aclocals"
do_install[prefuncs] += "autotools_aclocals"
do_configure[postfuncs] += "autotools_postconfigure"
ACLOCALDIR = "${STAGING_DATADIR}/aclocal"
@@ -140,7 +144,6 @@ ACLOCALEXTRAPATH_class-target = " -I ${STAGING_DATADIR_NATIVE}/aclocal/"
ACLOCALEXTRAPATH_class-nativesdk = " -I ${STAGING_DATADIR_NATIVE}/aclocal/"
python autotools_aclocals () {
# Refresh variable with cache files
d.setVar("CONFIG_SITE", siteinfo_get_files(d, sysrootcache=True))
}

View File

@@ -32,9 +32,11 @@ def oe_import(d):
import oe.data
for toimport in oe.data.typed_value("OE_IMPORTS", d):
imported = __import__(toimport)
inject(toimport.split(".", 1)[0], imported)
try:
imported = __import__(toimport)
inject(toimport.split(".", 1)[0], imported)
except AttributeError as e:
bb.error("Error importing OE modules: %s" % str(e))
return ""
# We need the oe module name space early (before INHERITs get added)

View File

@@ -1,7 +1,7 @@
CHRPATH_BIN ?= "chrpath"
PREPROCESS_RELOCATE_DIRS ?= ""
def process_file_linux(cmd, fpath, rootdir, baseprefix, tmpdir, d):
def process_file_linux(cmd, fpath, rootdir, baseprefix, tmpdir, d, break_hardlinks = False):
import subprocess as sub
p = sub.Popen([cmd, '-l', fpath],stdout=sub.PIPE,stderr=sub.PIPE)
@@ -39,6 +39,9 @@ def process_file_linux(cmd, fpath, rootdir, baseprefix, tmpdir, d):
# if we have modified some rpaths call chrpath to update the binary
if modified:
if break_hardlinks:
bb.utils.break_hardlinks(fpath)
args = ":".join(new_rpaths)
#bb.note("Setting rpath for %s to %s" %(fpath, args))
p = sub.Popen([cmd, '-r', args, fpath],stdout=sub.PIPE,stderr=sub.PIPE)
@@ -46,7 +49,7 @@ def process_file_linux(cmd, fpath, rootdir, baseprefix, tmpdir, d):
if p.returncode != 0:
bb.fatal("%s: chrpath command failed with exit code %d:\n%s%s" % (d.getVar('PN'), p.returncode, out, err))
def process_file_darwin(cmd, fpath, rootdir, baseprefix, tmpdir, d):
def process_file_darwin(cmd, fpath, rootdir, baseprefix, tmpdir, d, break_hardlinks = False):
import subprocess as sub
p = sub.Popen([d.expand("${HOST_PREFIX}otool"), '-L', fpath],stdout=sub.PIPE,stderr=sub.PIPE)
@@ -61,11 +64,14 @@ def process_file_darwin(cmd, fpath, rootdir, baseprefix, tmpdir, d):
if baseprefix not in rpath:
continue
if break_hardlinks:
bb.utils.break_hardlinks(fpath)
newpath = "@loader_path/" + os.path.relpath(rpath, os.path.dirname(fpath.replace(rootdir, "/")))
p = sub.Popen([d.expand("${HOST_PREFIX}install_name_tool"), '-change', rpath, newpath, fpath],stdout=sub.PIPE,stderr=sub.PIPE)
out, err = p.communicate()
def process_dir (rootdir, directory, d):
def process_dir(rootdir, directory, d, break_hardlinks = False):
import stat
rootdir = os.path.normpath(rootdir)
@@ -95,7 +101,7 @@ def process_dir (rootdir, directory, d):
continue
if os.path.isdir(fpath):
process_dir(rootdir, fpath, d)
process_dir(rootdir, fpath, d, break_hardlinks = break_hardlinks)
else:
#bb.note("Testing %s for relocatability" % fpath)
@@ -108,8 +114,9 @@ def process_dir (rootdir, directory, d):
else:
# Temporarily make the file writeable so we can chrpath it
os.chmod(fpath, perms|stat.S_IRWXU)
process_file(cmd, fpath, rootdir, baseprefix, tmpdir, d)
process_file(cmd, fpath, rootdir, baseprefix, tmpdir, d, break_hardlinks = break_hardlinks)
if perms:
os.chmod(fpath, perms)

View File

@@ -30,6 +30,7 @@
# - dev-pkgs - development packages (headers, etc.) for all installed packages in the rootfs
# - dbg-pkgs - debug symbol packages for all installed packages in the rootfs
# - doc-pkgs - documentation packages for all installed packages in the rootfs
# - bash-completion-pkgs - bash-completion packages for recipes using bash-completion bbclass
# - ptest-pkgs - ptest packages for all ptest-enabled recipes
# - read-only-rootfs - tweaks an image to support read-only rootfs
# - splash - bootup splash screen

View File

@@ -203,7 +203,7 @@ def srctree_hash_files(d, srcdir=None):
ret = " "
if git_dir is not None:
oe_hash_file = os.path.join(git_dir, 'oe-devtool-tree-sha1')
oe_hash_file = os.path.join(git_dir, 'oe-devtool-tree-sha1-%s' % d.getVar('PN'))
with tempfile.NamedTemporaryFile(prefix='oe-devtool-index') as tmp_index:
# Clone index
shutil.copyfile(os.path.join(git_dir, 'index'), tmp_index.name)

View File

@@ -1 +0,0 @@
inherit gnomebase gtk-icon-cache gconf mime

View File

@@ -71,17 +71,13 @@ python go_do_unpack() {
if len(src_uri) == 0:
return
try:
fetcher = bb.fetch2.Fetch(src_uri, d)
for url in fetcher.urls:
if fetcher.ud[url].type == 'git':
if fetcher.ud[url].parm.get('destsuffix') is None:
s_dirname = os.path.basename(d.getVar('S'))
fetcher.ud[url].parm['destsuffix'] = os.path.join(s_dirname, 'src',
d.getVar('GO_IMPORT')) + '/'
fetcher.unpack(d.getVar('WORKDIR'))
except bb.fetch2.BBFetchException as e:
raise bb.build.FuncFailed(e)
fetcher = bb.fetch2.Fetch(src_uri, d)
for url in fetcher.urls:
if fetcher.ud[url].type == 'git':
if fetcher.ud[url].parm.get('destsuffix') is None:
s_dirname = os.path.basename(d.getVar('S'))
fetcher.ud[url].parm['destsuffix'] = os.path.join(s_dirname, 'src', d.getVar('GO_IMPORT')) + '/'
fetcher.unpack(d.getVar('WORKDIR'))
}
go_list_packages() {

View File

@@ -23,7 +23,6 @@ GRUB_TIMEOUT ?= "10"
#FIXME: build this from the machine config
GRUB_OPTS ?= "serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1"
EFIDIR = "/EFI/BOOT"
GRUB_ROOT ?= "${ROOT}"
APPEND ?= ""

View File

@@ -1,46 +1,8 @@
inherit grub-efi-cfg
require conf/image-uefi.conf
efi_populate() {
# DEST must be the root of the image so that EFIDIR is not
# nested under a top level directory.
DEST=$1
install -d ${DEST}${EFIDIR}
GRUB_IMAGE="grub-efi-bootia32.efi"
DEST_IMAGE="bootia32.efi"
if [ -n "${MLPREFIX}" ]; then
if [ "${TARGET_ARCH_MULTILIB_ORIGINAL}" = "x86_64" ]; then
GRUB_IMAGE="grub-efi-bootx64.efi"
DEST_IMAGE="bootx64.efi"
fi
else
if [ "${TARGET_ARCH}" = "x86_64" ]; then
GRUB_IMAGE="grub-efi-bootx64.efi"
DEST_IMAGE="bootx64.efi"
fi
fi
install -m 0644 ${DEPLOY_DIR_IMAGE}/${GRUB_IMAGE} ${DEST}${EFIDIR}/${DEST_IMAGE}
EFIPATH=$(echo "${EFIDIR}" | sed 's/\//\\/g')
printf 'fs0:%s\%s\n' "$EFIPATH" "$DEST_IMAGE" >${DEST}/startup.nsh
efi_populate_common "$1" grub-efi
install -m 0644 ${GRUB_CFG} ${DEST}${EFIDIR}/grub.cfg
}
efi_iso_populate() {
iso_dir=$1
efi_populate $iso_dir
# Build a EFI directory to create efi.img
mkdir -p ${EFIIMGDIR}/${EFIDIR}
cp $iso_dir/${EFIDIR}/* ${EFIIMGDIR}${EFIDIR}
cp $iso_dir/${KERNEL_IMAGETYPE} ${EFIIMGDIR}
EFIPATH=$(echo "${EFIDIR}" | sed 's/\//\\/g')
printf 'fs0:%s\%s\n' "$EFIPATH" "$GRUB_IMAGE" > ${EFIIMGDIR}/startup.nsh
if [ -f "$iso_dir/initrd" ] ; then
cp $iso_dir/initrd ${EFIIMGDIR}
fi
}
efi_hddimg_populate() {
efi_populate $1
}

View File

@@ -73,10 +73,16 @@ ICECC_ENV_DEBUG ??= ""
#
# libgcc-initial - fails with CPP sanity check error if host sysroot contains
# cross gcc built for another target tune/variant
# pixman - prng_state: TLS reference mismatches non-TLS reference, possibly due to
# pragma omp threadprivate(prng_state)
# systemtap - _HelperSDT.c undefs macros and uses the identifiers in macros emitting
# inline assembly
# target-sdk-provides-dummy - ${HOST_PREFIX} is empty which triggers the "NULL
# prefix" error.
ICECC_SYSTEM_PACKAGE_BL += "\
libgcc-initial \
pixman \
systemtap \
target-sdk-provides-dummy \
"
@@ -132,6 +138,10 @@ def use_icecc(bb,d):
if icecc_is_cross_canadian(bb, d):
return "no"
if d.getVar('INHIBIT_DEFAULT_DEPS', False):
# We don't have a compiler, so no icecc
return "no"
pn = d.getVar('PN')
bpn = d.getVar('BPN')
@@ -243,7 +253,11 @@ def icecc_get_external_tool(bb, d, tool):
def icecc_get_tool_link(tool, d):
import subprocess
return subprocess.check_output("readlink -f %s" % tool, shell=True).decode("utf-8")[:-1]
try:
return subprocess.check_output("readlink -f %s" % tool, shell=True).decode("utf-8")[:-1]
except subprocess.CalledProcessError as e:
bb.note("icecc: one of the tools probably disappeared during recipe parsing, cmd readlink -f %s returned %d:\n%s" % (tool, e.returncode, e.output.decode("utf-8")))
return tool
def icecc_get_path_tool(tool, d):
# This is a little ugly, but we want to make sure we add an actual

View File

@@ -37,7 +37,7 @@ do_bootimg[depends] += "dosfstools-native:do_populate_sysroot \
LABELS_LIVE ?= "boot install"
ROOT_LIVE ?= "root=/dev/ram0"
INITRD_IMAGE_LIVE ?= "${MLPREFIX}core-image-minimal-initramfs"
INITRD_LIVE ?= "${DEPLOY_DIR_IMAGE}/${INITRD_IMAGE_LIVE}-${MACHINE}.cpio.gz"
INITRD_LIVE ?= "${DEPLOY_DIR_IMAGE}/${INITRD_IMAGE_LIVE}-${MACHINE}.${INITRAMFS_FSTYPES}"
LIVE_ROOTFS_TYPE ?= "ext4"
ROOTFS ?= "${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.${LIVE_ROOTFS_TYPE}"

View File

@@ -305,11 +305,8 @@ fakeroot python do_image_qa () {
bb.build.exec_func(cmd, d)
except oe.utils.ImageQAFailed as e:
qamsg = qamsg + '\tImage QA function %s failed: %s\n' % (e.name, e.description)
except bb.build.FuncFailed as e:
qamsg = qamsg + '\tImage QA function %s failed' % e.name
if e.logfile:
qamsg = qamsg + ' (log file is located at %s)' % e.logfile
qamsg = qamsg + '\n'
except Exception as e:
qamsg = qamsg + '\tImage QA function %s failed\n' % cmd
if qamsg:
imgname = d.getVar('IMAGE_NAME')
@@ -529,7 +526,7 @@ def get_rootfs_size(d):
base_size = size_kb * overhead_factor
bb.debug(1, '%f = %d * %f' % (base_size, size_kb, overhead_factor))
base_size2 = max(base_size, rootfs_req_size) + rootfs_extra_space
bb.debug(1, '%f = max(%f, %d)[%f] + %d' % (base_size2, base_size, rootfs_req_size, max(base_size, rootfs_req_size), overhead_factor))
bb.debug(1, '%f = max(%f, %d)[%f] + %d' % (base_size2, base_size, rootfs_req_size, max(base_size, rootfs_req_size), rootfs_extra_space))
base_size = base_size2
if base_size != int(base_size):

View File

@@ -284,7 +284,7 @@ COMPRESSIONTYPES ?= ""
CONVERSIONTYPES = "gz bz2 lzma xz lz4 lzo zip sum md5sum sha1sum sha224sum sha256sum sha384sum sha512sum bmap u-boot vmdk vdi qcow2 base64 ${COMPRESSIONTYPES}"
CONVERSION_CMD_lzma = "lzma -k -f -7 ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
CONVERSION_CMD_gz = "gzip -f -9 -n -c ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.gz"
CONVERSION_CMD_gz = "gzip -f -9 -n -c --rsyncable ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.gz"
CONVERSION_CMD_bz2 = "pbzip2 -f -k ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}"
CONVERSION_CMD_xz = "xz -f -k -c ${XZ_COMPRESSION_LEVEL} ${XZ_DEFAULTS} --check=${XZ_INTEGRITY_CHECK} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} > ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.xz"
CONVERSION_CMD_lz4 = "lz4 -9 -z -l ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type} ${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.${type}.lz4"
@@ -324,7 +324,7 @@ RUNNABLE_MACHINE_PATTERNS ?= "qemu"
DEPLOYABLE_IMAGE_TYPES ?= "hddimg iso"
# The IMAGE_TYPES_MASKED variable will be used to mask out from the IMAGE_FSTYPES,
# images that will not be built at do_rootfs time: vmdk, vdi, qcow2, hdddirect, hddimg, iso, etc.
# images that will not be built at do_rootfs time: vmdk, vdi, qcow2, hddimg, iso, etc.
IMAGE_TYPES_MASKED ?= ""
# bmap requires python3 to be in the PATH

View File

@@ -47,7 +47,8 @@ do_image_wic[depends] += "${@' '.join('%s-native:do_populate_sysroot' % r for r
# We ensure all artfacts are deployed (e.g virtual/bootloader)
do_image_wic[recrdeptask] += "do_deploy"
WKS_FILE_DEPENDS_DEFAULT = "syslinux-native bmap-tools-native cdrtools-native btrfs-tools-native squashfs-tools-native e2fsprogs-native"
WKS_FILE_DEPENDS_DEFAULT = '${@bb.utils.contains_any("BUILD_ARCH", [ 'x86_64', 'i686' ], "syslinux-native", "",d)}'
WKS_FILE_DEPENDS_DEFAULT += "bmap-tools-native cdrtools-native btrfs-tools-native squashfs-tools-native e2fsprogs-native"
WKS_FILE_DEPENDS_BOOTLOADERS = ""
WKS_FILE_DEPENDS_BOOTLOADERS_x86 = "syslinux grub-efi systemd-boot"
WKS_FILE_DEPENDS_BOOTLOADERS_x86-64 = "syslinux grub-efi systemd-boot"
@@ -76,6 +77,11 @@ python do_write_wks_template () {
wks_file = d.getVar('WKS_FULL_PATH')
with open(wks_file, 'w') as f:
f.write(template_body)
f.close()
# Copy the finalized wks file to the deploy directory for later use
depdir = d.getVar('IMGDEPLOYDIR')
basename = d.getVar('IMAGE_BASENAME')
bb.utils.copyfile(wks_file, "%s/%s" % (depdir, basename + '-' + os.path.basename(wks_file)))
}
python () {
@@ -104,7 +110,7 @@ python () {
# file in process_wks_template as well, so just put it in
# a variable and let the metadata deal with the deps.
d.setVar('_WKS_TEMPLATE', body)
bb.build.addtask('do_write_wks_template', 'do_image_wic', None, d)
bb.build.addtask('do_write_wks_template', 'do_image_wic', 'do_image', d)
bb.build.addtask('do_image_wic', 'do_image_complete', None, d)
}
@@ -126,6 +132,10 @@ python do_rootfs_wicenv () {
value = d.getVar(var)
if value:
envf.write('%s="%s"\n' % (var, value.strip()))
envf.close()
# Copy .env file to deploy directory for later use with stand alone wic
depdir = d.getVar('IMGDEPLOYDIR')
bb.utils.copyfile(os.path.join(outdir, basename) + '.env', os.path.join(depdir, basename) + '.env')
}
addtask do_rootfs_wicenv after do_image before do_image_wic
do_rootfs_wicenv[vardeps] += "${WICVARS}"

View File

@@ -722,25 +722,7 @@ def package_qa_check_rdepends(pkg, pkgdest, skip, taskdeps, packages, d):
filerdepends[subkey] = key[13:]
if filerdepends:
next = rdepends
done = rdepends[:]
# Find all the rdepends on the dependency chain
while next:
new = []
for rdep in next:
rdep_data = oe.packagedata.read_subpkgdata(rdep, d)
sub_rdeps = rdep_data.get("RDEPENDS_" + rdep)
if not sub_rdeps:
continue
for sub_rdep in bb.utils.explode_deps(sub_rdeps):
if sub_rdep in done:
continue
if oe.packagedata.has_subpkgdata(sub_rdep, d):
# It's a new rdep
done.append(sub_rdep)
new.append(sub_rdep)
next = new
# Add the rprovides of itself
if pkg not in done:
done.insert(0, pkg)
@@ -1237,6 +1219,11 @@ python () {
if prog.search(pn):
package_qa_handle_error("uppercase-pn", 'PN: %s is upper case, this can result in unexpected behavior.' % pn, d)
# Some people mistakenly use DEPENDS_${PN} instead of DEPENDS and wonder
# why it doesn't work.
if (d.getVar(d.expand('DEPENDS_${PN}'))):
package_qa_handle_error("pkgvarcheck", "recipe uses DEPENDS_${PN}, should use DEPENDS", d)
issues = []
if (d.getVar('PACKAGES') or "").split():
for dep in (d.getVar('QADEPENDS') or "").split():

View File

@@ -207,7 +207,6 @@ EOF
fitimage_emit_section_ramdisk() {
ramdisk_csum="${FIT_HASH_ALG}"
ramdisk_ctype="none"
ramdisk_loadline=""
ramdisk_entryline=""
@@ -218,24 +217,6 @@ fitimage_emit_section_ramdisk() {
ramdisk_entryline="entry = <${UBOOT_RD_ENTRYPOINT}>;"
fi
case $3 in
*.gz)
ramdisk_ctype="gzip"
;;
*.bz2)
ramdisk_ctype="bzip2"
;;
*.lzma)
ramdisk_ctype="lzma"
;;
*.lzo)
ramdisk_ctype="lzo"
;;
*.lz4)
ramdisk_ctype="lz4"
;;
esac
cat << EOF >> ${1}
ramdisk@${2} {
description = "${INITRAMFS_IMAGE}";
@@ -243,7 +224,7 @@ fitimage_emit_section_ramdisk() {
type = "ramdisk";
arch = "${UBOOT_ARCH}";
os = "linux";
compression = "${ramdisk_ctype}";
compression = "none";
${ramdisk_loadline}
${ramdisk_entryline}
hash@1 {

View File

@@ -3,10 +3,6 @@ uboot_prep_kimage() {
vmlinux_path="arch/${ARCH}/boot/compressed/vmlinux"
linux_suffix=""
linux_comp="none"
elif [ -e arch/${ARCH}/boot/Image ] ; then
vmlinux_path="vmlinux"
linux_suffix=".gz"
linux_comp="gzip"
elif [ -e arch/${ARCH}/boot/vmlinuz.bin ]; then
rm -f linux.bin
cp -l arch/${ARCH}/boot/vmlinuz.bin linux.bin

View File

@@ -96,8 +96,10 @@ python __anonymous () {
d.setVar('ALLOW_EMPTY_%s-image-%s' % (kname, typelower), '1')
image = d.getVar('INITRAMFS_IMAGE')
image_bundle = d.getVar('INITRAMFS_IMAGE_BUNDLE')
if image and bb.utils.to_boolean(image_bundle, False):
# If the INTIRAMFS_IMAGE is set but the INITRAMFS_IMAGE_BUNDLE is set to 0,
# the do_bundle_initramfs does nothing, but the INITRAMFS_IMAGE is built
# standalone for use by wic and other tools.
if image:
d.appendVarFlag('do_bundle_initramfs', 'depends', ' ${INITRAMFS_IMAGE}:do_image_complete')
# NOTE: setting INITRAMFS_TASK is for backward compatibility
@@ -454,7 +456,7 @@ do_shared_workdir () {
cp .config $kerneldir/
mkdir -p $kerneldir/include/config
cp include/config/kernel.release $kerneldir/include/config/kernel.release
if [ -e certs/signing_key.pem ]; then
if [ -e certs/signing_key.x509 ]; then
# The signing_key.* files are stored in the certs/ dir in
# newer Linux kernels
mkdir -p $kerneldir/certs

View File

@@ -82,6 +82,9 @@ do_collect_bins_from_locale_tree() {
parent=$(dirname ${localedir})
mkdir -p ${PKGD}/$parent
tar -cf - -C $treedir/$parent -p $(basename ${localedir}) | tar -xf - -C ${PKGD}$parent
# Finalize tree by chaning all duplicate files into hard links
cross-localedef-hardlink -c -v ${WORKDIR}/locale-tree
}
inherit qemu
@@ -265,7 +268,7 @@ python package_do_split_gconvs () {
bb.error("locale_arch_options not found for target_arch=" + target_arch)
bb.fatal("unknown arch:" + target_arch + " for locale_arch_options")
localedef_opts += " --force --no-archive --prefix=%s \
localedef_opts += " --force --no-hard-links --no-archive --prefix=%s \
--inputfile=%s/%s/i18n/locales/%s --charmap=%s %s/%s" \
% (treedir, treedir, datadir, locale, encoding, outputpath, name)
@@ -273,7 +276,7 @@ python package_do_split_gconvs () {
(path, i18npath, gconvpath, localedef_opts)
else: # earlier slower qemu way
qemu = qemu_target_binary(d)
localedef_opts = "--force --no-archive --prefix=%s \
localedef_opts = "--force --no-hard-links --no-archive --prefix=%s \
--inputfile=%s/i18n/locales/%s --charmap=%s %s" \
% (treedir, datadir, locale, encoding, name)

View File

@@ -198,10 +198,6 @@ def get_deployed_dependencies(d):
deploy = {}
# Get all the dependencies for the current task (rootfs).
# Also get EXTRA_IMAGEDEPENDS because the bootloader is
# usually in this var and not listed in rootfs.
# At last, get the dependencies from boot classes because
# it might contain the bootloader.
taskdata = d.getVar("BB_TASKDEPDATA", False)
depends = list(set([dep[0] for dep
in list(taskdata.values())

View File

@@ -19,6 +19,8 @@ def get_musl_loader(d):
dynamic_loader = "${base_libdir}/ld-musl-arm${ARMPKGSFX_ENDIAN}${ARMPKGSFX_EABI}.so.1"
elif targetarch.startswith("aarch64"):
dynamic_loader = "${base_libdir}/ld-musl-aarch64${ARMPKGSFX_ENDIAN_64}.so.1"
elif targetarch.startswith("riscv64"):
dynamic_loader = "${base_libdir}/ld-musl-riscv64${@['', '-sf'][d.getVar('TARGET_FPU') == 'soft']}.so.1"
return dynamic_loader
def get_glibc_loader(d):
@@ -42,6 +44,8 @@ def get_glibc_loader(d):
dynamic_loader = "${base_libdir}/ld-linux.so.3"
elif targetarch.startswith("aarch64"):
dynamic_loader = "${base_libdir}/ld-linux-aarch64${ARMPKGSFX_ENDIAN_64}.so.1"
elif targetarch.startswith("riscv64"):
dynamic_loader = "${base_libdir}/ld-linux-riscv64-lp64${@['d', ''][d.getVar('TARGET_FPU') == 'soft']}.so.1"
return dynamic_loader
def get_linuxloader(d):

View File

@@ -29,6 +29,39 @@ def pcbios(d):
PCBIOS = "${@pcbios(d)}"
PCBIOS_CLASS = "${@['','syslinux'][d.getVar('PCBIOS') == '1']}"
# efi_populate_common DEST BOOTLOADER
efi_populate_common() {
# DEST must be the root of the image so that EFIDIR is not
# nested under a top level directory.
DEST=$1
install -d ${DEST}${EFIDIR}
install -m 0644 ${DEPLOY_DIR_IMAGE}/$2-${EFI_BOOT_IMAGE} ${DEST}${EFIDIR}/${EFI_BOOT_IMAGE}
EFIPATH=$(echo "${EFIDIR}" | sed 's/\//\\/g')
printf 'fs0:%s\%s\n' "$EFIPATH" "${EFI_BOOT_IMAGE}" >${DEST}/startup.nsh
}
efi_iso_populate() {
iso_dir=$1
efi_populate $iso_dir
# Build a EFI directory to create efi.img
mkdir -p ${EFIIMGDIR}/${EFIDIR}
cp $iso_dir/${EFIDIR}/* ${EFIIMGDIR}${EFIDIR}
cp $iso_dir/${KERNEL_IMAGETYPE} ${EFIIMGDIR}
EFIPATH=$(echo "${EFIDIR}" | sed 's/\//\\/g')
printf 'fs0:%s\%s\n' "$EFIPATH" "${EFI_BOOT_IMAGE}" >${EFIIMGDIR}/startup.nsh
if [ -f "$iso_dir/initrd" ] ; then
cp $iso_dir/initrd ${EFIIMGDIR}
fi
}
efi_hddimg_populate() {
efi_populate $1
}
inherit ${EFI_CLASS}
inherit ${PCBIOS_CLASS}

View File

@@ -24,11 +24,7 @@ MESONOPTS = " --prefix ${prefix} \
--infodir ${@noprefix('infodir', d)} \
--sysconfdir ${sysconfdir} \
--localstatedir ${localstatedir} \
--sharedstatedir ${sharedstatedir} \
-Dc_args='${BUILD_CPPFLAGS} ${BUILD_CFLAGS}' \
-Dc_link_args='${BUILD_LDFLAGS}' \
-Dcpp_args='${BUILD_CPPFLAGS} ${BUILD_CXXFLAGS}' \
-Dcpp_link_args='${BUILD_LDFLAGS}'"
--sharedstatedir ${sharedstatedir} "
EXTRA_OEMESON_append = " ${PACKAGECONFIG_CONFARGS}"
@@ -59,6 +55,8 @@ def meson_cpu_family(var, d):
return 'mips64'
elif re.match(r"i[3-6]86", arch):
return "x86"
elif arch == "microblazeel" or arch == "microblazeeb":
return "microblaze"
else:
return arch
@@ -86,7 +84,7 @@ ld = ${@meson_array('LD', d)}
strip = ${@meson_array('STRIP', d)}
readelf = ${@meson_array('READELF', d)}
pkgconfig = 'pkg-config'
llvm-config = 'llvm-config8.0.0'
llvm-config = 'llvm-config${LLVMVERSION}'
[properties]
needs_exe_wrapper = true

View File

@@ -187,7 +187,7 @@ python do_package_qa_multilib() {
if (not i.startswith('kernel-module')) and (not i.startswith(mlprefix)) and \
(not 'cross-canadian' in i) and (not i.startswith("nativesdk-")) and \
(not i.startswith("rtld")) and (not i.startswith('kernel-vmlinux')) \
and (not i.startswith("kernel-image")):
and (not i.startswith("kernel-image")) and (not i.startswith("/")):
candidates.append(i)
if len(candidates) > 0:
msg = "%s package %s - suspicious values '%s' in %s" \

View File

@@ -100,6 +100,8 @@ python () {
clsextend.map_packagevars()
clsextend.map_variable("PROVIDES")
clsextend.map_regexp_variable("PACKAGES_DYNAMIC")
d.setVar("LIBCEXTENSION", "")
d.setVar("ABIEXTENSION", "")
}
addhandler nativesdk_virtclass_handler

View File

@@ -1580,6 +1580,7 @@ SHLIBSDIRS = "${WORKDIR_PKGDATA}/${MLPREFIX}shlibs2"
SHLIBSWORKDIR = "${PKGDESTWORK}/${MLPREFIX}shlibs2"
python package_do_shlibs() {
import itertools
import re, pipes
import subprocess
@@ -1646,7 +1647,8 @@ python package_do_shlibs() {
prov = (this_soname, ldir, pkgver)
if not prov in sonames:
# if library is private (only used by package) then do not build shlib for it
if not private_libs or this_soname not in private_libs:
import fnmatch
if not private_libs or len([i for i in private_libs if fnmatch.fnmatch(this_soname, i)]) == 0:
sonames.add(prov)
if libdir_re.match(os.path.dirname(file)):
needs_ldconfig = True
@@ -1829,20 +1831,21 @@ python package_do_shlibs() {
# /opt/abc/lib/libfoo.so.1 and contains /usr/bin/abc depending on system library libfoo.so.1
# but skipping it is still better alternative than providing own
# version and then adding runtime dependency for the same system library
if private_libs and n[0] in private_libs:
import fnmatch
if private_libs and len([i for i in private_libs if fnmatch.fnmatch(n[0], i)]) > 0:
bb.debug(2, '%s: Dependency %s covered by PRIVATE_LIBS' % (pkg, n[0]))
continue
if n[0] in shlib_provider.keys():
shlib_provider_path = []
for k in shlib_provider[n[0]].keys():
shlib_provider_path.append(k)
match = None
for p in list(n[2]) + shlib_provider_path + libsearchpath:
if p in shlib_provider[n[0]]:
match = p
break
if match:
(dep_pkg, ver_needed) = shlib_provider[n[0]][match]
shlib_provider_map = shlib_provider[n[0]]
matches = set()
for p in itertools.chain(list(n[2]), sorted(shlib_provider_map.keys()), libsearchpath):
if p in shlib_provider_map:
matches.add(p)
if len(matches) > 1:
matchpkgs = ', '.join([shlib_provider_map[match][0] for match in matches])
bb.error("%s: Multiple shlib providers for %s: %s (used by files: %s)" % (pkg, n[0], matchpkgs, n[1]))
elif len(matches) == 1:
(dep_pkg, ver_needed) = shlib_provider_map[matches.pop()]
bb.debug(2, '%s: Dependency %s requires package %s (used by files: %s)' % (pkg, n[0], dep_pkg, n[1]))
@@ -1924,7 +1927,7 @@ python package_do_pkgconfig () {
for dir in reversed(shlibs_dirs):
if not os.path.exists(dir):
continue
for file in os.listdir(dir):
for file in sorted(os.listdir(dir)):
m = re.match(r'^(.*)\.pclist$', file)
if m:
pkg = m.group(1)
@@ -2252,14 +2255,18 @@ python do_package_setscene () {
}
addtask do_package_setscene
do_packagedata () {
:
# Copy from PKGDESTWORK to tempdirectory as tempdirectory can be cleaned at both
# do_package_setscene and do_packagedata_setscene leading to races
python do_packagedata () {
src = d.expand("${PKGDESTWORK}")
dest = d.expand("${WORKDIR}/pkgdata-pdata-input")
oe.path.copyhardlinktree(src, dest)
}
addtask packagedata before do_build after do_package
SSTATETASKS += "do_packagedata"
do_packagedata[sstate-inputdirs] = "${PKGDESTWORK}"
do_packagedata[sstate-inputdirs] = "${WORKDIR}/pkgdata-pdata-input"
do_packagedata[sstate-outputdirs] = "${PKGDATA_DIR}"
do_packagedata[stamp-extra-info] = "${MACHINE_ARCH}"

View File

@@ -6,6 +6,8 @@ inherit package
IMAGE_PKGTYPE ?= "deb"
DPKG_BUILDCMD ??= "dpkg-deb"
DPKG_ARCH ?= "${@debian_arch_map(d.getVar('TARGET_ARCH'), d.getVar('TUNE_FEATURES'))}"
DPKG_ARCH[vardepvalue] = "${DPKG_ARCH}"
@@ -269,7 +271,8 @@ def deb_write_pkg(pkg, d):
conffiles.close()
os.chdir(basedir)
subprocess.check_output("PATH=\"%s\" dpkg-deb -b %s %s" % (localdata.getVar("PATH"), root, pkgoutdir),
subprocess.check_output("PATH=\"%s\" %s -b %s %s" % (localdata.getVar("PATH"), localdata.getVar("DPKG_BUILDCMD"),
root, pkgoutdir),
stderr=subprocess.STDOUT,
shell=True)

View File

@@ -409,7 +409,6 @@ python write_specfile () {
if not file_list and localdata.getVar('ALLOW_EMPTY', False) != "1":
bb.note("Not creating empty RPM package for %s" % splitname)
else:
bb.note("Creating RPM package for %s" % splitname)
spec_files_top.append('%files')
if extra_pkgdata:
package_rpm_extra_pkgdata(splitname, spec_files_top, localdata)
@@ -418,7 +417,7 @@ python write_specfile () {
bb.note("Creating RPM package for %s" % splitname)
spec_files_top.extend(file_list)
else:
bb.note("Creating EMPTY RPM Package for %s" % splitname)
bb.note("Creating empty RPM package for %s" % splitname)
spec_files_top.append('')
continue
@@ -510,7 +509,7 @@ python write_specfile () {
bb.note("Creating RPM package for %s" % splitname)
spec_files_bottom.extend(file_list)
else:
bb.note("Creating EMPTY RPM Package for %s" % splitname)
bb.note("Creating empty RPM package for %s" % splitname)
spec_files_bottom.append('')
del localdata

View File

@@ -8,7 +8,7 @@ PACKAGES = "${PN}"
# By default, packagegroup packages do not depend on a certain architecture.
# Only if dependencies are modified by MACHINE_FEATURES, packages
# need to be set to MACHINE_ARCH after inheriting packagegroup.bbclass
# need to be set to MACHINE_ARCH before inheriting packagegroup.bbclass
PACKAGE_ARCH ?= "all"
# Fully expanded - so it applies the overrides as well

View File

@@ -8,6 +8,7 @@ COMPLEMENTARY_GLOB[doc-pkgs] = '*-doc'
COMPLEMENTARY_GLOB[dbg-pkgs] = '*-dbg'
COMPLEMENTARY_GLOB[src-pkgs] = '*-src'
COMPLEMENTARY_GLOB[ptest-pkgs] = '*-ptest'
COMPLEMENTARY_GLOB[bash-completion-pkgs] = '*-bash-completion'
def complementary_globs(featurevar, d):
all_globs = d.getVarFlags('COMPLEMENTARY_GLOB')
@@ -63,7 +64,7 @@ python () {
SDK_RDEPENDS = "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
SDK_DEPENDS = "virtual/fakeroot-native ${SDK_ARCHIVE_DEPENDS} cross-localedef-native nativesdk-qemuwrapper-cross ${@' '.join(["%s-qemuwrapper-cross" % m for m in d.getVar("MULTILIB_VARIANTS").split()])} qemuwrapper-cross"
PATH_prepend = "${STAGING_DIR_HOST}${SDKPATHNATIVE}${bindir}/crossscripts:${@":".join(all_multilib_tune_values(d, 'STAGING_BINDIR_CROSS').split())}:"
SDK_DEPENDS_append_libc-glibc = " nativesdk-glibc-locale"
SDK_DEPENDS += "nativesdk-glibc-locale"
# We want the MULTIARCH_TARGET_SYS to point to the TUNE_PKGARCH, not PACKAGE_ARCH as it
# could be set to the MACHINE_ARCH

View File

@@ -20,6 +20,7 @@ SDK_EXT_task-populate-sdk-ext = "-ext"
SDK_EXT_TYPE ?= "full"
SDK_INCLUDE_PKGDATA ?= "0"
SDK_INCLUDE_TOOLCHAIN ?= "${@'1' if d.getVar('SDK_EXT_TYPE') == 'full' else '0'}"
SDK_INCLUDE_NATIVESDK ?= "0"
SDK_RECRDEP_TASKS ?= ""
@@ -378,6 +379,11 @@ python copy_buildsystem () {
f.write('require conf/locked-sigs.inc\n')
f.write('require conf/unlocked-sigs.inc\n')
if os.path.exists(builddir + '/cache/bb_unihashes.dat'):
bb.parse.siggen.save_unitaskhashes()
bb.utils.mkdirhier(os.path.join(baseoutpath, 'cache'))
shutil.copyfile(builddir + '/cache/bb_unihashes.dat', baseoutpath + '/cache/bb_unihashes.dat')
# Write a templateconf.cfg
with open(baseoutpath + '/conf/templateconf.cfg', 'w') as f:
f.write('meta/conf\n')
@@ -401,9 +407,27 @@ python copy_buildsystem () {
excluded_targets = get_sdk_install_targets(d, images_only=True)
sigfile = d.getVar('WORKDIR') + '/locked-sigs.inc'
lockedsigs_pruned = baseoutpath + '/conf/locked-sigs.inc'
#nativesdk-only sigfile to merge into locked-sigs.inc
sdk_include_nativesdk = (d.getVar("SDK_INCLUDE_NATIVESDK") == '1')
nativesigfile = d.getVar('WORKDIR') + '/locked-sigs_nativesdk.inc'
nativesigfile_pruned = d.getVar('WORKDIR') + '/locked-sigs_nativesdk_pruned.inc'
if sdk_include_nativesdk:
oe.copy_buildsystem.prune_lockedsigs([],
excluded_targets.split(),
nativesigfile,
True,
nativesigfile_pruned)
oe.copy_buildsystem.merge_lockedsigs([],
sigfile,
nativesigfile_pruned,
sigfile)
oe.copy_buildsystem.prune_lockedsigs([],
excluded_targets.split(),
sigfile,
False,
lockedsigs_pruned)
sstate_out = baseoutpath + '/sstate-cache'
@@ -414,13 +438,18 @@ python copy_buildsystem () {
sdk_include_toolchain = (d.getVar('SDK_INCLUDE_TOOLCHAIN') == '1')
sdk_ext_type = d.getVar('SDK_EXT_TYPE')
if sdk_ext_type != 'minimal' or sdk_include_toolchain or derivative:
if (sdk_ext_type != 'minimal' or sdk_include_toolchain or derivative) and not sdk_include_nativesdk:
# Create the filtered task list used to generate the sstate cache shipped with the SDK
tasklistfn = d.getVar('WORKDIR') + '/tasklist.txt'
create_filtered_tasklist(d, baseoutpath, tasklistfn, conf_initpath)
else:
tasklistfn = None
if os.path.exists(builddir + '/cache/bb_unihashes.dat'):
bb.parse.siggen.save_unitaskhashes()
bb.utils.mkdirhier(os.path.join(baseoutpath, 'cache'))
shutil.copyfile(builddir + '/cache/bb_unihashes.dat', baseoutpath + '/cache/bb_unihashes.dat')
# Add packagedata if enabled
if d.getVar('SDK_INCLUDE_PKGDATA') == '1':
lockedsigs_base = d.getVar('WORKDIR') + '/locked-sigs-base.inc'
@@ -657,9 +686,16 @@ fakeroot python do_populate_sdk_ext() {
d.setVar('SDKDEPLOYDIR', '${SDKEXTDEPLOYDIR}')
# ESDKs have a libc from the buildtools so ensure we don't ship linguas twice
d.delVar('SDKIMAGE_LINGUAS')
if d.getVar("SDK_INCLUDE_NATIVESDK") == '1':
generate_nativesdk_lockedsigs(d)
populate_sdk_common(d)
}
def generate_nativesdk_lockedsigs(d):
import oe.copy_buildsystem
sigfile = d.getVar('WORKDIR') + '/locked-sigs_nativesdk.inc'
oe.copy_buildsystem.generate_locked_sigs(sigfile, d)
def get_ext_sdk_depends(d):
# Note: the deps varflag is a list not a string, so we need to specify expand=False
deps = d.getVarFlag('do_image_complete', 'deps', False)

View File

@@ -9,6 +9,14 @@ DEPENDS_append = " python3-native "
export STAGING_INCDIR
export STAGING_LIBDIR
# Packages can use
# find_package(PythonInterp REQUIRED)
# find_package(PythonLibs REQUIRED)
# which ends up using libs/includes from build host
# Therefore pre-empt that effort
export PYTHON_LIBRARY="${STAGING_LIBDIR}/lib${PYTHON_DIR}${PYTHON_ABI}.so"
export PYTHON_INCLUDE_DIR="${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI}"
export _PYTHON_SYSCONFIGDATA_NAME="_sysconfigdata"
# suppress host user's site-packages dirs.

View File

@@ -12,6 +12,14 @@ DEPENDS_append = " python-native "
export STAGING_INCDIR
export STAGING_LIBDIR
# Packages can use
# find_package(PythonInterp REQUIRED)
# find_package(PythonLibs REQUIRED)
# which ends up using libs/includes from build host
# Therefore pre-empt that effort
export PYTHON_LIBRARY="${STAGING_LIBDIR}/lib${PYTHON_DIR}${PYTHON_ABI}.so"
export PYTHON_INCLUDE_DIR="${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI}"
# suppress host user's site-packages dirs.
export PYTHONNOUSERSITE = "1"

View File

@@ -25,6 +25,19 @@ def errorreport_savedata(e, newdata, file):
json.dump(newdata, f, indent=4, sort_keys=True)
return datafile
def get_conf_data(e, filename):
builddir = e.data.getVar('TOPDIR')
filepath = os.path.join(builddir, "conf", filename)
jsonstring = ""
if os.path.exists(filepath):
with open(filepath, 'r') as f:
for line in f.readlines():
if line.startswith("#") or len(line.strip()) == 0:
continue
else:
jsonstring=jsonstring + line
return jsonstring
python errorreport_handler () {
import json
import codecs
@@ -51,6 +64,8 @@ python errorreport_handler () {
data['failures'] = []
data['component'] = " ".join(e.getPkgs())
data['branch_commit'] = str(base_detect_branch(e.data)) + ": " + str(base_detect_revision(e.data))
data['local_conf'] = get_conf_data(e, 'local.conf')
data['auto_conf'] = get_conf_data(e, 'auto.conf')
lock = bb.utils.lockfile(datafile + '.lock')
errorreport_savedata(e, data, "error-report.txt")
bb.utils.unlockfile(lock)

View File

@@ -39,19 +39,28 @@ inherit ${@oe.utils.ifelse(d.getVar('BUILD_REPRODUCIBLE_BINARIES') == '1', 'repr
SDE_DIR ="${WORKDIR}/source-date-epoch"
SDE_FILE = "${SDE_DIR}/__source_date_epoch.txt"
SDE_DEPLOYDIR = "${WORKDIR}/deploy-source-date-epoch"
SSTATETASKS += "do_deploy_source_date_epoch"
do_deploy_source_date_epoch () {
echo "Deploying SDE to ${SDE_DIR}."
mkdir -p ${SDE_DEPLOYDIR}
if [ -e ${SDE_FILE} ]; then
cp -p ${SDE_FILE} ${SDE_DEPLOYDIR}/__source_date_epoch.txt
fi
}
python do_deploy_source_date_epoch_setscene () {
sstate_setscene(d)
bb.utils.mkdirhier(d.getVar('SDE_DIR'))
sde_file = os.path.join(d.getVar('SDE_DEPLOYDIR'), '__source_date_epoch.txt')
if os.path.exists(sde_file):
os.rename(sde_file, d.getVar('SDE_FILE'))
}
do_deploy_source_date_epoch[dirs] = "${SDE_DIR}"
do_deploy_source_date_epoch[sstate-plaindirs] = "${SDE_DIR}"
do_deploy_source_date_epoch[dirs] = "${SDE_DEPLOYDIR}"
do_deploy_source_date_epoch[sstate-plaindirs] = "${SDE_DEPLOYDIR}"
addtask do_deploy_source_date_epoch_setscene
addtask do_deploy_source_date_epoch before do_configure after do_patch

Some files were not shown because too many files have changed in this diff Show More