]> code.ossystems Code Review - openembedded-core.git/log
openembedded-core.git
4 years agoovmf-shell-image: image is only buildable on x86-64
Ross Burton [Fri, 22 Jan 2021 12:52:07 +0000 (12:52 +0000)]
ovmf-shell-image: image is only buildable on x86-64

This image is only buildable for x86-64, so add a COMPATIBLE assignment
to ensure it isn't attempted on others.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit bdd8208675c8a0c0232c678804a8b62cd74f1d48)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agocore-image-sato-sdk-ptest: these images need ptest
Ross Burton [Fri, 22 Jan 2021 12:52:06 +0000 (12:52 +0000)]
core-image-sato-sdk-ptest: these images need ptest

As this image isn't buildable without ptest (the packages won't exist),
depend on the ptest DISTRO_FEATURE to ensure we don't try and build it.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0fe856d726c6d9c35533e32e70fbe05ef2b88b17)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agodtc: improve reproducibility
Oleksiy Obitotskyy [Fri, 22 Jan 2021 11:52:50 +0000 (03:52 -0800)]
dtc: improve reproducibility

Makefile override CFLAGS, so -fmacro/debug-prefix-map
optiions was omitted and binaries contains absolute
patch to sources.

Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b58e808a087bbc0a5abd78fd34bb6f1c0c93ba25)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agodevtool: Fix file:// fetcher symlink directory structure
Tomasz Dziendzielski [Thu, 21 Jan 2021 22:31:53 +0000 (23:31 +0100)]
devtool: Fix file:// fetcher symlink directory structure

Add relative path if file is under directory.

[YOCTO #13738]

Signed-off-by: Tomasz Dziendzielski <tomasz.dziendzielski@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 19ddacc1b38f9ebb86a9359963ccc3c707f7125e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agooeqa/selftest/cases/tinfoil.py: increase timeout 10->60s test_wait_event
Yi Fan Yu [Thu, 21 Jan 2021 22:36:39 +0000 (17:36 -0500)]
oeqa/selftest/cases/tinfoil.py: increase timeout 10->60s test_wait_event

The test would timeout on autobuilders. This patch increases the
timeout to 60s

The test will now also exit as soon as we receive the 2 expected events
Expected runtime is around 1s if successful

Bug 14158

Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit be02aa9283f805de718badd5ea12c4968da8774f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoexternalsrc: Fix parsing error with devtool non-git sources
Tomasz Dziendzielski [Wed, 20 Jan 2021 14:55:25 +0000 (15:55 +0100)]
externalsrc: Fix parsing error with devtool non-git sources

If srcdir is under poky directory (e.g. devtool poky/build/workspace/sources)
and is not a git repository then ${@srctree_hash_files(d)} will run "git
rev-parse --git-dir" and detect poky directory as git-dir and run "'git', 'add',
'-A', '.'], cwd=s_dir" trying to add srcdir but build dir is in .gitignore and
latest git will fail with "The following paths are ignored by one of your
.gitignore files: build" which will end with "ExpansionError during parsing".

In this commit I added a check if git_dir is the same as git-dir from
TOPDIR (which will detect poky directory) and if yes, then treat srcdir
as non-git sources.

Signed-off-by: Tomasz Dziendzielski <tomasz.dziendzielski@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 95fbac8dcad6c93f4c9737e9fe13e92ab6befa09)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agodevtool: Fix source extraction for gcc shared source
Tomasz Dziendzielski [Tue, 19 Jan 2021 18:56:29 +0000 (19:56 +0100)]
devtool: Fix source extraction for gcc shared source

If do_patch task is disabled then prepare do_configure dependencies to
fetch external sources and create symlink to ${S} in devtool workspace.

[YOCTO #13036]

Signed-off-by: Tomasz Dziendzielski <tomasz.dziendzielski@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 9e47319bfe62d289b90f7545a64dbdc1cbde7f1d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agotoolchain-shar-relocate.sh: Fix handling files with colons
Oleksiy Obitotskyy yIEf0zt.mo [Tue, 19 Jan 2021 13:02:59 +0000 (05:02 -0800)]
toolchain-shar-relocate.sh: Fix handling files with colons

Files could contain colons in name and we should not use
colons (':') as field separator. E.g. perl/python man
pages packages.

Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 50d2ed0689f1aed6f33b4992d37e2e991c99eb07)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoflex: Fix --noline option behavior
Oleksiy Obitotskyy [Tue, 19 Jan 2021 12:49:38 +0000 (04:49 -0800)]
flex: Fix --noline option behavior

Option --noline or -L does not handled properly.
So generated code contains #line directives with
file absolute path and prevents to create
reproducible builds.

Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0bf2cb7dc2123f220accf1542c2ae4c4b4b8275a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoflex: Refresh patch
zangrc [Wed, 29 Jul 2020 01:31:22 +0000 (09:31 +0800)]
flex: Refresh patch

The patch changes the same file twice which causes issues with some patch
tools (not used in YP by default). Refresh the patch to clean this up
anyway.

RP: Tweak commit message
Signed-off-by: Zang Ruochen <zangrc.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit cb6e65f8196fd6587c75c3ab2cf060c00a074ec6)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoflex: fix build with autoconf 2.70
Ross Burton [Thu, 16 Jul 2020 11:55:45 +0000 (12:55 +0100)]
flex: fix build with autoconf 2.70

autoconf 2.70 is coming soon which has some small behavioural fixes, so
backport a patch from upstream to fix the build with that release.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 946610f2cc8cd42265ee3fab6c73ad4831aaeb4e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agooeqa/ptest: print a warning if ptests failed
Alexander Kanavin [Sat, 19 Dec 2020 17:29:08 +0000 (18:29 +0100)]
oeqa/ptest: print a warning if ptests failed

This allows spotting ptest regressions without having hard ptest failures
(for that full ptest stability should be achieved).

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 79b54d902df2788b0822b6c9cc14705ab00e6a5b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
(cherry picked from commit 5232c0b480eba4537c8db71c95189950011fb64d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agosanity.bbclass: sanity check for if bitbake is present in PATH
Dorinda [Tue, 26 Jan 2021 01:33:59 +0000 (02:33 +0100)]
sanity.bbclass: sanity check for if bitbake is present in PATH

If a user executes the environment script instead of sourcing it,
there's an error about an empty element in PATH. This is because
bitbake isn't present in environment variable PATH. Hence, this
patch adds a sanity check to verify if bitbake is present in
PATH and if bitbake isn't present issue a warning message.

[YOCTO #13822]

Signed-off-by: Dorinda Bassey <dorindabassey@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit e08799913a7f207bc63e085eb98196fd61ed57bc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agosanity: Verify that user isn't building in PSEUDO_IGNORE_PATHS
Dorinda [Tue, 26 Jan 2021 00:53:47 +0000 (01:53 +0100)]
sanity: Verify that user isn't building in PSEUDO_IGNORE_PATHS

If a user builds in a path in PSEUDO_IGNORE_PATHS, random failures
are generated. Hence this patch adds a sanity check in sanity.bbclass
to ensure that a user isn't building in PSEUDO_IGNORE_PATHS.

[YOCTO #14179]

Signed-off-by: Dorinda Bassey <dorindabassey@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 7a681525e904914e938de25df5cc64209097d15d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowic: Optimise fstab modification for ext2/3/4 and msdos partitions
Paul Barker [Tue, 19 Jan 2021 16:26:10 +0000 (16:26 +0000)]
wic: Optimise fstab modification for ext2/3/4 and msdos partitions

The fix for [Yocto #13994] required the rootfs directory to be copied
(using hardlinks if possible) when modifying the fstab file under wic.

We can optimise this copy away for filesystems where we have the tools
to modify the contents of the partition image after it is created. For
ext2/3/4 filesystems we have the debugfs tool and for msdos/vfat
filesystems we have the mcopy tool. So for any of these filesystems we
skip the modification of the fstab file in the rootfs directory (and
skip the associated copy unless it is otherwise necessary) and update
the contents of fstab directly in the partition image.

Signed-off-by: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5fb8ae0e9159597d7eaa9307a3a8543800bf9405)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowic: Copy rootfs dir if fstab needs updating
Paul Barker [Tue, 19 Jan 2021 16:26:09 +0000 (16:26 +0000)]
wic: Copy rootfs dir if fstab needs updating

By default, wic updates the /etc/fstab in the rootfs to include details
of additional partitions described in the selected wks file. If this
modification is performed in place, other tasks which create an image
file from the rootfs directory (e.g. do_image_tar and do_image_ext4)
will pick up the modified fstab file which would not be appropriate for
those images as they do not include the additional partitions described
in the wks file. wic does undo modifications to the fstab file once it
has finished creating the filesystem image, however this leaves open a
race condition if one of the other tasks reads the contents of the fstab
file from the rootfs directory between the point where wic modifies the
fstab file and the point where wic restores the files original content.

This could be solved by adding a lockfile for tasks which use the rootfs
directory to ensure that no other such task is reading the rootfs
directory while do_image_wic is running. This would serialize several
do_image_* tasks and result in slower builds, especially for large
images. Another drawback of this solution is that it is hard to
selectively optimise - adding lockfiles to do_image_* tasks would result
in these tasks always being serialized even if no fstab modification
will take place.

An alternative solution is to copy the rootfs directory when fstab needs
to be modified. The code to do this in wic already exists as it is
needed when including or excluding content in the rootfs. This still
results in an impact on build times but the copy uses hardlinks if
possible (so little data is actually copied) and we can make selective
optimisations to improve things. The rootfs copy will only take place if
fstab modification is required (or if it was already needed to include
or exclude rootfs content). We can also follow up with further
optimisations after this commit. So this second solution is chosen.

Fixes [Yocto #13994]

Signed-off-by: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ce682a73b7447652f898ce1d1d0416a456df5416)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowic: Add --change-directory argument
Ricardo Ribalda Delgado [Sun, 19 Apr 2020 06:35:31 +0000 (08:35 +0200)]
wic: Add --change-directory argument

This option allows to specify which part of a rootfs is going to be
included, the same way the -C argument on tar.

Thanks to this option we can make sure the permissions and usernames
on the target partition are respected, and also simplify the creation of
splitted partitons, not neeting to invoke external vars or using .wks.in
files. Eg:

part / --source rootfs --ondisk sda --fstype=ext4 --exclude-path=etc/   
part /etc --source rootfs --fstype=ext4 --change-directory=etc

Cc: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Ricardo Ribalda Delgado <ricardo@ribalda.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2265d089a58e1f78f26d623ee667c420cb1c3bd4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowic: Update pseudo db when excluding content from rootfs
Paul Barker [Tue, 19 Jan 2021 16:26:08 +0000 (16:26 +0000)]
wic: Update pseudo db when excluding content from rootfs

To exclude content from the rootfs, wic makes a copy (using hardlinks if
possible) of the rootfs directory and associated pseudo db, then removes
files & directories as needed. However if these files and directories
are removed using the python functions os.remove and shutil.rmtree, the
copied pseudo db will not be updated correctly. For files copied from
the original rootfs, if hardlinks were used successfully when copying
the rootfs this should mean that the relevant inodes can't be reused and
so the risk of pseudo aborts should be avoided. However, this logic
doesn't apply for directories (as they can't be hardlinked) or for files
added via the '--include-path' argument (as they weren't present in the
original rootfs) and so there remains some risk of inodes being reused
and the pseudo db becoming corrupted.

To fix this, use the 'rm' command under pseudo when removing files &
directories from the copied rootfs to ensure that the copied pseudo db
is updated.

Signed-off-by: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d5db7e268947f0392c2126137571a44acd29ccd6)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoimage_types_wic: Move wic working directory
Paul Barker [Tue, 19 Jan 2021 16:26:07 +0000 (16:26 +0000)]
image_types_wic: Move wic working directory

By default the wic working directory is placed under the output
directory. When invoking wic under bitbake, the wic output directory is
added to PSEUDO_PATHS_IGNORE to avoid issues with files being removed
from outside a pseudo environment (see oe-core commit ad8f5532ff).

However, wic will copy the rootfs directory into its working directory
if it needs to add or remove content before creating a filesystem image.
This copy of the rootfs directory must be tracked by pseudo in order to
keep the permissions correct in the resulting image. So we can't have
the wic working directory under a path in PSEUDO_PATHS_IGNORE unless
we like broken permissions.

To fix this the new '-w' argument to wic is used to move the working
directory away from the output directory.

Note that wic deletes the temporary working directory automatically
when it finishes creating an image so users won't normally see the
'tmp-wic' directory under WORKDIR.

Fixes [Yocto #14129]

Signed-off-by: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 4d07169499c47fa9dc759e6f81843416a6dc25c5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowic: Ensure internal workdir is not reused
Paul Barker [Tue, 19 Jan 2021 16:26:06 +0000 (16:26 +0000)]
wic: Ensure internal workdir is not reused

If a path is specified for the internal wic working directory using
the -w/--workdir argument then it must not already exist. Re-using a
previous workdir could easily result in rootfs and intermediate files
from a previous build being added to the current image.

Signed-off-by: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2e40c8d4109024ff704c5ce40d98050ca7f34dd5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
(cherry picked from commit 5dcdb76f89c2e5bbc383e2921589482cd1c51491)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowic: Allow exec_native_cmd to run HOSTTOOLS
Paul Barker [Mon, 11 Jan 2021 10:32:44 +0000 (10:32 +0000)]
wic: Allow exec_native_cmd to run HOSTTOOLS

This allows programs from HOSTTOOLS (e.g. 'install', 'rm', 'mv', etc) to
be more easily executed by wic. Without this change only programs from
an actual *-native recipe built by bitbake can be executed by wic.

Signed-off-by: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 8eb186acdecfbb3151c9a0ab148358e3fe5cce39)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowic: Add workdir argument
Paul Barker [Mon, 11 Jan 2021 10:32:42 +0000 (10:32 +0000)]
wic: Add workdir argument

This allows the path for the temporary workdir used by wic to be set
when running wic from bitbake or directly from the command line.

Signed-off-by: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2e7314ac3a3cab89de93c932e8efc75de0feb0a7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
(cherry picked from commit a2308800b7eb5215982db7269d74d6292075f19f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Update for arm host and memleak fixes/cleanup
Richard Purdie [Sat, 9 Jan 2021 09:14:00 +0000 (09:14 +0000)]
pseudo: Update for arm host and memleak fixes/cleanup

Pulls in:

makewrappers: support architecture-overrides in wrapper modifiers
makewrappers: fix Python 2 hangover
Fix some memory leaks
Disable deprecated function warnings
Silence switch block warnings
pseudo_util: don't overrun strings when looking for keys

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 11a3a9203ad595e7fa92acf442a7f3216d6e3830)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Add lchmod wrapper
Richard Purdie [Wed, 6 Jan 2021 22:31:25 +0000 (22:31 +0000)]
pseudo: Add lchmod wrapper

New versions of glibc have an lchmod function so we need to wrap it.

Identified through a reproducibility issue in initramfs-base where
/dev/console created by mknod from coreutils changed permissions
depending on the host distro (mknod used the gnulib wrapper on most
hosts but newer ones used the libc call).

[YOCTO #14162]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 20a645664977530e602e1ac97e8dc0962e730e6c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agobitbake.conf: Add /run/ to PSEUDO_IGNORE_PATHS
Richard Purdie [Wed, 6 Jan 2021 14:42:56 +0000 (14:42 +0000)]
bitbake.conf: Add /run/ to PSEUDO_IGNORE_PATHS

Builds were failing on WSL2 which turns out to be due to accesses to
/run/ on those systems. Add this to PSEUDO_IGNORE_PATHS to fix
builds on WSL2.

[YOCTO #14175]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1d1bf51217e8b4d54af28739d3271484ee5a7974)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agolicense.bbclass: Add COMMON_LICENSE_DIR and LICENSE_PATH dirs to PSEUDO_IGNORE_PATHS
Martin Jansa [Tue, 22 Dec 2020 18:08:09 +0000 (19:08 +0100)]
license.bbclass: Add COMMON_LICENSE_DIR and LICENSE_PATH dirs to PSEUDO_IGNORE_PATHS

* now without ${COREBASE}/meta in PSEUDO_IGNORE_PATHS after:
  73d538f207 bitbake.conf: Prevent pyc file generation in pseudo context
  the do_package tasks are failing when LICENSE_CREATE_PACKAGE is enabled
  pseudo.log shows that it's because of license texts copied from
  ${COREBASE}/meta:
  path mismatch [46 links]: ino 96733640 db '/OE/build/tmp-glibc/work/all-oe-linux/foo/1.0/image/usr/share/licenses/foo/generic_Apache-2.0' req '/OE/build/openembedded-core/meta/files/common-licenses/Apache-2.0'.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 39423a33595e7ade82fc88f55823660f8532cb84)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agobitbake.conf: Prevent pyc file generation in pseudo context
Paul Barker [Wed, 16 Dec 2020 18:16:16 +0000 (18:16 +0000)]
bitbake.conf: Prevent pyc file generation in pseudo context

This also effectively reverts commit b6d30c21b0:
    bitbake.conf: Extend PSEUDO_IGNORE_PATHS to ${COREBASE}/meta

The contents of ${COREBASE}/meta were ignored as pyc files could be
generated for the contents of the lib subdirectory if python modules
were imported within a pseudo context. However this doesn't protect us
from pyc files being generated in the lib directories for other layers.
It's far better to tell python not to produce pyc files when running
under pseudo (by setting the PYTHONDONTWRITEBYTECODE variable) as this
will cover any location where pyc files could possibly be created. This
variable is set in FAKEROOTBASEENV so that it applies to the
bitbake-worker instance for fakeroot tasks, preventing pyc files from
being generated for imports in python tasks themselves.

Also add a test case to ensure that pyc files are not created in tasks
which are executed under pseudo.

Signed-off-by: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 73d538f20743017a44cea4c20dbe09a0327cfc71)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowic: Pass canonicalized paths in PSEUDO_IGNORE_PATHS
Peter Kjellerstedt [Wed, 9 Dec 2020 17:05:09 +0000 (18:05 +0100)]
wic: Pass canonicalized paths in PSEUDO_IGNORE_PATHS

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 55618cbd58d6784a82e773f323723be6f722232f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agobitbake.conf: Canonicalize paths in PSEUDO_IGNORE_PATHS
Peter Kjellerstedt [Wed, 9 Dec 2020 17:05:08 +0000 (18:05 +0100)]
bitbake.conf: Canonicalize paths in PSEUDO_IGNORE_PATHS

Use oe.path.canonicalize() to canonicalize the paths in
PSEUDO_IGNORE_PATHS before passing them to pseudo. This is needed since
pseudo will compare them to paths that are canonicalized.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1f2a497daa09cf3459e27ad6e0e8513938b52c79)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agolib/oe/path: Add canonicalize()
Peter Kjellerstedt [Wed, 9 Dec 2020 17:05:07 +0000 (18:05 +0100)]
lib/oe/path: Add canonicalize()

oe.path.canonicalize() is used to canonicalize paths (i.e., remove
symbolic links and "..", and make them absolute). It takes a string
with paths separated by commas, and returns the canonicalized path in
the same format.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 282b19c0e27488ec119f00fb2542ffdc1af54e2a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Drop patches merged into upstream branch
Richard Purdie [Wed, 16 Dec 2020 16:54:26 +0000 (16:54 +0000)]
pseudo: Drop patches merged into upstream branch

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 7386a116222979e6de60c39d2c094d5f216fb101)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agodistutils3: allow setup.py to be run from a different directory to ${S}
Jack Mitchell [Tue, 8 Dec 2020 16:03:14 +0000 (16:03 +0000)]
distutils3: allow setup.py to be run from a different directory to ${S}

Sometimes setup.py can be buried deep in a source tree. This has
traditionally been solved with setting S to the subdirectory in
the source. However with the new pseudo changes, some python modules
make changes to files beneath ${S}, for example:

S = "${WORKDIR}/git/python/pythonmodule"

then in setup.py it works with source code in a relative fashion, such
as:

../../src

This causes pseudo to abort as it isn't tracking the paths. Therefore
implement the variable DISTUTILS_SETUP_PATH so that recipes can use:

S = "${WORKDIR}/git"
DISTUTILS_SETUP_PATH = "${S}/python/pythonmodule"

inherit distutils3

This allows the full source tree to be monitored, while distutils
can run setup.py from a location other than ${S}.

Signed-off-by: Jack Mitchell <ml@embed.me.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ddcc349cede0c4fe1909df1ded7b0a7c509cd758)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Update to print PSEUDO_LOGFILE in abort message on path mismatches
Tomasz Dziendzielski [Wed, 2 Dec 2020 10:29:46 +0000 (11:29 +0100)]
pseudo: Update to print PSEUDO_LOGFILE in abort message on path mismatches

Signed-off-by: Tomasz Dziendzielski <tomasz.dziendzielski@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 9259d684415e3e7923de74359a4ed3487e0e9da7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Simplify pseudo_client_ignore_path_chroot()
Peter Kjellerstedt [Tue, 1 Dec 2020 18:11:47 +0000 (19:11 +0100)]
pseudo: Simplify pseudo_client_ignore_path_chroot()

This also plugs a memory leak in pseudo_client_ignore_path_chroot().

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d8dddd5054a1c4e20a3e32fa9ab31f5859d6fbb6)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agouninative: Don't use single sstate for pseudo-native
Richard Purdie [Sat, 21 Nov 2020 16:16:40 +0000 (16:16 +0000)]
uninative: Don't use single sstate for pseudo-native

pseudo-native is a bit special. It conditionally compiles in support for
xattr, statx and statvfs amongst other options. If a pseudo-native binary is
used on a system where these functions are present but it wasn't compiled in
we see hard to debug permissions problems.

An example is the devtool.DevtoolExtractTests.test_devtool_deploy_target
oe-selftest which shows a cryptic error:

  File "/home/pokybuild/yocto-worker/oe-selftest-fedora/build/meta/lib/oeqa/selftest/cases/devtool.py", line 1388, in test_devtool_deploy_target
    self.assertEqual(filelist1, filelist2)
  File "/usr/lib64/python3.9/unittest/case.py", line 831, in assertEqual
    assertion_func(first, second, msg=msg)
  File "/usr/lib64/python3.9/unittest/case.py", line 1037, in assertListEqual
    self.assertSequenceEqual(list1, list2, msg, seq_type=list)
  File "/usr/lib64/python3.9/unittest/case.py", line 1019, in assertSequenceEqual
    self.fail(msg)
  File "/usr/lib64/python3.9/unittest/case.py", line 670, in fail
    raise self.failureException(msg)

AssertionError: Lists differ: ['-rwxr-xr-x 6000 6000 /etc/init.d/mdmonitor', '-rw-r-[10124 chars]n.8'] != ['-rwxr-xr-x root root /etc/init.d/mdmonitor', '-rw-r-[10124 chars]n.8']

First differing element 0:
'-rwxr-xr-x 6000 6000 /etc/init.d/mdmonitor'
'-rwxr-xr-x root root /etc/init.d/mdmonitor'

This is due to a version of pseudo without statx being used on a system where
ls uses statx, hence the files are displayed as 6000.6000 instead of root.root.

Avoid this by always building pseudo-native for the specific distro in question rather
than using a universal sstate feed.

This hopefully fixes one of the mysterious AB-INT issues.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 6e3785a3f1f3cf68f5fe101cd6bebe91db165973)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agobitbake.conf: Exclude ${CCACHE_DIR} from pseudo database
Mingli Yu [Tue, 27 Oct 2020 01:29:39 +0000 (09:29 +0800)]
bitbake.conf: Exclude ${CCACHE_DIR} from pseudo database

When ccache enabled as below:
INHERIT += "ccache"
CCACHE_DIR = "/path/build/ccache"

There comes do_install failure for some recipes randomly, take
linux-libc-headerswhen as example.
 $ cat /path/build/tmp/work/corei7-64-wrs-linux/linux-libc-headers/5.8-r0/pseudo/pseudo.log
 [snip]
 path mismatch [1 link]: ino 243004209 db '/path/build/ccache/6/stats' req '/path/build/ccache/7/stats.lock'.
 [snip]

Exclude ${CCACHE_DIR} from pseudo database to fix the potential
do_install failure.

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b65e5280bf9e7f1f9c8e6acabab79bcf209e5342)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agotcl: adapt to potential pseudo changes
Mingli Yu [Thu, 22 Oct 2020 03:27:25 +0000 (11:27 +0800)]
tcl: adapt to potential pseudo changes

It failed as below when rerun do_install for tcl:
 $ bitbake tcl
 $ bitbake tcl -f -cinstall
 [snip]
 | NOTE: make -j 72 DESTDIR=/build/tmp/work/core2-64-wrs-linux/tcl/8.6.10-r0/image install
 | abort()ing pseudo client by server request. See https://wiki.yoctoproject.org/wiki/Pseudo_Abort for more details on this.
 | /build/tmp/work/core2-64-wrs-linux/tcl/8.6.10-r0/temp/run.do_install.3490694: line 184: 3499214 Aborted                 (core dumped) make -j 72 "$@"

By default the S is ${WORKDIR}/${BPN}-${PV}, but after unpack,
the tcl source [1] unpacked to ${WORKDIR}/${BPN}${PV} and all the
files under ${WORKDIR}/${BPN}${PV} are acutally the source files.

But the the main Makefile.in is under ${WORKDIR}/${BPN}${PV}/unix
for tcl, so there is below logic in tcl recipe:
S = "${WORKDIR}/${BPN}${PV}/unix"

To adapt the potential pseudo changes, there is a general logic to
exclude ${S} from pseudo database in base.bbclass in [2]. That's to
say, just the dir ${WORKDIR}/${BPN}${PV}/unix is excluded from the
pseudo database.

But it's not enough for tcl, we need to exclude the actual source dir
${WORKDIR}/${BPN}${PV} from pseudo database specifically to fix the
above do_install failure.

[1] https://downloads.sourceforge.net/tcl/tcl8.6.0-src.tar.gz
[2] https://git.openembedded.org/openembedded-core/tree/meta/classes/base.bbclass#n396

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0d835f8069a336fd6bab1058d4e605a81c844212)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agooeqa/selftest/runtime_test: Exclude gpg directory from pseudo database
Richard Purdie [Sat, 10 Oct 2020 12:35:21 +0000 (13:35 +0100)]
oeqa/selftest/runtime_test: Exclude gpg directory from pseudo database

Avoid pseudo abort()s like:
path mismatch [1 link]: ino 6295376 db '/tmp/oeqa-feed-sign-2mw7z81v/S.gpg-agent.yocto-native' req '/tmp/jwkivmu6'.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 189630ca6cdf7ceb6cf9b8f9d86c58997f505efc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agobase.bbclass: use os.path.normpath instead of just comparing WORKDIR and S as strings
Martin Jansa [Fri, 9 Oct 2020 12:58:12 +0000 (14:58 +0200)]
base.bbclass: use os.path.normpath instead of just comparing WORKDIR and S as strings

* cannot use os.path.samefile, because S/B might not exist at this time yet

* there is issue with PSEUDO_IGNORE_PATHS when some recipe sets e.g.
  S = "${WORKDIR}/"
  whole WORKDIR gets added to PSEUDO_IGNORE_PATHS and then the build
  can fail with various strange errors, in my case do_package was
  failing when do_package calls:
  fix_perms(.../1.0-r0/package/etc, 755, 0, 0, /etc)
  and fails with "[Errno 1] Operation not permitted:"

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 50b11a61ab29acb8ec990668353e0b7305114628)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Upgrade to include mkostemp64 wrapper
Richard Purdie [Fri, 9 Oct 2020 10:49:59 +0000 (11:49 +0100)]
pseudo: Upgrade to include mkostemp64 wrapper

Newer systems are using this currently unwrapped glibc function,
add it.

[YOCTO #14080]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit cba4f51f0166e2c20e854ee0344be0c58769eaca)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Update to account for patches merged on branch
Richard Purdie [Thu, 8 Oct 2020 14:08:59 +0000 (15:08 +0100)]
pseudo: Update to account for patches merged on branch

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ea22fb3aa1c5dd3edcd1d8b415a0843a9ee4677c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoabi_version,sanity: Tell users TMPDIR must be clean after pseudo changes
Richard Purdie [Thu, 8 Oct 2020 20:34:42 +0000 (21:34 +0100)]
abi_version,sanity: Tell users TMPDIR must be clean after pseudo changes

After the recent path ignore changes, there are invalid entries in exiting
pseudo databases which will trip up users with the new abort() (proving
how common the pseudo potential corrpution is!). Inform them a clean TMPDIR
is needed.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 016ee90e210c9b15b80e8370d83f41a14867a413)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agobitbake.conf: Extend PSEUDO_IGNORE_PATHS to ${COREBASE}/meta
Richard Purdie [Wed, 7 Oct 2020 22:08:45 +0000 (23:08 +0100)]
bitbake.conf: Extend PSEUDO_IGNORE_PATHS to ${COREBASE}/meta

Unfortunately, .pyc files can be generated in meta/lib/oe which corrupt the pseudo
database so we need to extend the ignore list to cover this as well.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit e0cb6dd689a362d8433caa14cc5a9fdd5eb44923)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Fix statx function usage
Richard Purdie [Wed, 7 Oct 2020 16:16:15 +0000 (17:16 +0100)]
pseudo: Fix statx function usage

There is magic in the posts where specific variable names have specific
magic. For that magic to work, "path" needs to be used not "pathname" as
is currently there. Fix this, which fixes path issues on systems using
statx (Ubuntu 20.04 in particular).

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f9ae80aee98a7bb59c83ac9ebf9d317302507cec)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowic: Handle new PSEUDO_IGNORE_PATHS variable
Richard Purdie [Sun, 4 Oct 2020 22:42:22 +0000 (23:42 +0100)]
wic: Handle new PSEUDO_IGNORE_PATHS variable

Adjust wic to correctly handle the new PSEUDO_IGNORE_PATH variable and avoid
inode corruption issues.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 13500f5234361385c365c7c35e83f99435500481)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowic: Avoid creating invalid pseudo directory
Ricardo Ribalda Delgado [Sun, 19 Apr 2020 06:35:33 +0000 (08:35 +0200)]
wic: Avoid creating invalid pseudo directory

If the source of the rootfs is not a bitbake cooked image, or it is not
pointing to the root of one, we call pseudo again, which will produce
a new pseudo folder at rootfs/../pseudo

Eg:

part /etc --source rootfs --rootfs-dir=${IMAGE_ROOTFS}/home --fstype=ext4

Cc: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Ricardo Ribalda Delgado <ricardo@ribalda.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 799a24ae78655f7a3eda7456b1a0ffaf3e43ec16)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowic: Fix multi images .wks with bitbake
Ricardo Ribalda Delgado [Sun, 19 Apr 2020 06:35:30 +0000 (08:35 +0200)]
wic: Fix multi images .wks with bitbake

In order to support .wks files with multiple images inside bitbake we
need to explicitly set the pseudo database in use.

Eg: If we try this .mks:
part / --source rootfs --ondisk sda --fstype=ext4
part /export --source rootfs --rootfs=core-image-minimal-mtdutils --fstype=ext4

The username for all the files under /export will be set to the runner
of bitbake (usually UID 1000).

Before we run wic, we need to make sure that the pseudo database will be
flushed, and contains all the data needed.

Cc: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Ricardo Ribalda Delgado <ricardo@ribalda.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit dde90a5dd2b22a539095d1bac82acc15c6380ac8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowic: Fix permissions when using exclude or include path
Ricardo Ribalda Delgado [Sun, 19 Apr 2020 06:35:29 +0000 (08:35 +0200)]
wic: Fix permissions when using exclude or include path

When parameters include_path or exclude_path are passed to the rootfs
plugin, it will copy the partition content into a folder and make all
the modifications there.

This is done using copyhardlinktree(), which does not take into
consideration the content of the pseudo folder, which contains the
information about the right permissions and ownership of the folders.

This results in a rootfs owned by the user that is running the wic
command (usually UID 1000), which makes some rootfs unbootable.

This bug can be easily triggerd with the following .wks

part / --source rootfs --fstype=ext4 --exclude-path=home

And this sequence:

$ wic create test-permissions -e core-image-minimal -o test/
$ sudo mount test/test-permissions-202004080823-sda.direct.p1 /mnt
$ ls -la /mnt/etc/shadow

To fix this we copy the content of the pseudo folders to the new folder
and modify the pseudo database using the "pseudo -B" command.

If the rootfs is not a rootfs generated by bitbake a warning is shown
making the user aware that the permissions on the target might not match
what he expects.

WARNING: /tmp/test/../pseudo folder does not exist. Usernames and permissions will be invalid

Cc: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Ricardo Ribalda Delgado <ricardo@ribalda.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit fd739c15cdba221d9d497d3402b7d929c0be2ca4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agobase/bitbake.conf: Enable pseudo path filtering
Richard Purdie [Thu, 24 Sep 2020 21:44:43 +0000 (22:44 +0100)]
base/bitbake.conf: Enable pseudo path filtering

This is a pretty big change to the way pseudo operates when used in OpenEmbedded.
Normally, pseudo monitors and logs (adds to its database) any file created or
modified whilst in a fakeroot environment. There are large numbers of files
we simply don't care about the permissions of whilst in that fakeroot context,
for example ${S}, ${B}, ${T}, ${SSTATE_DIR}, the central sstate control
directories,

This change uses new functionality in pseudo to ignore these directory trees,
resulting in a cleaner database with less chance of "stray" mismatches if files
are modified outside pseudo context. It also should reduce some overhead from
pseudo as the interprocess round trip to the server is avoided.

There is a possible complication where some existing recipe may break, for
example, we found a recipe which was writing to "${B}/install" for
"make install" in do_install and since we listed ${B} as not to be tracked,
there were errors trying to chown root for files in this location.

This patch fixes a few corner cases in OE-Core when used with this new
ignore list:

* The archiver directory matched a "${WORKDIR}/deploy*" pattern so was renamed
  to something else since that directory does need its root permissions
* The ${S} and ${B} ignoring is conditional on them being different to ${WORKDIR}
* package_write_* task output (the debs/rpms/ipks) are now owned by the build
  user so we don't want the file ownership information in the hashequiv outhash
  calculation even if they are built under pseudo.
* The fontcache postinstall intercept is run under qemu outside of pseudo context
  so delete files it may delete up front where pseudo can see this.
* SSTATE_DIR is in PSEUDO_PATHS_IGNORE, which is in FAKEROOTENV which is cached
  by bitbake. We therefore need to trigger reparsing if this changes, which means
  SSTATE_DIR can be in BB_HASHBASE_WHITELIST but not BB_HASHCONFIG_WHITELIST.
  Rework the variables to handle this. This otherwise breaks some of our sstate
  tests in oe-selftest.
* Ignore the temp directory wic uses for rebuilding rootfs.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ad8f5532ffaead9a5ad13e1034fe9e5e1b7979f4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Add pathfix patch
Richard Purdie [Sat, 3 Oct 2020 16:27:10 +0000 (17:27 +0100)]
pseudo: Add pathfix patch

Add a path to fix up handling of dirfd being passed as a full file
and with path="".

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3006bbe7768e4efe33d3d2d3f5786a561ecbe96f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Add may unlink patch
Richard Purdie [Sat, 3 Oct 2020 11:02:36 +0000 (12:02 +0100)]
pseudo: Add may unlink patch

Mark files which are unlinked (nlink == 0) but open with fd's as
"may-unlink" to avoid problematic database entries.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit e1e481f3608c05ab14c61bf45cd0837d7287b6a5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Fix xattr segfault
Richard Purdie [Thu, 1 Oct 2020 17:20:06 +0000 (18:20 +0100)]
pseudo: Fix xattr segfault

Fix a NULL pointer dereference exposed by the path ignore code in
xattr handling.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 929a27bf6cbca94d1141d2094ae0c915d93bd3f4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopsuedo: Add tracking of linked files for fds
Richard Purdie [Wed, 30 Sep 2020 13:36:20 +0000 (14:36 +0100)]
psuedo: Add tracking of linked files for fds

Where files are link()'d and one is unlink()'d, pseudo's fd mappings
can become confused. Add a patch to try and improve this for the common
usecases we see.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 9ce621fa2099608ca0ccbb8420b31d71cdd7b00e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Abort on mismatch patch
Richard Purdie [Tue, 29 Sep 2020 16:57:38 +0000 (17:57 +0100)]
pseudo: Abort on mismatch patch

Rather than doing what turns out to be a rather dangerous "fixup" if
we see a file with a different path but the same inode as another file
we've previously seen, throw and abort. Direct the user to a wiki page
where we can maintain information about what this error means.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2db491d97da08d44ebd257f98489550a82a7935c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Add support for ignoring paths from the pseudo DB
Richard Purdie [Wed, 23 Sep 2020 23:02:04 +0000 (00:02 +0100)]
pseudo: Add support for ignoring paths from the pseudo DB

Add PSEUDO_IGNORE_PATHS, a comma separated list of path prefixes, where
any files underneath are not handled by pseudo. This allows files to
be left out of the pseudo datanase where we know we don't need the
fake root emulation. This is particularly useful if we know these files
can be deleted outside of pseudo context.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 8defb687a2c0ffac232c4d0d63a590871c453a2e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Ignore mismatched inodes from the db
Richard Purdie [Tue, 22 Sep 2020 13:07:48 +0000 (14:07 +0100)]
pseudo: Ignore mismatched inodes from the db

Currently, where pseudo finds a database entry for an inode but the path
doesn't match, it reuses that database entry metadata. This is causing
real world "corruption" of file attributes.

See [YOCTO #14057] for an example of this.

This can happen when files are deleted outside of pseudo context and the
inode is reused by a new file which pseduo then "sees".

Its possible the opposite could happen, it needs to reuse attributes
but this change would prevent it. As far as I can tell, we don't want
pseuo to reuse these attributes though so this code should be safer
and avoid bugs like the above.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1c13149b81e03a1ac48b27a208a139d5493c3ce7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: fix renaming to self
Joe Slater [Wed, 26 Aug 2020 18:58:57 +0000 (11:58 -0700)]
pseudo: fix renaming to self

Pseudo tests for an item being renamed to itself only after
information about it has been deleted.  Move the test to before
we change the database.

Note that pseudo does not support renameat2(), but neither does
glibc.

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 6b3d109f42385ad1cf1f297a6c06ea7eb6509f26)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Update to add OFC fcntl lock updates
Richard Purdie [Mon, 20 Jul 2020 10:27:32 +0000 (11:27 +0100)]
pseudo: Update to add OFC fcntl lock updates

This adds in support for the OFC fcntl ioctl lock flags, removing
warnings on some more recent linux kernels.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 234168f803bee2e5b0955aabaddb1d967349fb82)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: merge in fixes for setfacl issue
Richard Purdie [Fri, 26 Jun 2020 10:49:53 +0000 (11:49 +0100)]
pseudo: merge in fixes for setfacl issue

[YOCTO #13959]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 18fbd28c9aa0276d110839c4282a9ab75fc9f28e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopseudo: Switch to oe-core branch in git repo
Richard Purdie [Fri, 26 Jun 2020 10:47:12 +0000 (11:47 +0100)]
pseudo: Switch to oe-core branch in git repo

We have a significant number of outstanding patches to pseudo. Rather than
queue these up as patches, create a branch in the upstream repo and use that
until such times as we have someone with the time/skills to properly review
these for master in the pseudo repo.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f09088eaa803ce396726368626a35dee70168d91)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agolinuxloader: Avoid confusing string concat errors
Richard Purdie [Sat, 19 Dec 2020 11:42:58 +0000 (11:42 +0000)]
linuxloader: Avoid confusing string concat errors

None is a bad choice of return value for functions used in variables
(strings) as a failure results in concatination errors. Use a string
with a clear meaning that can be searched for instead.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
4 years agoppp: Whitelist CVE-2020-15704
Robert Joslyn [Sun, 17 Jan 2021 18:42:33 +0000 (10:42 -0800)]
ppp: Whitelist CVE-2020-15704

This CVE only applies to the load_ppp_generic_if_needed patch applied by
Ubuntu. This patch is not used by OpenEmbedded, so the CVE does not
apply.

Signed-off-by: Robert Joslyn <robert.joslyn@redrectangle.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agozip: whitelist CVE-2018-13410 and CVE-2018-13684
Mikko Rapeli [Fri, 15 Jan 2021 17:05:44 +0000 (19:05 +0200)]
zip: whitelist CVE-2018-13410 and CVE-2018-13684

https://nvd.nist.gov/vuln/detail/CVE-2018-13410 is disputed and
also Debian considers it not a vulnerability:

https://security-tracker.debian.org/tracker/CVE-2018-13410

http://seclists.org/fulldisclosure/2018/Jul/24
"Negligible security impact, would involve that a untrusted party controls the -TT value."

https://nvd.nist.gov/vuln/detail/CVE-2018-13684 is not for zip, also Debian concludes this:

https://security-tracker.debian.org/tracker/CVE-2018-13684

"NOT-FOR-US: smart contract implementation for ZIP"

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 06b72a91b6dcf63fed437fd2105c59e922ba6525)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoglibc: CVE-2019-25013
Scott Murray [Thu, 14 Jan 2021 20:13:16 +0000 (12:13 -0800)]
glibc: CVE-2019-25013

Source: openembedded.org
MR: 107928
Type: Security Fix
Disposition: Backport from https://git.openembedded.org/openembedded-core/commit/meta/recipes-core/glibc?id=53d149df4d8832e34ace2470c31ddc688176faf7
ChangeID: 462441a4a91cb481401e170876c25dcdbd00f1e0
Description:

* CVE detail: https://nvd.nist.gov/vuln/detail/CVE-2019-25013

* upstream tracking: https://sourceware.org/bugzilla/show_bug.cgi?id=24973

* patch from upstream:
    https://sourceware.org/git/?p=glibc.git;a=patch;
    h=ee7a3144c9922808181009b7b3e50e852fb4999b

(From OE-Core rev: 53d149df4d8832e34ace2470c31ddc688176faf7)

Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 164b3e63612b40e984aec19c5a54c8ae408725ec)
Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoglibc: Security fix for CVE-2020-29573
Armin Kuster [Thu, 14 Jan 2021 19:51:17 +0000 (11:51 -0800)]
glibc: Security fix for CVE-2020-29573

Source: glibc.org
MR: 107580
Type: Security Fix
Disposition: Backport from https://sourceware.org/git/?p=glibc.git;a=commit;h=681900d29683722b1cb0a8e565a0585846ec5a61

ChangeID: 7bc5edb2e1947ac0774a453000a1568bbe3bb7d2
Description:

Fixedup to match 2.31 context. ldbl2mpn.c is in i386 for this version

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoxorg: Security fix for CVE-2020-14345
Armin Kuster [Thu, 14 Jan 2021 18:15:12 +0000 (10:15 -0800)]
xorg: Security fix for CVE-2020-14345

Source: freedesktop.org
MR: 105894
Type: Security Fix
Disposition: Backport from https://gitlab.freedesktop.org/xorg/xserver/-/commit/f7cd1276bbd4fe3a9700096dec33b52b8440788d
ChangeID: 2c6b7553d8e5bc152258ad1794d95cb7d8b215eb
Description:

CVE-2020-14345 fix

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agocurl: fix CVE-2020-8231/8284/8285/8286
Lee Chee Yang [Wed, 13 Jan 2021 09:29:35 +0000 (17:29 +0800)]
curl: fix CVE-2020-8231/8284/8285/8286

backport CVE-2020-8284 fixes from upstream, but drop
binary file tests/data/test1465.

upstream fixes for CVE-2020-8231, CVE-2020-8285 and CVE-2020-8286
does not applies cleanly to 7.69.1, fedora have working patch
hence import patch from Fedora.
https://koji.fedoraproject.org/koji/rpminfo?rpmID=24270817

Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowaf: don't assume the waf intepretter is good
Ross Burton [Sat, 16 Jan 2021 17:44:14 +0000 (09:44 -0800)]
waf: don't assume the waf intepretter is good

Waf typically uses `python` as the intepretter but inside a task this
does not exist.  Typically this is solved by patching waf (see the
glmark2 recipe) but not all versionf of Waf support Python 3 so we can't
assume a specific interpretter.

Instead, create a new variable WAF_PYTHON for the correct interpretter,
and default this to `python3`.  If the user has a recipe that needs
Python 2 then this can be changed in the recipe.

(From OE-Core rev: 802e80d35e6374b9b80f89068d00b84fe2d04ca1)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 85b6301c6190a1d1823de9bfe7285f7a7d15a46f)
[Fixes build issue on Ubuntu 20 with mvp
https://github.com/openembedded/meta-openembedded/issues/304 ]
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoclasses/waf: Add build and install arguments
Joshua Watt [Sat, 16 Jan 2021 17:44:13 +0000 (09:44 -0800)]
classes/waf: Add build and install arguments

Adds variables that can be used to allow a recipe to pass extra
arguments to `waf build` and `waf install`. In most cases, you want to
pass the same arguments to `build` and `install` (since install is a
superset of `build`), so by default setting EXTRA_OEWAF_BUILD also
affects `waf install`, but this can be overridded.

(From OE-Core rev: 493e17a2f5cbbbe3b1e435dadb281b007bca2cbf)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 633652284b13dc78206f4cc8e81f29de44777b75)
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoboost: drop arm-intrinsics.patch
Mans Rullgard [Sat, 16 Jan 2021 13:34:08 +0000 (13:34 +0000)]
boost: drop arm-intrinsics.patch

This patch makes gcc produce broken code.  It is unclear why it is there
in the first place.  Drop it.

Signed-off-by: Mans Rullgard <mans@mansr.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5f3cace37496fe1dc4fd045f688f7d441505c437)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agolib/oe/utils: Return empty string in parallel_make
Tomasz Dziendzielski [Fri, 15 Jan 2021 13:42:31 +0000 (14:42 +0100)]
lib/oe/utils: Return empty string in parallel_make

In cmake.bbclass we set CMAKE_BUILD_PARALLEL_LEVEL using parallel_make
function and if PARALLEL_MAKE is set to empty string then this variable
is exported as "None" causing cmake to fail with:
"'CMAKE_BUILD_PARALLEL_LEVEL' environment variable
invalid number 'None' given."

Signed-off-by: Tomasz Dziendzielski <tomasz.dziendzielski@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2f790ded554a52ac18d1c28002142f9c62abec8b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agotoolchain-shar-extract.sh: Handle special characters in script path
Andrey Mozzhuhin [Sat, 16 Jan 2021 08:18:41 +0000 (11:18 +0300)]
toolchain-shar-extract.sh: Handle special characters in script path

Extracting SDK archive may fail if the script is run using a path with
special characters such as space or asterisk. This is because the shell
interprets such characters after expanding the $0 variable.

Added quotes to all uses of the shell variable $0 to fix this.

Signed-off-by: Andrey Mozzhuhin <amozzhuhin@yandex.ru>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0453acbbd45604537090ec7a3295b34309e6eecb)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoscripts: oe-run-native, fix *-native directories
Adrian Herrera [Wed, 13 Jan 2021 13:44:59 +0000 (13:44 +0000)]
scripts: oe-run-native, fix *-native directories

This fixes a crash with "find" when running a native tool and *-native
directories do not exist under the binary directory in the sysroot.
This happened because the directory wildcard was passed as part of the
root directory.
The directory wildcard is now passed by "-name", which returns an empty
result if no matching directory.

Signed-off-by: Adrian Herrera <adrian.herrera@arm.com>
Change-Id: Iba7acd8bbd7e0beb4d25c984f6af7a4fd21486e6
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f6c90ed0ad24b7d4f892e22e088b1578824eb1d3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agolinux-yocto/5.4: update to v5.4.87
Bruce Ashfield [Tue, 12 Jan 2021 22:14:09 +0000 (17:14 -0500)]
linux-yocto/5.4: update to v5.4.87

Updating linux-yocto/5.4 to the latest korg -stable release that comprises
the following commits:

    b3f656a592f3 Linux 5.4.87
    41ae3e574ccf dm verity: skip verity work if I/O error when system is shutting down
    8b3c00977264 ALSA: pcm: Clear the full allocated memory at hw_params
    480abac78e03 tick/sched: Remove bogus boot "safety" check
    1dab82dd202d um: ubd: Submit all data segments atomically
    d32747bb687d fs/namespace.c: WARN if mnt_count has become negative
    9f4e8026d202 module: delay kobject uevent until after module init call
    86db71810a27 f2fs: avoid race condition for shrinker count
    dbe184f6be1e NFSv4: Fix a pNFS layout related use-after-free race when freeing the inode
    d52faa7fb12f i3c master: fix missing destroy_workqueue() on error in i3c_master_register
    22f815627c64 powerpc: sysdev: add missing iounmap() on error in mpic_msgr_probe()
    a95049c51417 rtc: pl031: fix resource leak in pl031_probe
    e2926630f653 quota: Don't overflow quota file offsets
    1842dde0dd13 module: set MODULE_STATE_GOING state when a module fails to load
    569da7c3d9a3 rtc: sun6i: Fix memleak in sun6i_rtc_clk_init
    642c2d74c365 fcntl: Fix potential deadlock in send_sig{io, urg}()
    5b2f1ad6b12b bfs: don't use WARNING: string when it's just info.
    3a2a5e197a84 ALSA: rawmidi: Access runtime->avail always in spinlock
    8d2204a05391 ALSA: seq: Use bool for snd_seq_queue internal flags
    4250fe65b2e6 f2fs: fix shift-out-of-bounds in sanity_check_raw_super()
    28a29e3a658a media: gp8psk: initialize stats at power control logic
    750627d36f84 misc: vmw_vmci: fix kernel info-leak by initializing dbells in vmci_ctx_get_chkpt_doorbells()
    01be033cc127 reiserfs: add check for an invalid ih_entry_count
    18e1101b0ee9 Bluetooth: hci_h5: close serdev device and free hu in h5_close
    b726f8602207 scsi: cxgb4i: Fix TLS dependency
    57ba2c7a50bf cgroup: Fix memory leak when parsing multiple source parameters
    8ddf02859c69 of: fix linker-section match-table corruption
    8ec95e308418 null_blk: Fix zone size initialization
    7c3d8d73bafd tools headers UAPI: Sync linux/const.h with the kernel headers
    376c3111413c uapi: move constants from <linux/kernel.h> to <linux/const.h>
    af07e4dd0783 scsi: block: Fix a race in the runtime power management code
    9ce7ac5ed53b jffs2: Fix NULL pointer dereference in rp_size fs option parsing
    3a83e289e4b7 jffs2: Allow setting rp_size to zero during remounting
    ee78e7d93e35 powerpc/bitops: Fix possible undefined behaviour with fls() and fls64()
    7cb6087b4536 KVM: x86: reinstate vendor-agnostic check on SPEC_CTRL cpuid bits
    3d4a05894500 KVM: SVM: relax conditions for allowing MSR_IA32_SPEC_CTRL accesses
    d77c1ab54c9e KVM: x86: avoid incorrect writes to host MSR_IA32_SPEC_CTRL
    11459136a107 ext4: don't remount read-only with errors=continue on reboot
    6b0a4f603d5b btrfs: fix race when defragmenting leads to unnecessary IO
    30aea96ff142 vfio/pci: Move dummy_resources_list init in vfio_pci_probe()
    29c2d3e91e3d fscrypt: remove kernel-internal constants from UAPI header
    34f000524d33 fscrypt: add fscrypt_is_nokey_name()
    eddc69467e39 f2fs: prevent creating duplicate encrypted filenames
    6fe20a5204a6 ubifs: prevent creating duplicate encrypted filenames
    3ebfed353afd ext4: prevent creating duplicate encrypted filenames
    faa72d97c3e3 thermal/drivers/cpufreq_cooling: Update cpufreq_state only if state has changed
    d3076d054f3e md/raid10: initialize r10_bio->read_slot before use.
    c71c512f4a65 net/sched: sch_taprio: reset child qdiscs before freeing them
    dfce803cd87d Linux 5.4.86
    8302bd9afd4b x86/CPU/AMD: Save AMD NodeId as cpu_die_id
    6001db0272da Revert: "ring-buffer: Remove HAVE_64BIT_ALIGNED_ACCESS"
    33afcf723a0e rtc: ep93xx: Fix NULL pointer dereference in ep93xx_rtc_read_time
    7e0f7a293608 regulator: axp20x: Fix DLDO2 voltage control register mask for AXP22x
    be23b04074b1 PCI: Fix pci_slot_release() NULL pointer dereference
    b1f9419d5e6c platform/x86: intel-vbtn: Allow switch events on Acer Switch Alpha 12
    c16b5849352c libnvdimm/namespace: Fix reaping of invalidated block-window-namespace labels
    68d139a97415 xenbus/xenbus_backend: Disallow pending watch messages
    d3eaea062b51 xen/xenbus: Count pending messages for each watch
    c45b0a8d2a68 xen/xenbus/xen_bus_type: Support will_handle watch callback
    7da6db982e53 xen/xenbus: Add 'will_handle' callback support in xenbus_watch_path()
    eac0c12e329d xen/xenbus: Allow watches discard events before queueing
    8f3f6de44f7c xen-blkback: set ring->xenblkd to NULL after kthread_stop()
    383c60c16dd8 dma-buf/dma-resv: Respect num_fences when initializing the shared fence list.
    b16a6a46e0b2 device-dax/core: Fix memory leak when rmmod dax.ko
    f3ede933fbc7 clk: tegra: Do not return 0 on failure
    f133bfbe1201 clk: mvebu: a3700: fix the XTAL MODE pin to MPP1_9
    ca4fd0284cb3 clk: ingenic: Fix divider calculation with div tables
    13e6b6259e6d pinctrl: sunxi: Always call chained_irq_{enter, exit} in sunxi_pinctrl_irq_handler
    2fb550de7563 md/cluster: fix deadlock when node is doing resync job
    7523d147087b md/cluster: block reshape with remote resync job
    27b58f6adad8 iio:adc:ti-ads124s08: Fix alignment and data leak issues.
    2d7229c037d1 iio:adc:ti-ads124s08: Fix buffer being too long.
    d6ea1d559027 iio:imu:bmi160: Fix too large a buffer.
    91b7b231f5e7 iio:pressure:mpl3115: Force alignment of buffer
    9607d22e71d1 iio:magnetometer:mag3110: Fix alignment and data leak issues.
    71a326dcd2a8 iio:light:st_uvis25: Fix timestamp alignment and prevent data leak.
    c18fc255187f iio:light:rpr0521: Fix timestamp alignment and prevent data leak.
    860ab67cd81e iio: adc: rockchip_saradc: fix missing clk_disable_unprepare() on error in rockchip_saradc_resume
    0fa2b43b0a2a iio: buffer: Fix demux update
    82af6e44b7d4 scsi: lpfc: Re-fix use after free in lpfc_rq_buf_free()
    7ec7630548dc scsi: lpfc: Fix invalid sleeping context in lpfc_sli4_nvmet_alloc()
    6822575cf204 scsi: qla2xxx: Fix crash during driver load on big endian machines
    1b26af7e4c7f mtd: rawnand: meson: fix meson_nfc_dma_buffer_release() arguments
    c5f3e5ca8116 mtd: rawnand: qcom: Fix DMA sync on FLASH_STATUS register read
    2aea2b22b6f9 mtd: parser: cmdline: Fix parsing of part-names with colons
    4290a73c9d67 mtd: spinand: Fix OOB read
    b22739509dcb soc: qcom: smp2p: Safely acquire spinlock without IRQs
    ddcb518dee78 spi: atmel-quadspi: Fix AHB memory accesses
    96f7bd39f56f spi: atmel-quadspi: Disable clock in probe error path
    8f295baae53d spi: mt7621: Don't leak SPI master in probe error path
    0818aab8a82b spi: mt7621: Disable clock in probe error path
    cad189512c38 spi: synquacer: Disable clock in probe error path
    4051e5b7741b spi: st-ssc4: Fix unbalanced pm_runtime_disable() in probe error path
    3c0e28f2881e spi: sc18is602: Don't leak SPI master in probe error path
    819f9edaaeb9 spi: rb4xx: Don't leak SPI master in probe error path
    c5491ac11559 spi: pic32: Don't leak DMA channels in probe error path
    3ea835ac604b spi: mxic: Don't leak SPI master in probe error path
    0da7709f5ea3 spi: gpio: Don't leak SPI master in probe error path
    ee1d2aef1c13 spi: fsl: fix use of spisel_boot signal on MPC8309
    614f2529c8ea spi: davinci: Fix use-after-free on unbind
    c6b9bfb0c477 spi: atmel-quadspi: Fix use-after-free on unbind
    bd6d736dbf36 spi: spi-sh: Fix use-after-free on unbind
    17360c3af129 spi: pxa2xx: Fix use-after-free on unbind
    c5ae864c148c drm/i915: Fix mismatch between misplaced vma check and vma insert
    1e684ad37047 drm/dp_aux_dev: check aux_dev before use in drm_dp_aux_dev_get_by_minor()
    e1b1f10c3404 drm/amd/display: Fix memory leaks in S3 resume
    b966771b0d69 platform/x86: mlx-platform: remove an unused variable
    cbeb61258186 jfs: Fix array index bounds check in dbAdjTree
    8ee70b6db882 jffs2: Fix ignoring mounting options problem during remounting
    00e45efaf9ff jffs2: Fix GC exit abnormally
    ea1e4ba032c5 ubifs: wbuf: Don't leak kernel memory to flash
    32825fe72cb3 SMB3: avoid confusing warning message on mount to Azure
    f22f743a2af2 ceph: fix race in concurrent __ceph_remove_cap invocations
    a7b014b54c16 um: Remove use of asprinf in umid.c
    26d72a8460dc ima: Don't modify file descriptor mode on the fly
    a89b91fcb07c powerpc/powernv/memtrace: Fix crashing the kernel when enabling concurrently
    45bf367c8550 powerpc/powernv/memtrace: Don't leak kernel memory to user space
    59334d821e8a powerpc/powernv/npu: Do not attempt NPU2 setup on POWER8NVL NPU
    c7f66ad880a9 powerpc/mm: Fix verification of MMU_FTR_TYPE_44x
    32e29541b5aa powerpc/8xx: Fix early debug when SMC1 is relocated
    15c9e56b41d0 powerpc/xmon: Change printk() to pr_cont()
    c7b89d0d7186 powerpc/feature: Add CPU_FTR_NOEXECUTE to G2_LE
    0f157acd436c powerpc/rtas: Fix typo of ibm,open-errinjct in RTAS filter
    30a58a3f7c85 powerpc: Fix incorrect stw{, ux, u, x} instructions in __set_pte_at
    3ee6a2bc1428 xprtrdma: Fix XDRBUF_SPARSE_PAGES support
    2504e407a39f ARM: dts: at91: sama5d2: fix CAN message ram offset and size
    789246b9afe8 ARM: dts: pandaboard: fix pinmux for gpio user button of Pandaboard ES
    6ee6e4e5a4cf KVM: arm64: Introduce handling of AArch32 TTBCR2 traps
    8635f0fe06c5 ext4: fix deadlock with fs freezing and EA inodes
    c90a5f4851a8 ext4: fix a memory leak of ext4_free_data
    e21d630a2c0d btrfs: trim: fix underflow in trim length to prevent access beyond device boundary
    1d11ed122f6f btrfs: do not shorten unpin len for caching block groups
    af7414836d88 USB: serial: keyspan_pda: fix write unthrottling
    7dae22ba62b2 USB: serial: keyspan_pda: fix tx-unthrottle use-after-free
    f99817ab5821 USB: serial: keyspan_pda: fix write-wakeup use-after-free
    a07b690e1976 USB: serial: keyspan_pda: fix stalled writes
    0f13247fabaf USB: serial: keyspan_pda: fix write deadlock
    ebd9857a5bd4 USB: serial: keyspan_pda: fix dropped unthrottle interrupts
    89fb2b91a9da USB: serial: digi_acceleport: fix write-wakeup deadlocks
    08c24438fb10 USB: serial: mos7720: fix parallel-port state restore
    6eab3f646b1a cpuset: fix race between hotplug work and later CPU offline
    066d115fdd29 EDAC/amd64: Fix PCI component registration
    f4ce4a53c4e4 EDAC/i10nm: Use readl() to access MMIO registers
    f9189a3bb5f9 crypto: arm/aes-ce - work around Cortex-A57/A72 silion errata
    36a58bda87cd crypto: ecdh - avoid unaligned accesses in ecdh_set_secret()
    f26f0e7770a1 powerpc/perf: Exclude kernel samples while counting events in user space.
    8096a2c6b9f6 perf/x86/intel: Fix rtm_abort_event encoding on Ice Lake
    aa3cce9ceff0 perf/x86/intel: Add event constraint for CYCLE_ACTIVITY.STALLS_MEM_ANY
    1e3de428d155 staging: comedi: mf6x4: Fix AI end-of-conversion detection
    ee0bcb1721a5 ASoC: cx2072x: Fix doubly definitions of Playback and Capture streams
    5fbf84689f11 binder: add flag to clear buffer on txn complete
    a7c256a9fd18 s390/dasd: fix list corruption of lcu list
    9c40d69a3be2 s390/dasd: fix list corruption of pavgroup group list
    042683917f4b s390/dasd: prevent inconsistent LCU device data
    c8acd8d55bb9 s390/dasd: fix hanging device offline processing
    3038bbd1bb33 s390/kexec_file: fix diag308 subcode when loading crash kernel
    c185f13918b4 s390/smp: perform initial CPU reset also for SMT siblings
    48d3f12869ef ALSA: core: memalloc: add page alignment for iram
    cd3ff2a46d9c ALSA: usb-audio: Disable sample read check if firmware doesn't give back
    b1e3c2fb0fbe ALSA: usb-audio: Add VID to support native DSD reproduction on FiiO devices
    58cb166b1f8a ALSA: hda/realtek: Apply jack fixup for Quanta NL3
    b61b2aa91f2b ALSA: hda/realtek: Add quirk for MSI-GP73
    89d429ed2cdf ALSA/hda: apply jack fixup for the Acer Veriton N4640G/N6640G/N2510G
    0bf907442c5f ALSA: pcm: oss: Fix a few more UBSAN fixes
    11cd11af4058 ALSA: hda/realtek - Add supported for more Lenovo ALC285 Headset Button
    da723248c5f8 ALSA: hda/realtek - Enable headset mic of ASUS Q524UQK with ALC255
    010a784a1a27 ALSA: hda/realtek - Enable headset mic of ASUS X430UN with ALC256
    0fc8e6b85680 ALSA: hda/realtek: make bass spk volume adjustable on a yoga laptop
    52d09e0cdb78 ALSA: hda/ca0132 - Fix AE-5 rear headphone pincfg.
    1ca2437530e5 ALSA: hda: Fix regressions on clear and reconfig sysfs
    2c6c6001d077 ACPI: PNP: compare the string length in the matching_id()
    772dd826a44b Revert "ACPI / resources: Use AE_CTRL_TERMINATE to terminate resources walks"
    b9d93a666656 PM: ACPI: PCI: Drop acpi_pm_set_bridge_wakeup()
    670b1b7e0d53 ALSA: hda/ca0132 - Change Input Source enum strings.
    8f827adb9bbc Input: cyapa_gen6 - fix out-of-bounds stack access
    98c956a6d9f7 media: ipu3-cio2: Make the field on subdev format V4L2_FIELD_NONE
    f05ac76139e6 media: ipu3-cio2: Validate mbus format in setting subdev format
    44cb512a020e media: ipu3-cio2: Serialise access to pad format
    a47bc844f436 media: ipu3-cio2: Return actual subdev format
    7dc40e1f8044 media: ipu3-cio2: Remove traces of returned buffers
    d7e6b7b6a7f7 media: netup_unidvb: Don't leak SPI master in probe error path
    0bfbb8393e51 media: sunxi-cir: ensure IR is handled when it is continuous
    124dc7d4f4b6 media: gspca: Fix memory leak in probe
    f97b54c8152d vfio/pci/nvlink2: Do not attempt NPU2 setup on POWER8NVL NPU
    df308380cbf3 Input: goodix - add upside-down quirk for Teclast X98 Pro tablet
    070bd3a8ac55 initramfs: fix clang build failure
    f252a9953249 Input: cros_ec_keyb - send 'scancodes' in addition to key events
    2686041cef06 drm/amdkfd: Fix leak in dmabuf import
    dc06432d9304 drm/amd/display: Prevent bandwidth overflow
    ca49d919d79c lwt: Disable BH too in run_lwt_bpf()
    b8dfee234581 fix namespaced fscaps when !CONFIG_SECURITY
    5350b833bb0a cfg80211: initialize rekey_data
    ec15d0700709 ARM: sunxi: Add machine match for the Allwinner V3 SoC
    d629b50f9fdc perf probe: Fix memory leak when synthesizing SDT probes
    cbcb176b6016 kconfig: fix return value of do_error_if()
    6e8beb020d5c clk: sunxi-ng: Make sure divider tables have sentinel
    3cdeedf801b5 clk: s2mps11: Fix a resource leak in error handling paths in the probe function
    ef56621a579a clk: at91: sam9x60: remove atmel,osc-bypass support
    e01dfcc08b55 virtio_ring: Fix two use after free bugs
    2d65ff873d06 virtio_net: Fix error code in probe()
    5f70910832c7 virtio_ring: Cut and paste bugs in vring_create_virtqueue_packed()
    372f06cd6b89 qlcnic: Fix error code in probe
    c16e42c93241 perf record: Fix memory leak when using '--user-regs=?' to list registers
    ceadde18f69a pwm: lp3943: Dynamically allocate PWM chip base
    6bf2ef4bd38d pwm: zx: Add missing cleanup in error path
    d4515a24a802 clk: ti: Fix memleak in ti_fapll_synth_setup
    572eba1ce574 watchdog: coh901327: add COMMON_CLK dependency
    2b1575e28906 watchdog: qcom: Avoid context switch in restart handler
    fad88d462596 libnvdimm/label: Return -ENXIO for no slot in __blk_label_update
    b6c680755d22 net: korina: fix return value
    19e73c9ff0bf net: allwinner: Fix some resources leak in the error handling path of the probe and in the remove function
    226bcdbb4a60 net: bcmgenet: Fix a resource leak in an error handling path in the probe functin
    efc570073cbe lan743x: fix rx_napi_poll/interrupt ping-pong
    9f5b56b5a71d checkpatch: fix unescaped left brace
    b32c5e0ae6f7 mm: don't wake kswapd prematurely when watermark boosting is disabled
    c3bf90c6aac5 sparc: fix handling of page table constructor failure
    6ef298e1cebd powerpc/ps3: use dma_mapping_error()
    d864e7e8270a nfc: s3fwrn5: Release the nfc firmware
    7a3d6a5dfc78 RDMA/cma: Don't overwrite sgid_attr after device is released
    2d01f3d75013 sunrpc: fix xs_read_xdr_buf for partial pages receive
    4acbc03e4fed um: chan_xterm: Fix fd leak
    1bbd5678c0b4 um: tty: Fix handling of close in tty lines
    1355bbe3a717 um: Monitor error events in IRQ controller
    a37d283825a4 ubifs: Fix error return code in ubifs_init_authentication()
    d4dbcfb7e158 watchdog: Fix potential dereferencing of null pointer
    4e091ff107be watchdog: sprd: check busy bit before new loading rather than after that
    4c8cffffc926 watchdog: sprd: remove watchdog disable from resume fail path
    4a4b31e8b5a7 watchdog: sirfsoc: Add missing dependency on HAS_IOMEM
    4d5aea30c1cd watchdog: armada_37xx: Add missing dependency on HAS_IOMEM
    849270acd7b6 irqchip/alpine-msi: Fix freeing of interrupts on allocation error path
    aca4d1bd7e19 ASoC: wm_adsp: remove "ctl" from list on error in wm_adsp_create_control()
    297e48ccf166 mac80211: don't set set TDLS STA bandwidth wider than possible
    d07972d764e8 crypto: atmel-i2c - select CONFIG_BITREVERSE
    f71984fc4482 extcon: max77693: Fix modalias string
    a4fd2da3e85e mtd: rawnand: gpmi: Fix the random DMA timeout issue
    86f6e53642fa mtd: rawnand: meson: Fix a resource leak in init
    5e8715b2383a mtd: rawnand: gpmi: fix reference count leak in gpmi ops
    9c5b041ba20a clk: tegra: Fix duplicated SE clock entry
    1ba196a73c45 remoteproc: qcom: Fix potential NULL dereference in adsp_init_mmio()
    6f597c451e07 remoteproc: qcom: fix reference leak in adsp_start
    f61bce4bc833 remoteproc: q6v5-mss: fix error handling in q6v5_pds_enable
    9b54e31fd08f RDMA/core: Do not indicate device ready when device enablement fails
    e6323070bdc7 can: m_can: m_can_config_endisable(): remove double clearing of clock stop request bit
    6daf2d466380 erofs: avoid using generic_block_bmap
    35e2bec96488 iwlwifi: mvm: hook up missing RX handlers
    857b1403c3e5 s390/cio: fix use-after-free in ccw_device_destroy_console
    be4d879cb7c4 bus: fsl-mc: fix error return code in fsl_mc_object_allocate()
    9b4f327c0746 platform/chrome: cros_ec_spi: Don't overwrite spi::mode
    070c57885ec3 x86/kprobes: Restore BTF if the single-stepping is cancelled
    353b19562a03 nfs_common: need lock during iterate through the list
    48ed3e57ad58 nfsd: Fix message level for normal termination
    b4ac244716f3 speakup: fix uninitialized flush_lock
    989d52723643 usb: oxu210hp-hcd: Fix memory leak in oxu_create
    2addd726083f usb: ehci-omap: Fix PM disable depth umbalance in ehci_hcd_omap_probe
    3f72486cecec powerpc/mm: sanity_check_fault() should work for all, not only BOOK3S
    a696ed262e83 ASoC: amd: change clk_get() to devm_clk_get() and add missed checks
    972db497be45 drm/mediatek: avoid dereferencing a null hdmi_phy on an error message
    ef55a3c384cc powerpc/pseries/hibernation: remove redundant cacheinfo update
    c4115721d1f0 powerpc/pseries/hibernation: drop pseries_suspend_begin() from suspend ops
    570697132c2c platform/x86: mlx-platform: Fix item counter assignment for MSN2700, MSN24xx systems
    a247efe47743 scsi: fnic: Fix error return code in fnic_probe()
    0e724f2e80ba seq_buf: Avoid type mismatch for seq_buf_init
    0b93626d3965 scsi: pm80xx: Fix error return in pm8001_pci_probe()
    79e14f1c323c scsi: qedi: Fix missing destroy_workqueue() on error in __qedi_probe
    172bb906202f arm64: dts: meson: g12a: x96-max: fix PHY deassert timing requirements
    13f4c61d2f5c ARM: dts: meson: fix PHY deassert timing requirements
    154105c0ba56 arm64: dts: meson: fix PHY deassert timing requirements
    62b240d2644e Bluetooth: btmtksdio: Add the missed release_firmware() in mtk_setup_firmware()
    097c4d9921b2 Bluetooth: btusb: Add the missed release_firmware() in btusb_mtk_setup_firmware()
    3d3caa8e971d cpufreq: scpi: Add missing MODULE_ALIAS
    6e34c9478fe5 cpufreq: loongson1: Add missing MODULE_ALIAS
    3e3feeb0d2ba cpufreq: sun50i: Add missing MODULE_DEVICE_TABLE
    ef802b5a5e26 cpufreq: st: Add missing MODULE_DEVICE_TABLE
    742697643c94 cpufreq: qcom: Add missing MODULE_DEVICE_TABLE
    c9d204c02825 cpufreq: mediatek: Add missing MODULE_DEVICE_TABLE
    f3754eec127d cpufreq: highbank: Add missing MODULE_DEVICE_TABLE
    e32836221017 cpufreq: ap806: Add missing MODULE_DEVICE_TABLE
    3b6ba2fe6524 clocksource/drivers/arm_arch_timer: Correct fault programming of CNTKCTL_EL1.EVNTI
    b4219894d154 clocksource/drivers/arm_arch_timer: Use stable count reader in erratum sne
    e223cf39b928 phy: renesas: rcar-gen3-usb2: disable runtime pm in case of failure
    675b3ba9cc96 dm ioctl: fix error return code in target_message
    d863d76536df ASoC: jz4740-i2s: add missed checks for clk_get()
    1b760dc9d967 net/mlx5: Properly convey driver version to firmware
    a64822872957 MIPS: Don't round up kernel sections size for memblock_add()
    33eeb395515d memstick: r592: Fix error return in r592_probe()
    e39b37d6a2ce arm64: dts: rockchip: Fix UART pull-ups on rk3328
    33892a3797f1 pinctrl: falcon: add missing put_device() call in pinctrl_falcon_probe()
    08e22710601a bpf: Fix bpf_put_raw_tracepoint()'s use of __module_address()
    e02d218aa63d ARM: dts: at91: sama5d2: map securam as device
    da8890329599 iio: hrtimer-trigger: Mark hrtimer to expire in hard interrupt context
    d903b80e1abc clocksource/drivers/cadence_ttc: Fix memory leak in ttc_setup_clockevent()
    742d5de6c2fc clocksource/drivers/orion: Add missing clk_disable_unprepare() on error path
    40f9ac2b0295 powerpc/64: Fix an EMIT_BUG_ENTRY in head_64.S
    4968cc5ed0c0 powerpc/perf: Fix crash with is_sier_available when pmu is not set
    b0483a32d163 media: saa7146: fix array overflow in vidioc_s_audio()
    bfdf000e5dd9 hwmon: (ina3221) Fix PM usage counter unbalance in ina3221_write_enable
    a0f07c9ad72d vfio-pci: Use io_remap_pfn_range() for PCI IO memory
    5ac81a4e5fa3 selftests/seccomp: Update kernel config
    0588b8a03469 NFS: switch nfsiod to be an UNBOUND workqueue.
    1094bd2edaa2 lockd: don't use interval-based rebinding over TCP
    cbb0a57326b8 net: sunrpc: Fix 'snprintf' return value check in 'do_xprt_debugfs'
    a0842124422e NFSv4: Fix the alignment of page data in the getdeviceinfo reply
    73892eef6d9e SUNRPC: xprt_load_transport() needs to support the netid "rdma6"
    2823b8979375 NFSv4.2: condition READDIR's mask for security label based on LSM state
    04e9c169810c SUNRPC: rpc_wake_up() should wake up tasks in the correct order
    a3ac7dd8b16b ath10k: Release some resources in an error handling path
    6b6edd2c072b ath10k: Fix an error handling path
    e856abba7fca ath10k: Fix the parsing error in service available event
    f4935d3c7b57 platform/x86: dell-smbios-base: Fix error return code in dell_smbios_init
    3d64e8ce592b ARM: dts: at91: at91sam9rl: fix ADC triggers
    09347a537cc7 soc: amlogic: canvas: add missing put_device() call in meson_canvas_get()
    8424a5b661ca arm64: dts: meson-sm1: fix typo in opp table
    f4951cb10668 arm64: dts: meson: fix spi-max-frequency on Khadas VIM2
    49b563bfdd66 PCI: iproc: Fix out-of-bound array accesses
    4ef5a46d2964 PCI: Fix overflow in command-line resource alignment requests
    048b98083c27 PCI: Bounds-check command-line resource alignment requests
    72577f162cae arm64: dts: qcom: c630: Polish i2c-hid devices
    a554b68baf27 arm64: dts: ls1028a: fix ENETC PTP clock input
    a85f3e7cb717 genirq/irqdomain: Don't try to free an interrupt that has no mapping
    2f00dcc6ce7a power: supply: bq24190_charger: fix reference leak
    e230e193c966 power: supply: axp288_charger: Fix HP Pavilion x2 10 DMI matching
    8e9678d9d131 arm64: dts: rockchip: Set dr_mode to "host" for OTG on rk3328-roc-cc
    11f007a5583d arm64: dts: armada-3720-turris-mox: update ethernet-phy handle name
    5a551ef11669 ARM: dts: Remove non-existent i2c1 from 98dx3236
    15305a5b103d HSI: omap_ssi: Don't jump to free ID in ssi_add_controller()
    ec30659ea631 slimbus: qcom-ngd-ctrl: Avoid sending power requests without QMI
    76170933d3da media: max2175: fix max2175_set_csm_mode() error code
    5873beee8744 mips: cdmm: fix use-after-free in mips_cdmm_bus_discover
    51795c385f73 media: imx214: Fix stop streaming
    ceff135b9d93 samples: bpf: Fix lwt_len_hist reusing previous BPF map
    4dc1360203c4 platform/x86: mlx-platform: Remove PSU EEPROM from MSN274x platform configuration
    3432883ae896 platform/x86: mlx-platform: Remove PSU EEPROM from default platform configuration
    c14a740743f7 media: siano: fix memory leak of debugfs members in smsdvb_hotplug
    6b93d6c5a888 arm64: tegra: Fix DT binding for IO High Voltage entry
    b0f1878c2d88 dmaengine: mv_xor_v2: Fix error return code in mv_xor_v2_probe()
    46f8c7961168 cw1200: fix missing destroy_workqueue() on error in cw1200_init_common
    f2e7f608b274 rsi: fix error return code in rsi_reset_card()
    f7a6e378fc17 qtnfmac: fix error return code in qtnf_pcie_probe()
    d2b95947720d orinoco: Move context allocation after processing the skb
    e39908568b40 mmc: pxamci: Fix error return code in pxamci_probe
    65f0d3c81c9f ARM: dts: at91: sama5d3_xplained: add pincontrol for USB Host
    c2aab53d1be5 ARM: dts: at91: sama5d4_xplained: add pincontrol for USB Host
    8ce91557023e memstick: fix a double-free bug in memstick_check
    4279ff6deaf3 RDMA/cxgb4: Validate the number of CQEs
    d3ff603c2e38 clk: meson: Kconfig: fix dependency for G12A
    2fbd2b0dd7d1 Input: omap4-keypad - fix runtime PM error handling
    ff3a152243f8 drivers: soc: ti: knav_qmss_queue: Fix error return code in knav_queue_probe
    e16e8cde2bb1 soc: ti: Fix reference imbalance in knav_dma_probe
    475b489b0713 soc: ti: knav_qmss: fix reference leak in knav_queue_probe
    82b9934e1e7a spi: fix resource leak for drivers without .remove callback
    70e19fccf680 crypto: omap-aes - Fix PM disable depth imbalance in omap_aes_probe
    c549355105d9 crypto: crypto4xx - Replace bitwise OR with logical OR in crypto4xx_build_pd
    3e08a61b2f94 EDAC/mce_amd: Use struct cpuinfo_x86.cpu_die_id for AMD NodeId
    0789349204a6 powerpc/feature: Fix CPU_FTRS_ALWAYS by removing CPU_FTRS_GENERIC_32
    90b39366d834 powerpc: Avoid broken GCC __attribute__((optimize))
    8f6e6ec101dd selftests/bpf: Fix broken riscv build
    6f8c6e70738a spi: mxs: fix reference leak in mxs_spi_probe
    5df04553ee8c usb/max3421: fix return error code in max3421_probe()
    e6405aad3592 Input: ads7846 - fix unaligned access on 7845
    920c379029f9 Input: ads7846 - fix integer overflow on Rt calculation
    c7ac50927300 Input: ads7846 - fix race that causes missing releases
    86398df4b283 drm/omap: dmm_tiler: fix return error code in omap_dmm_probe()
    e8cd88c3ab00 video: fbdev: atmel_lcdfb: fix return error code in atmel_lcdfb_of_init()
    953379fb7ba3 media: solo6x10: fix missing snd_card_free in error handling case
    c64d2e159829 scsi: core: Fix VPD LUN ID designator priorities
    efb57c87d8d8 ASoC: meson: fix COMPILE_TEST error
    2c06ac46f81c media: v4l2-fwnode: Return -EINVAL for invalid bus-type
    d8d35c1ea883 media: mtk-vcodec: add missing put_device() call in mtk_vcodec_init_enc_pm()
    c8adf58057b6 media: mtk-vcodec: add missing put_device() call in mtk_vcodec_release_dec_pm()
    c5c403db137f media: mtk-vcodec: add missing put_device() call in mtk_vcodec_init_dec_pm()
    06a3c11c173b media: tm6000: Fix sizeof() mismatches
    1638c7e3985b staging: gasket: interrupt: fix the missed eventfd_ctx_put() in gasket_interrupt.c
    aa1d8b959455 staging: greybus: codecs: Fix reference counter leak in error handling
    5daf659fdf47 crypto: qat - fix status check in qat_hal_put_rel_rd_xfer()
    38017f2c06cf MIPS: BCM47XX: fix kconfig dependency bug for BCM47XX_BCMA
    9e779e6fae58 RDMa/mthca: Work around -Wenum-conversion warning
    648b9dd270ff ASoC: arizona: Fix a wrong free in wm8997_probe
    7e8200d44200 spi: sprd: fix reference leak in sprd_spi_remove
    c786bc725d8c ASoC: wm8998: Fix PM disable depth imbalance on error
    06fa588c7921 selftest/bpf: Add missed ip6ip6 test back
    dab5973ada6b mwifiex: fix mwifiex_shutdown_sw() causing sw reset failure
    404aadf45c71 spi: bcm63xx-hsspi: fix missing clk_disable_unprepare() on error in bcm63xx_hsspi_resume
    769c2fecefd1 spi: tegra114: fix reference leak in tegra spi ops
    47595d68cee2 spi: tegra20-sflash: fix reference leak in tegra_sflash_resume
    f9e5e84eb49f spi: tegra20-slink: fix reference leak in slink ops of tegra20
    0a3196271b40 spi: mt7621: fix missing clk_disable_unprepare() on error in mt7621_spi_probe
    a2cf358aacf5 spi: spi-ti-qspi: fix reference leak in ti_qspi_setup
    25b5a48adabf Bluetooth: hci_h5: fix memory leak in h5_close
    5cf3c2e7892e Bluetooth: Fix null pointer dereference in hci_event_packet()
    d92b81fad01c arm64: dts: exynos: Correct psci compatible used on Exynos7
    da8d84637522 arm64: dts: exynos: Include common syscon restart/poweroff for Exynos7
    8f14da44523c brcmfmac: Fix memory leak for unpaired brcmf_{alloc/free}
    5c5b92c1d6ab spi: stm32: fix reference leak in stm32_spi_resume
    c807042f2d58 selinux: fix inode_doinit_with_dentry() LABEL_INVALID error handling
    ae54a6d99478 ASoC: pcm: DRAIN support reactivation
    009a982ea25b spi: spi-mem: fix reference leak in spi_mem_access_start
    68ad1bd244bd drm/msm/dsi_pll_10nm: restore VCO rate during restore_state
    0a8f14baed8e f2fs: call f2fs_get_meta_page_retry for nat page
    311da238f2f7 spi: img-spfi: fix reference leak in img_spfi_resume
    4e20cee19c2e powerpc/64: Set up a kernel stack for secondaries before cpu_restore()
    3988d96589d9 drm/amdgpu: fix build_coefficients() argument
    a4110e76e550 ARM: dts: aspeed: tiogapass: Remove vuart
    129df833e15c ASoC: sun4i-i2s: Fix lrck_period computation for I2S justified mode
    9edff753ade7 crypto: inside-secure - Fix sizeof() mismatch
    7044a69699f3 crypto: talitos - Fix return type of current_desc_hdr()
    8a73ee0a0a1e crypto: talitos - Endianess in current_desc_hdr()
    b9b8429042bd drm/amdgpu: fix incorrect enum type
    52f525f2bdc7 sched: Reenable interrupts in do_sched_yield()
    35975f2e83a5 sched/deadline: Fix sched_dl_global_validate()
    a3ec54b95c1a x86/apic: Fix x2apic enablement without interrupt remapping
    b7ec74246c32 ARM: p2v: fix handling of LPAE translation in BE mode
    0a72e7286c67 x86/mm/ident_map: Check for errors from ident_pud_init()
    0fd78ab5ef71 RDMA/rxe: Compute PSN windows correctly
    35f18561616f ARM: dts: aspeed: s2600wf: Fix VGA memory region location
    4aae08a71e68 selinux: fix error initialization in inode_doinit_with_dentry()
    de49a51e7938 rtc: pcf2127: fix pcf2127_nvmem_read/write() returns
    57df1b39d990 RDMA/bnxt_re: Set queue pair state when being queried
    e11c7d39fa7e Revert "i2c: i2c-qcom-geni: Fix DMA transfer race"
    4b3ee79fbe77 soc: qcom: geni: More properly switch to DMA mode
    d3bed198333a soc: mediatek: Check if power domains can be powered on at boot time
    fcb0be5ba2e9 soc: renesas: rmobile-sysc: Fix some leaks in rmobile_init_pm_domains()
    38cded30497a arm64: dts: renesas: cat875: Remove rxc-skew-ps from ethernet-phy node
    14be28959f69 arm64: dts: renesas: hihope-rzg2-ex: Drop rxc-skew-ps from ethernet-phy node
    c2712546a6e0 drm/tve200: Fix handling of platform_get_irq() error
    f61e9dbb56ba drm/mcde: Fix handling of platform_get_irq() error
    29f34feb3860 drm/aspeed: Fix Kconfig warning & subsequent build errors
    37028b8bc53d drm/gma500: fix double free of gma_connector
    de630248e740 md: fix a warning caused by a race between concurrent md_ioctl()s
    054be9aed847 crypto: af_alg - avoid undefined behavior accessing salg_name
    5a225303a68f media: msi2500: assign SPI bus number dynamically
    01182045346a quota: Sanity-check quota file headers on load
    df95ea1228cc Bluetooth: Fix slab-out-of-bounds read in hci_le_direct_adv_report_evt()
    cda2f222e7e4 serial_core: Check for port state when tty is in error state
    863cab3017bc HID: i2c-hid: add Vero K147 to descriptor override
    fd819f54065c scsi: megaraid_sas: Check user-provided offsets
    152631f0273f coresight: etb10: Fix possible NULL ptr dereference in etb_enable_perf()
    4c461e8d0e88 coresight: tmc-etr: Fix barrier packet insertion for perf buffer
    e81884d45a70 coresight: tmc-etr: Check if page is valid before dma_map_page()
    ec13738c6ec6 coresight: tmc-etf: Fix NULL ptr dereference in tmc_enable_etf_sink_perf()
    d923c0ec1292 ARM: dts: exynos: fix USB 3.0 pins supply being turned off on Odroid XU
    43598dbdcbf0 ARM: dts: exynos: fix USB 3.0 VBUS control and over-current pins on Exynos5410
    2c6f6cd2cdfb ARM: dts: exynos: fix roles of USB 3.0 ports on Odroid XU
    4202cbbd2c4d usb: chipidea: ci_hdrc_imx: Pass DISABLE_DEVICE_STREAMING flag to imx6ul
    8e19cfae3bb0 USB: gadget: f_rndis: fix bitrate for SuperSpeed and above
    8c124b35a53b usb: gadget: f_fs: Re-use SS descriptors for SuperSpeedPlus
    3389281e0e6e USB: gadget: f_midi: setup SuperSpeed Plus descriptors
    0ddb1d96a5db USB: gadget: f_acm: add support for SuperSpeed Plus
    9ad41aa399db USB: serial: option: add interface-number sanity check to flag handling
    57e22590c41b usb: mtu3: fix memory corruption in mtu3_debugfs_regset()
    80cb94507054 soc/tegra: fuse: Fix index bug in get_process_id
    037c65990d76 kbuild: avoid split lines in .mod files
    a803ea15b0dc perf/x86/intel: Check PEBS status correctly
    12db619c91d7 drm/amd/display: Init clock value by current vbios CLKs
    c137a880ae6c iwlwifi: pcie: add one missing entry for AX210
    e124c5afaf88 dm table: Remove BUG_ON(in_interrupt())
    8a89abb26e30 scsi: mpt3sas: Increase IOCInit request timeout to 30s
    cd14a53938e0 vxlan: Copy needed_tailroom from lowerdev
    0b9ce087f75b vxlan: Add needed_headroom for lower device
    230290dca255 arm64: syscall: exit userspace before unmasking exceptions
    34c07547dbe5 habanalabs: put devices before driver removal
    be063ce1004c drm/tegra: sor: Disable clocks on error in tegra_sor_init()
    9b6ebb202bbb kernel/cpu: add arch override for clear_tasks_mm_cpumask() mm handling
    d8baf15b2196 drm/tegra: replace idr_init() by idr_init_base()
    76812738841c net: mvpp2: add mvpp2_phylink_to_port() helper
    6aa270eb2f90 selftests: fix poll error in udpgro.sh
    0e2b048ffe44 ixgbe: avoid premature Rx buffer reuse
    75bbe7bd9003 i40e: avoid premature Rx buffer reuse
    b05fdd74ffb7 i40e: optimise prefetch page refcount
    405bfd36f072 i40e: Refactor rx_bi accesses
    6935f5385f75 RDMA/cm: Fix an attempt to use non-valid pointer when cleaning timewait
    2107658d6d62 selftests/bpf/test_offload.py: Reset ethtool features after failed setting
    3b79aea56dff netfilter: nft_ct: Remove confirmation check for NFT_CT_ID
    0a652b181d75 gpio: eic-sprd: break loop when getting NULL device resource
    2ebb2df149d4 Revert "gpio: eic-sprd: Use devm_platform_ioremap_resource()"
    64795af3bdc7 afs: Fix memory leak when mounting with multiple source parameters
    6581512f0afc netfilter: nft_dynset: fix timeouts later than 23 days
    810bc556e347 netfilter: nft_compat: make sure xtables destructors have run
    b17244cebb24 netfilter: x_tables: Switch synchronization to RCU
    22faec182eec pinctrl: aspeed: Fix GPIO requests on pass-through banks
    f7e6636831df blk-mq: In blk_mq_dispatch_rq_list() "no budget" is a reason to kick
    4f3e3fa6239d block: factor out requeue handling from dispatch code
    9e54ca3d4f9d block: Simplify REQ_OP_ZONE_RESET_ALL handling
    71e0f9c5c3df clk: renesas: r9a06g032: Drop __packed for portability
    43a373488e92 can: softing: softing_netdev_open(): fix error handling
    36f460d51ac5 xsk: Replace datagram_poll by sock_poll_wait
    50ae52e07d2b xsk: Fix xsk_poll()'s return type
    369ed255958f scsi: bnx2i: Requires MMU
    e190d1b3c4d2 gpio: mvebu: fix potential user-after-free on probe
    ec64dea576d5 gpio: zynq: fix reference leak in zynq_gpio functions
    823f42bd6193 PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter
    74e38f86ab53 ARM: dts: imx6qdl-kontron-samx6i: fix I2C_PM scl pin
    f7fbde0f0b14 ARM: dts: imx6qdl-wandboard-revd1: Remove PAD_GPIO_6 from enetgrp
    4b008707bac4 ARM: dts: sun7i: pcduino3-nano: enable RGMII RX/TX delay on PHY
    76c475d5d788 ARM: dts: sun8i: v3s: fix GIC node memory range
    9ebc986a2ea5 pinctrl: baytrail: Avoid clearing debounce value when turning it off
    e2556e022897 pinctrl: merrifield: Set default bias in case no particular value given
    2ec85a7a5adf ARM: dts: sun8i: v40: bananapi-m2-berry: Fix ethernet node
    9f69f6f85288 ARM: dts: sun8i: r40: bananapi-m2-berry: Fix dcdc1 regulator
    389033996cec ARM: dts: sun7i: bananapi: Enable RGMII RX/TX delay on Ethernet PHY

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b29d1016f2761aefa15e38a86263fb03c46ec1d7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agolicense_image.bbclass: fix missing recipeinfo on self
Michael Ho [Tue, 12 Jan 2021 08:55:33 +0000 (09:55 +0100)]
license_image.bbclass: fix missing recipeinfo on self

Resolve a build bug where image recipes with a do_deploy task will fail.

If the image recipe inheriting license_image.bbclass has a deploy task, then
the function get_deployed_dependencies will add itself to the list of recipes
to get license information for.

However, image recipes don't generally deploy license info so this results in
an error.

File: '/nvme/poky/meta/classes/license_image.bbclass', lineno: 192, function: license_deployed_manifest
...
Exception: FileNotFoundError: [Errno 2] No such file or directory: '/nvme/poky/build/tmp/deploy/licenses/core-image-minimal/recipeinfo'

Add a corner case to exclude the originating image recipe from the list of
dependencies to check.

Signed-off-by: Michael Ho <Michael.Ho@bmw.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 13fb39e49e55a0bc7c78b0bfdc372163b3f9e70a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agosystemd.bbclass: improve error message when a service unit specified in SYSTEMD_SERVI...
Chris Laplante [Mon, 11 Jan 2021 17:52:49 +0000 (12:52 -0500)]
systemd.bbclass: improve error message when a service unit specified in SYSTEMD_SERVICE is not found

The previous message was fairly useless without diving into the bbclass.

Signed-off-by: Chris Laplante <mostthingsweb@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ef6117b148be65536e89409a83cbfd22049c652e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agometa: toolchain-shar-relocate.sh: Filter out post-relocate-setup script
Marek Vasut [Wed, 23 Dec 2020 16:50:03 +0000 (17:50 +0100)]
meta: toolchain-shar-relocate.sh: Filter out post-relocate-setup script

The toolchain-shar-extract.sh script updates the SDK relocation paths in
post-relocate-setup.sh, so avoid doing this twice. This is generally not
a problem, unless the SDK path is a subset of the SDK relocation path, in
which case the resulting path is substituted twice. To trigger the issue,
  $ ./tmp/deploy/sdk/poky-glibc-x86_64-core-image-base-core2-64-qemux86-64-toolchain-3.2+snapshot.sh -y -d /home/oe/.local/opt/poky/3.2+snapshot
which generates relocation path
  /home/oe/.local/home/oe/.local/opt/poky/3.2+snapshot
instead of
  /home/oe/.local/opt/poky/3.2+snapshot

Fixes: 93ec145f42 ("toolchain-shar-extract: Add post-relocate scripts")
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Joshua Watt <JPEWhacker@gmail.com>
Cc: Krzysztof Zawadzki <krzysztof.zawadzki@nokia.com>
Cc: Randy Witt <randy.e.witt@linux.intel.com>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5000aabe6ac336e7b424dafa1bf76271dee6a6f1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agometa: toolchain-shar-relocate.sh: Do not use $target_sdk_dir as regex
Marek Vasut [Wed, 23 Dec 2020 16:50:02 +0000 (17:50 +0100)]
meta: toolchain-shar-relocate.sh: Do not use $target_sdk_dir as regex

The $target_sdk_dir path might contain special characters, for example if
the path is /opt/poky/3.2+snapshot . Prevent grep from interpreting those
as part of the regex by using the -F parameter and multiple -e parameters
to specify which strings to filter out. Also note that the previous regex
was using asterisk as wildcard (e.g. environment-setup-*), but that should
have been regex (e.g. environment-setup-.*, with dot) to match correctly,
this is also fixed by this change.

Fixes: 9721378688 ("toolchain-shar-template.sh: Make relocation optional.")
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Joshua Watt <JPEWhacker@gmail.com>
Cc: Krzysztof Zawadzki <krzysztof.zawadzki@nokia.com>
Cc: Randy Witt <randy.e.witt@linux.intel.com>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 19d9fa7ab6c851000bc5d24281739e1b2bb8f057)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agogo.bbclass: don't stage test data with sources of dependencies
Thomas Perrot [Fri, 8 Jan 2021 06:22:48 +0000 (07:22 +0100)]
go.bbclass: don't stage test data with sources of dependencies

As for the sources the dependencies contain test data, ELF files and other
binaries which aren't necessary for building and which lead to unnecessary QA
warnings.

Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 7faea9766127fe4e1023c89b140cc98020655155)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agomobile-broadband-provider-info: upgrade 20190618 ->20201225 2020-04.5-dunfell
Wang Mingyu [Thu, 7 Jan 2021 08:33:24 +0000 (16:33 +0800)]
mobile-broadband-provider-info: upgrade 20190618 ->20201225

Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 812eb3121e0aabe4e3de9a8c61b1e62c87f55aa4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoselftest: Add argument to keep build dir
Paul Barker [Thu, 7 Jan 2021 14:56:12 +0000 (14:56 +0000)]
selftest: Add argument to keep build dir

The oe-selftest code already keeps the selftest build directory in place
if any tests failed. By default the build directory is deleted if all
tests pass but there may be cases where it's desirable to keep this
directory around, for example to compare intermediate files between
passing and failing test runs.

Signed-off-by: Paul Barker <pbarker@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 67aa7069dbe8f5f5f186eb67708ece5c4bd42976)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoruby: remove tcl DEPENDS
Ross Burton [Thu, 7 Jan 2021 17:20:39 +0000 (17:20 +0000)]
ruby: remove tcl DEPENDS

The integrated Tcl/Tk module was removed in Ruby 2.4[1] back in 2016, so this
build dependency can be removed.

[1] https://github.com/ruby/ruby/commit/303dc3c591e324b6bbc691326d8bea76fe3b8fda

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 9f4e181924a83d7b26b11de765c202a9bd036f64)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agogcc: Fix mangled patch
Richard Purdie [Wed, 6 Jan 2021 07:49:22 +0000 (15:49 +0800)]
gcc: Fix mangled patch

To quote Zhuang <qiuguang.zqg@alibaba-inc.com>:
"""
A few days ago, I tried to compile a gcc plugin with the toolchain from poky sdk.
It failed with errors about missing header files such as backend.h etc.

After investigation, I found that the problem was brought by a gcc patch:
0012-gcc-Fix-argument-list-too-long-error.patch (which is considered derived from the original patch)

- headers=`echo $(PLUGIN_HEADERS) $$(cd $(srcdir); echo *.h *.def) | tr ' ' '\012' | sort -u`; \
+ headers="$(sort $(PLUGIN_HEADERS) $$(cd $(srcdir); echo *.h *.def))"; \

It changes the commands of install-plugin, making the sorting taken effect before the shell globs.
Thus results in the header files under gcc $(srcdir) being not installed.

By checking log.do_install, we can find that the `headers=' statement to run is incorrect and will not work as expected:
headers="$(cd *.def) *.h ../../../../../../../work-shared/gcc-10.1.0-r0/gcc-10.1.0/gcc/../include/ansidecl.h ...

As the patch says,
"The PLUGIN_HEADERS is too long before sort, so the "echo" can't handle it, ..."
my suggestion is that we can simply take care of PLUGIN_HEADERS
using the original proposed sort.
"""

This fixes the gcc patch as proposed as it does appear its been
broken over time.

(From OE-Core rev: dce28d8ac7fbae487cb6674b91fe2b574036b26d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 94eb5724b111cf3409219be3b169af79858eab7b)
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agosystemd: update from 244.3 to 244.5 stable release
Mikko Rapeli [Mon, 14 Dec 2020 09:53:31 +0000 (11:53 +0200)]
systemd: update from 244.3 to 244.5 stable release

Brings in a number of fixes from upstream stable tree:

$ git log --format="%h %s" v244.3..v244.5
3ceaa81c61 kernel-install/90-loaderentry: fix when /boot is not mountpoint
ecbb5a4f67 nspawn: fix fd leak on failure path
a09947ddd4 nspawn: check return of setsid()
334f8e2e8f dissect: is_loop_device() returns negative on error, don't mistake that is true
b6efbbfb00 dissect: always invalidate secondary arch partitions if we found primary arch
dc5c5cd5c8 util: wireguard is merged into upstream kernel
6349956dda fstab-generator: add 'nofail' when  NFS 'bg' option is used
f4777883f9 busctl: add missing shortopt -l
9f6249eb7f bootctl: handle if LoaderSystemToken is invalid for some reason
bda316cc0a hashmap: make sure to initialize shared hash key atomically
b80ea9e3da backlight: do not claim that ID_BACKLIGHT_CLAMP= property is not set
c829f6e7ca coredump: don't convert s → µs twice
bb9d872398 firstboot: fill empty color if ansi_color unavailable from os-release
156570cc77 resolved: make sure we initialize t->answer_errno before completing the transaction
02bba02fa6 src/shared/dissect-image.c: fix build without blkdid (#16901)
13cb598631 analyze: fix error handling in one case
6ab20e9f3b units: add missing usb-gadget.target
9ef259dd4d login/logind: Include sys/stat.h for struct stat usage
7762e59fd4 partition/makefs: Include missing sys/file.h header
3528ace8fb networkctl: label command does not take any argument
34b4dc64c6 missing: Add new Linux capability
ba28e6fc45 tty-ask-pw-agent: properly propagate error
7b6e0f74f2 tty-ask-pw-agent: the message string might not be set
0bfe4bd39b tty-ask-pw-agent: make sure "--list" works correctly
0783b4f8ce path: Improve $PATH search directory case
d0735d81d4 path: Skip directories when finalising $PATH search
436872f995 rules: don't install 80-drivers.rules when kmod is disabled
342dc4c15f zsh: correct journalctl command completion parsing
fec0bb6df4 basic/missing_syscall: fix syscall numbers for arm64 :(
bea900bb31 shared/install: fix preset operations for non-service instantiated units
677fb2b663 user-runtime-dir: deal gracefully with missing logind properties
11a97bc230 shared/seccomp: do not use ifdef guards around textual syscall names
d411a4d6a6 machine-id-setup: don't use KVM or container manager supplied uuid if in chroot env
9b078df0ba analyze-security: do not assign badness to filtered-out syscalls
da0cc77b52 load-fragment: fix grammar in error messages
74d7c53e5f test: accept that char device 0/0 can now be created witout privileges
5c35bcf329 tools/make-man-index: fix purpose text that contains tags
da1eb548fb Newer Glibc use faccessat2 to implement faccessat
b44e86ef76 bless-boot: add missing verb to --help
88b6379bcd fix typo in systemctl help
d091e19bbd _sd-common.h: avoid parsing errors with Coverity
d56055f47f nspawn: Fix incorrect usage of putenv
674a2beff0 udev: fix codesonar warnings
16477684d2 sd-boot: fix -Wpointer-sign warning
cc8aeb9916 network: fix static assertion on IPPROTO_MAX range
f047b0706c sd-boot: fix menu ordering with boot counting
896de33984 tests: add a testcase for https://github.com/systemd/systemd/issues/15885
bbc6ff960a network: Fix crash when SendOption= is invalid
1599741b55 kernel-install: strip BOOT_IMAGE= from kernel options
1d1f5006cb basic/user-util: always use base 10 for user/group numbers
b07d782047 parse-util: backport safe_atou32_full()
7bc54463ce Fix build with µhttpd 0.9.71
b074499894 random-seed: add missing header for GRND_NONBLOCK (#14988)
ec9fd71358 makefs: strdup arguments to mkfs
efd5b1d443 network-generator: allow empty hostname
c188248371 network: DHCP lease load SIP copy paste error
cd7d8bb962 davfs is a network file system
6aae7f596a logind: log a more accurate error when we failed at session creation
f4d5928122 docs: Add syntax for templated units to systemd.preset man page
148f7b147a man: add a tiny bit of markup
dbe16df9cd test: wait a bit after starting the test service
a713f52ddb fix journalctl regression (#15099)
49e7c3b617 core: transition to FINAL_SIGTERM state after ExecStopPost=
d25598854d journalctl: show duplicate entries if they are from the same file (#14898)
037a0fa5d0 udev: fix SECLABEL{selinux} issue (#15064)
9de06cd65a dissect-image: avoid scanning partitions
fa65938017 test: ignore IAB capabilities in `test-execute`
16cac70094 Support compiling with clang and gnu11 standard
1ea52d91c8 Typo fix
869614a551 boot: Ensure ARM UEFI binary does not contain FP/SIMD instructions

Patches CVE-2020-13776.patch and systemd-udev-seclabel-options-crash-fix.patch
can be dropped as they are already applied in 244.5 upstream release.

Not needed on master branch or gatesgarth as they run newer systemd version 246.

Tested on an ARM64 target with automatic tests which are passing on our side.

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoglib-2.0: add patch for CVE-2020-35457
Mikko Rapeli [Tue, 5 Jan 2021 10:18:20 +0000 (12:18 +0200)]
glib-2.0: add patch for CVE-2020-35457

Upstream has disputed CVE-2020-35457 claiming it's not exploitable but
the patch is simple to add.

https://security-tracker.debian.org/tracker/CVE-2020-35457

"https://gitlab.gnome.org/GNOME/glib/-/commit/63c5b62f0a984fac9a9700b12f54fe878e016a5d
https://gitlab.gnome.org/GNOME/glib/-/issues/2197
Upstream position is that it is not realistically a security issue."

For master branch this CVE is not reported by CVE checker:

NOTE: glib-2.0-2.66.4 is not vulnerable to CVE-2020-35457

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoglibc: update to 2.31 stable tree head
Mikko Rapeli [Tue, 5 Jan 2021 10:17:52 +0000 (12:17 +0200)]
glibc: update to 2.31 stable tree head

Includes fixes:

$ git log --format="%h %s" 6fdf971c9dbf7dac9bea552113fe4694015bbc4d..df31c7ca927242d5d4eee97f93a01e23ff47e332
df31c7ca92 iconv: Accept redundant shift sequences in IBM1364 [BZ #26224]
7df507808c sh: Add sh4 fpu Implies folder
8dc7605665 aarch64: Fix DT_AARCH64_VARIANT_PCS handling [BZ #26798]
48cf525f4b x86: Optimizing memcpy for AMD Zen architecture.
8d730cb25a Reversing calculation of __x86_shared_non_temporal_threshold
4bc9918c99 AArch64: Use __memcpy_simd on Neoverse N2/V1
4722d1fb9d [AArch64] Improve integer memcpy
bea507a3f5 AArch64: Rename IS_ARES to IS_NEOVERSE_N1
d0a5b76902 AArch64: Improve backwards memmove performance
24a30c5959 AArch64: Add optimized Q-register memcpy
88db98fa6e AArch64: Align ENTRY to a cacheline
32965a46ce intl: Handle translation output codesets with suffixes [BZ #26383]

Tested on aarch64 target with CI and long running tests.

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agodiffstat: point the license checksum at the license
Ross Burton [Mon, 4 Jan 2021 17:39:25 +0000 (17:39 +0000)]
diffstat: point the license checksum at the license

Previously install-sh was used, which is installed by autoconf so isn't
a relevant license.

Also remove S assignment, as that's the default.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 23cb39a5fa2a55681e7bc2605f435135cec9173b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agooe-pkgdata-util: Added a test to verify oe-pkgdata-util without parameters
Milan Shah [Mon, 4 Jan 2021 05:54:02 +0000 (11:24 +0530)]
oe-pkgdata-util: Added a test to verify oe-pkgdata-util without parameters

A test is implemented on poky/meta/lib/oeqa/selftest/pkgdata.py to test
the scenario when oe-pkgdata-util is executed without parameters and
help is displayed.

See [YOCTO #10726] for detailed bug information.

Signed-off-by: Milan Shah <mshah@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 6b4e2eafa6eb71ca94ccc8a18d05b473b352367c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agotimezone: upgrade to 2020f
Ovidiu Panait [Mon, 4 Jan 2021 12:42:39 +0000 (14:42 +0200)]
timezone: upgrade to 2020f

Release 2020f - 2020-12-29 00:17:46 -0800

  Change to build procedure

    'make rearguard_tarballs' no longer generates a bad rearguard.zi,
    fixing a 2020e bug.  (Problem reported by Deborah Goldsmith.)

Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c7efa4d28d632d415ca574140586570ca376caf6)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agolinux-yocto/5.4: update to v5.4.85
Bruce Ashfield [Wed, 23 Dec 2020 16:10:04 +0000 (11:10 -0500)]
linux-yocto/5.4: update to v5.4.85

Updating linux-yocto/5.4 to the latest korg -stable release that comprises
the following commits:

    19d1c763e849 Linux 5.4.85
    484ac6279ad2 x86/resctrl: Fix incorrect local bandwidth when mba_sc is enabled
    eb3f42cf5e67 x86/resctrl: Remove unused struct mbm_state::chunks_bw
    c4f909407015 membarrier: Explicitly sync remote cores when SYNC_CORE is requested
    a840e37ef800 Revert "selftests/ftrace: check for do_sys_openat2 in user-memory test"
    aa17a20d640d KVM: mmu: Fix SPTE encoding of MMIO generation upper half
    bb07f4c93e62 serial: 8250_omap: Avoid FIFO corruption caused by MDR1 access
    14482dc42c28 ALSA: pcm: oss: Fix potential out-of-bounds shift
    c94a31c19225 USB: sisusbvga: Make console support depend on BROKEN
    4ad8fc6cce01 USB: UAS: introduce a quirk to set no_write_same
    397d0ae4cb90 xhci-pci: Allow host runtime PM as default for Intel Alpine Ridge LP
    32c820e016b4 xhci: Give USB2 ports time to enter U3 in bus suspend
    5828ae0c1920 ALSA: usb-audio: Fix control 'access overflow' errors from chmap
    e72a55ea7168 ALSA: usb-audio: Fix potential out-of-bounds shift
    56339afa39e5 USB: add RESET_RESUME quirk for Snapscan 1212
    52c2ada6fe5e USB: dummy-hcd: Fix uninitialized array use in init()
    497993377bca ktest.pl: If size of log is too big to email, email error message
    a8d28a541500 net: stmmac: delete the eee_ctrl_timer after napi disabled
    ee08543f4598 net: stmmac: dwmac-meson8b: fix mask definition of the m250_sel mux
    5ae78c6926cc net: ll_temac: Fix potential NULL dereference in temac_probe()
    717a140a3635 net/mlx4_en: Handle TX error CQE
    d0363dcabbd1 lan743x: fix for potential NULL pointer dereference with bare card
    d4107a0f8802 net/mlx4_en: Avoid scheduling restart task if it is already running
    add880d788f0 tcp: fix cwnd-limited bug for TSO deferral where we send nothing
    5189c070a0d7 tcp: select sane initial rcvq_space.space for big MSS
    318d90218b21 net: stmmac: free tx skb buffer in stmmac_resume()
    d8d39e13668a bridge: Fix a deadlock when enabling multicast snooping
    cb327f83cf5e enetc: Fix reporting of h/w packet counters
    408c8213ee97 udp: fix the proto value passed to ip_protocol_deliver_rcu for the segments
    f7a756fc7cb9 net: hns3: remove a misused pragma packed
    2ef23e860e76 vrf: packets with lladdr src needs dst at input with orig_iif when needs strict
    cae90bd22cff net: bridge: vlan: fix error return code in __vlan_add()
    2e6a15b0b3d4 mac80211: mesh: fix mesh_pathtbl_init() error path
    1fe6b822b335 ipv4: fix error return code in rtm_to_fib_config()
    8b4f08f28015 ptrace: Prevent kernel-infoleak in ptrace_get_syscall_info()
    8a866bdbbac2 Linux 5.4.84
    c2c5dc84ac51 compiler.h: fix barrier_data() on clang
    69dc72f058c9 mm/zsmalloc.c: drop ZSMALLOC_PGTABLE_MAPPING
    3349f1e4cf6d x86/apic/vector: Fix ordering in vector assignment
    e3c1d51868f3 x86/membarrier: Get rid of a dubious optimization
    6346ed69bc7c x86/mm/mem_encrypt: Fix definition of PMD_FLAGS_DEC_WP
    258d646f006b scsi: be2iscsi: Revert "Fix a theoretical leak in beiscsi_create_eqs()"
    7d5fc53439a1 proc: use untagged_addr() for pagemap_read addresses
    6472d3ae6ef5 kbuild: avoid static_assert for genksyms
    0cd7084a2a03 drm/i915/display/dp: Compute the correct slice count for VDSC on DP
    60c1c68fae5e mmc: block: Fixup condition for CMD13 polling for RPMB requests
    974aa59837ed pinctrl: amd: remove debounce filter setting in IRQ type setting
    457f5289b7e7 Input: i8042 - add Acer laptops to the i8042 reset list
    cf596f3906e9 Input: cm109 - do not stomp on control URB
    d2d113aca34f ktest.pl: Fix incorrect reboot for grub2bls
    181088e37b1d can: m_can: m_can_dev_setup(): add support for bosch mcan version 3.3.0
    38b1dbc1229c platform/x86: touchscreen_dmi: Add info for the Irbis TW118 tablet
    2fa99f6f8f60 platform/x86: intel-vbtn: Support for tablet mode on HP Pavilion 13 x360 PC
    21aa2d1f2bfb platform/x86: acer-wmi: add automatic keyboard background light toggle key as KEY_LIGHTS_TOGGLE
    010e6e816f54 platform/x86: thinkpad_acpi: Add BAT1 is primary battery quirk for Thinkpad Yoga 11e 4th gen
    4778a11e0500 platform/x86: thinkpad_acpi: Do not report SW_TABLET_MODE on Yoga 11e
    eb5e28ffe39a arm64: tegra: Disable the ACONNECT for Jetson TX2
    c7e271337402 soc: fsl: dpio: Get the cpumask through cpumask_of(cpu)
    37aa8318ed43 spi: spi-nxp-fspi: fix fspi panic by unexpected interrupts
    864fbeab8c99 irqchip/gic-v3-its: Unconditionally save/restore the ITS state on suspend
    47fac0ccf775 ibmvnic: skip tx timeout reset while in resetting
    c0450df6d0f7 interconnect: qcom: qcs404: Remove GPU and display RPM IDs
    adad2bc9f303 scsi: ufs: Make sure clk scaling happens only when HBA is runtime ACTIVE
    b184e9800867 ARC: stack unwinding: don't assume non-current task is sleeping
    8ed74a012206 arm64: dts: broadcom: clear the warnings caused by empty dma-ranges
    acac3f7d7d22 powerpc: Drop -me200 addition to build flags
    8012a30b9e16 iwlwifi: mvm: fix kernel panic in case of assert during CSA
    c90527770b88 iwlwifi: pcie: set LTR to avoid completion timeout
    d411a07d6c04 arm64: dts: rockchip: Assign a fixed index to mmc devices on rk3399 boards.
    0e6cae4e8181 iwlwifi: pcie: limit memory read spin time
    591afbc97c18 x86/lib: Change .weak to SYM_FUNC_START_WEAK for arch/x86/lib/mem*_64.S
    018b05e0f05b Kbuild: do not emit debug info for assembly with LLVM_IAS=1

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
(cherry picked from commit 3dd19af60e5e4059ce7c7a67ff16fba1cb00de80)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowic: fix typo
Daniel Ammann [Wed, 5 Aug 2020 10:52:43 +0000 (12:52 +0200)]
wic: fix typo

Signed-off-by: Daniel Ammann <daniel.ammann@bytesatwork.ch>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 9ab4c4571d899d2eefcd2fc53af0851863f29008)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopatch: fix CVE-2019-20633
Scott Murray [Wed, 30 Dec 2020 22:44:18 +0000 (17:44 -0500)]
patch: fix CVE-2019-20633

* CVE detail: https://nvd.nist.gov/vuln/detail/CVE-2019-20633

* upstream tracking: https://savannah.gnu.org/bugs/index.php?56683

* Fixes potential for double free after incomplete fix for CVE-2018-6952
  - src/pch.c (another_hunk): Avoid invalid memory access in context format
    diffs.

Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit be71dd2cc16a4c0d244a76a748f08ca0d9bfeba0)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agogrub: fix "CVE:" line in one of the patches
Scott Murray [Wed, 30 Dec 2020 22:44:17 +0000 (17:44 -0500)]
grub: fix "CVE:" line in one of the patches

The "CVE:" line in the patch for CVEs 2020-14309, CVE-2020-14310, and
CVE-2020-14311 had commas between the CVE numbers, which resulted in
CVE-2020-14310 not being picked up as patched by cve-check.bbclass's
parsing.  Remove the commas to match cve-check.bbclass's expectations.

Signed-off-by: Scott Murray <scott.murray@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 396d5c0f9cffa4b54ae94738b1ef2b6fb545f082)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agogdk-pixbuf: fix CVE-2020-29385
Lee Chee Yang [Wed, 30 Dec 2020 09:01:40 +0000 (17:01 +0800)]
gdk-pixbuf: fix CVE-2020-29385

Backport patch from
https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/commit/bdd3acbd48a575d418ba6bf1b32d7bda2fae1c81

image file in upstream patch is for test purpose only, it cause error during
do_patch so drop it:
File tests/test-images/fail/hang_114.gif: git binary diffs are not supported.

Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 7cd401b7c60dba91f6fb10395ab4a10a267cf23d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agolibexif: fix CVE-2020-0198; CVE-2020-0452
Changqing Li [Wed, 30 Dec 2020 02:39:53 +0000 (10:39 +0800)]
libexif: fix CVE-2020-0198; CVE-2020-0452

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 46d837442ab216941df2d02f60c69155463e02d8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agoman-db: Fix reproducibility issue
Richard Purdie [Sat, 2 Jan 2021 17:12:43 +0000 (17:12 +0000)]
man-db: Fix reproducibility issue

Executing a sequence like:

bitbake man-db
bitbake man-db -c clean
bitbake man-db -c package_write_deb -f

results in the ownership of files in the man-db package changing from "man/man"
to "6/12". This is due to base-passwd not being installed in the recipe
sysroot.

Add the missing dependency so even if a recipe "re-packages", the name
of the user/group is found and the packages are reproducible.

[YOCTO #14172]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 769f8be29a192fd4fa0c4752f851fa3728d71179)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agowic/direct/kparser: ensure fsuuid for vfat and msdos align with format
Lee Chee Yang [Fri, 1 Jan 2021 06:18:28 +0000 (14:18 +0800)]
wic/direct/kparser: ensure fsuuid for vfat and msdos align with format

vfat/msdos filesystem should have fsuuid in format 0xYYYYYYYY where "0x"
in front follow with 8 hexadecimal number in uppercase. In wic, when using
custom fsuuid for vfat/msdos partition in wks, it is able to set the value
in any length, with or without leading "0x". This can cause fsuuid
missaligned when fstab updates, fstab expect exactly 10 character
fsuuid for vfat/msdos partition and all in uppercase.

if custom fsuuid for vfat/msdos is set, check the length and format,
error if it exceed the format size. Amend it so it is align with format
0xYYYYYYYY. This is done before image create and fstab update to ensure the
fsuuid are same in all followup process. if custom fsuuid length less than
expected, fill in "0".

[YOCTO #14161]

Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d9686ae511ef10a504becfd81bfe296b788e1456)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agotimezone: upgrade to 2020e
Ovidiu Panait [Mon, 28 Dec 2020 07:57:45 +0000 (09:57 +0200)]
timezone: upgrade to 2020e

Briefly:
  Volgograd switches to Moscow time on 2020-12-27 at 02:00.

Changes to future timestamps

  Volgograd changes time zone from +04 to +03 on 2020-12-27 at 02:00.
  (Thanks to Alexander Krivenyshev and Stepan Golosunov.)

Changes to past timestamps

  Correct many pre-1986 transitions, fixing entries originally
  derived from Shanks.  The fixes include:
    - Australia: several 1917 through 1971 transitions
    - Bahamas: several 1941 through 1945 transitions
    - Bermuda: several 1917 through 1956 transitions
    - Belize: several 1942 through 1968 transitions
    - Ghana: several 1915 through 1956 transitions
    - Israel and Palestine: several 1940 through 1985 transitions
    - Kenya and adjacent: several 1908 through 1960 transitions
    - Nigeria and adjacent: correcting LMT in Lagos, and several 1905
      through 1919 transitions
    - Seychelles: the introduction of standard time in 1907, not 1906
    - Vanuatu: DST in 1973-1974, and a corrected 1984 transition
  (Thanks to P Chan.)

  Because of the Australia change, Australia/Currie (King Island) is
  no longer needed, as it is identical to Australia/Hobart for all
  timestamps since 1970 and was therefore created by mistake.
  Australia/Currie has been moved to the 'backward' file and its
  corrected data moved to the 'backzone' file.

Changes to past time zone abbreviations and DST flags

  To better match legislation in Turks and Caicos, the 2015 shift to
  year-round observance of -04 is now modeled as AST throughout before
  returning to Eastern Time with US DST in 2018, rather than as
  maintaining EDT until 2015-11-01.  (Thanks to P Chan.)

Changes to documentation

  The zic man page now documents zic's coalescing of transitions
  when a zone falls back just before DST springs forward.

Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 9d7643339b4db6609b2bad1f76599a54da9d17f2)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agogrub: Further reproducibility fix
Richard Purdie [Thu, 31 Dec 2020 17:12:27 +0000 (17:12 +0000)]
grub: Further reproducibility fix

Fix the ordering in the generated unidata.c file to aid reproducibility.

[YOCTO #14167]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 6d9c9f7604fd32ef926726a46ae053bbab6ccb4f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
4 years agopopulate_sdk_base: Fix condition syntax if SDK_RELOCATE_AFTER_INSTALL is disabled
Tomasz Dziendzielski [Tue, 22 Dec 2020 13:21:54 +0000 (14:21 +0100)]
populate_sdk_base: Fix condition syntax if SDK_RELOCATE_AFTER_INSTALL is disabled

If variable is set to empty string the comparison is "if [ -eq 1 ]"
which fails with "[: -eq: unary operator expected".

Signed-off-by: Tomasz Dziendzielski <tomasz.dziendzielski@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 36a2dc83fd0e1d6e2b8441e24a4cbc48a6c4fc19)
Signed-off-by: Steve Sakoman <steve@sakoman.com>