diff options
Diffstat (limited to 'poky/meta/recipes-core')
44 files changed, 464 insertions, 275 deletions
diff --git a/poky/meta/recipes-core/busybox/busybox/CVE-2022-30065.patch b/poky/meta/recipes-core/busybox/busybox/CVE-2022-30065.patch new file mode 100644 index 0000000000..25ad653b25 --- /dev/null +++ b/poky/meta/recipes-core/busybox/busybox/CVE-2022-30065.patch @@ -0,0 +1,29 @@ +Fix use-after-free in awk. + +CVE: CVE-2022-30065 +Upstream-Status: Submitted [http://lists.busybox.net/pipermail/busybox/2022-June/089768.html] +Signed-off-by: Ross Burton <ross.burton@arm.com> + +fixes https://bugs.busybox.net/show_bug.cgi?id=14781 + +Signed-off-by: Natanael Copa <ncopa at alpinelinux.org> +--- + editors/awk.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/editors/awk.c b/editors/awk.c +index 079d0bde5..728ee8685 100644 +--- a/editors/awk.c ++++ b/editors/awk.c +@@ -3128,6 +3128,9 @@ static var *evaluate(node *op, var *res) + + case XC( OC_MOVE ): + debug_printf_eval("MOVE\n"); ++ /* make sure that we never return a temp var */ ++ if (L.v == TMPVAR0) ++ L.v = res; + /* if source is a temporary string, jusk relink it to dest */ + if (R.v == TMPVAR1 + && !(R.v->type & VF_NUMBER) +-- +2.36.1 diff --git a/poky/meta/recipes-core/busybox/busybox_1.35.0.bb b/poky/meta/recipes-core/busybox/busybox_1.35.0.bb index f2f1b35902..edf896485e 100644 --- a/poky/meta/recipes-core/busybox/busybox_1.35.0.bb +++ b/poky/meta/recipes-core/busybox/busybox_1.35.0.bb @@ -49,6 +49,7 @@ SRC_URI = "https://busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \ file://0001-sysctl-ignore-EIO-of-stable_secret-below-proc-sys-ne.patch \ file://0001-libbb-sockaddr2str-ensure-only-printable-characters-.patch \ file://0002-nslookup-sanitize-all-printed-strings-with-printable.patch \ + file://CVE-2022-30065.patch \ " SRC_URI:append:libc-musl = " file://musl.cfg " diff --git a/poky/meta/recipes-core/coreutils/coreutils_9.1.bb b/poky/meta/recipes-core/coreutils/coreutils_9.1.bb index d57e147a7e..55663c7713 100644 --- a/poky/meta/recipes-core/coreutils/coreutils_9.1.bb +++ b/poky/meta/recipes-core/coreutils/coreutils_9.1.bb @@ -171,8 +171,9 @@ RDEPENDS:${PN}-ptest += "bash findutils gawk liberror-perl make perl perl-module # -dev automatic dependencies fails as we don't want libmodule-build-perl-dev, its too heavy # may need tweaking if DEPENDS changes +# Can't use ${PN}-dev here since flags with overrides and key expansion not supported RRECOMMENDS:coreutils-dev[nodeprrecs] = "1" -RRECOMMENDS:coreutils-dev = "acl-dev attr-dev gmp-dev libcap-dev bash-dev findutils-dev gawk-dev shadow-dev" +RRECOMMENDS:${PN}-dev += "acl-dev attr-dev gmp-dev libcap-dev bash-dev findutils-dev gawk-dev shadow-dev" do_install_ptest () { install -d ${D}${PTEST_PATH}/tests diff --git a/poky/meta/recipes-core/ell/ell/0001-build-fix-time.h-related-breakage-on-musl.patch b/poky/meta/recipes-core/ell/ell/0001-build-fix-time.h-related-breakage-on-musl.patch new file mode 100644 index 0000000000..02b5a9f21e --- /dev/null +++ b/poky/meta/recipes-core/ell/ell/0001-build-fix-time.h-related-breakage-on-musl.patch @@ -0,0 +1,79 @@ +From cd9513a025174181b66ac13de45813f6e15727d3 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Milan=20P=2E=20Stani=C4=87?= <mps@arvanta.net> +Date: Mon, 6 Jun 2022 22:05:39 +0200 +Subject: [PATCH] build: fix time.h related breakage on musl + +missing time.h for struct timeval usage +forward declaration of struct timeval in time-private.h + +Upstream-Status: Backport +Signed-off-by: Alexander Kanavin <alex@linutronix.de> +--- + ell/dhcp-transport.c | 1 + + ell/dhcp6-transport.c | 1 + + ell/icmp6.c | 1 + + ell/time-private.h | 2 +- + ell/time.c | 1 + + 5 files changed, 5 insertions(+), 1 deletion(-) + +diff --git a/ell/dhcp-transport.c b/ell/dhcp-transport.c +index ef030de..c4cf0ca 100644 +--- a/ell/dhcp-transport.c ++++ b/ell/dhcp-transport.c +@@ -40,6 +40,7 @@ + #include <linux/filter.h> + #include <net/if_arp.h> + #include <errno.h> ++#include <sys/time.h> + + #include "io.h" + #include "util.h" +diff --git a/ell/dhcp6-transport.c b/ell/dhcp6-transport.c +index 30c425f..5ff6516 100644 +--- a/ell/dhcp6-transport.c ++++ b/ell/dhcp6-transport.c +@@ -35,6 +35,7 @@ + #include <net/if.h> + #include <unistd.h> + #include <errno.h> ++#include <sys/time.h> + + #include "private.h" + #include "missing.h" +diff --git a/ell/icmp6.c b/ell/icmp6.c +index 368977f..7319903 100644 +--- a/ell/icmp6.c ++++ b/ell/icmp6.c +@@ -36,6 +36,7 @@ + #include <net/if.h> + #include <unistd.h> + #include <errno.h> ++#include <sys/time.h> + + #include "private.h" + #include "useful.h" +diff --git a/ell/time-private.h b/ell/time-private.h +index 5295d94..83c23dd 100644 +--- a/ell/time-private.h ++++ b/ell/time-private.h +@@ -19,7 +19,7 @@ + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * + */ +- ++struct timeval; + uint64_t _time_pick_interval_secs(uint32_t min_secs, uint32_t max_secs); + uint64_t _time_fuzz_msecs(uint64_t ms); + uint64_t _time_fuzz_secs(uint32_t secs, uint32_t max_offset); +diff --git a/ell/time.c b/ell/time.c +index 10e10b0..41e5725 100644 +--- a/ell/time.c ++++ b/ell/time.c +@@ -26,6 +26,7 @@ + + #define _GNU_SOURCE + #include <time.h> ++#include <sys/time.h> + + #include "time.h" + #include "time-private.h" diff --git a/poky/meta/recipes-core/ell/ell_0.50.bb b/poky/meta/recipes-core/ell/ell_0.51.bb index 243ac01530..806833bc7d 100644 --- a/poky/meta/recipes-core/ell/ell_0.50.bb +++ b/poky/meta/recipes-core/ell/ell_0.51.bb @@ -15,8 +15,9 @@ DEPENDS = "dbus" inherit autotools pkgconfig SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/libs/${BPN}/${BPN}-${PV}.tar.xz \ + file://0001-build-fix-time.h-related-breakage-on-musl.patch \ " -SRC_URI[sha256sum] = "0fe51d51c6eddc2a2784092f1dfdd1143a5ef27f15c274ecfbadd680d3a72fd9" +SRC_URI[sha256sum] = "ba86cfa4aaf10151443edd63a7687914465d969f5dda00a2c1fcb11bd85e417f" do_configure:prepend () { mkdir -p ${S}/build-aux diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch b/poky/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch index fb50fff6a5..c0114397d8 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0/relocate-modules.patch @@ -1,4 +1,4 @@ -From a30eb17c20e070124b55523d86729348f2929f95 Mon Sep 17 00:00:00 2001 +From 9a66887179d28d696562dcac43ad05d67580cfdb Mon Sep 17 00:00:00 2001 From: Ross Burton <ross.burton@intel.com> Date: Fri, 11 Mar 2016 15:35:55 +0000 Subject: [PATCH] glib-2.0: relocate the GIO module directory for native builds diff --git a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.72.2.bb b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.72.3.bb index c4a8a4b8ad..dd1ea508d2 100644 --- a/poky/meta/recipes-core/glib-2.0/glib-2.0_2.72.2.bb +++ b/poky/meta/recipes-core/glib-2.0/glib-2.0_2.72.3.bb @@ -19,7 +19,7 @@ SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \ " SRC_URI:append:class-native = " file://relocate-modules.patch" -SRC_URI[sha256sum] = "78d599a133dba7fe2036dfa8db8fb6131ab9642783fc9578b07a20995252d2de" +SRC_URI[sha256sum] = "4a39a2f624b8512d500d5840173eda7fa85f51c109052eae806acece85d345f0" # Find any meson cross files in FILESPATH that are relevant for the current # build (using siteinfo) and add them to EXTRA_OEMESON. diff --git a/poky/meta/recipes-core/glib-networking/glib-networking_2.72.0.bb b/poky/meta/recipes-core/glib-networking/glib-networking_2.72.1.bb index d578f17aa5..41f18d1c48 100644 --- a/poky/meta/recipes-core/glib-networking/glib-networking_2.72.0.bb +++ b/poky/meta/recipes-core/glib-networking/glib-networking_2.72.1.bb @@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" SECTION = "libs" DEPENDS = "glib-2.0" -SRC_URI[archive.sha256sum] = "100aaebb369285041de52da422b6b716789d5e4d7549a3a71ba587b932e0823b" +SRC_URI[archive.sha256sum] = "6fc1bedc8062484dc8a0204965995ef2367c3db5c934058ff1607e5a24d95a74" PACKAGECONFIG ??= "openssl ${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)}" diff --git a/poky/meta/recipes-core/glibc/glibc-package.inc b/poky/meta/recipes-core/glibc/glibc-package.inc index 7f9e7503a1..278e1b7cc1 100644 --- a/poky/meta/recipes-core/glibc/glibc-package.inc +++ b/poky/meta/recipes-core/glibc/glibc-package.inc @@ -40,7 +40,7 @@ FILES:${PN}-pic = "${libdir}/*_pic.a ${libdir}/*_pic.map ${libdir}/libc_pic/*.o" FILES:libsotruss = "${libdir}/audit/sotruss-lib.so" FILES_SOLIBSDEV = "${libdir}/lib*${SOLIBSDEV}" FILES:${PN}-dev += "${libdir}/libpthread.a ${libdir}/libdl.a ${libdir}/libutil.a ${libdir}/libanl.a ${libdir}/*_nonshared.a ${base_libdir}/*_nonshared.a ${base_libdir}/*.o ${datadir}/aclocal" -RDEPENDS:${PN}-dev = "linux-libc-headers-dev" +DEV_PKG_DEPENDENCY = "linux-libc-headers-dev" FILES:${PN}-staticdev += "${libdir}/*.a ${base_libdir}/*.a" FILES:nscd = "${sbindir}/nscd* ${sysconfdir}/init.d/nscd ${systemd_system_unitdir}/nscd* ${sysconfdir}/tmpfiles.d/nscd.conf \ ${sysconfdir}/nscd.conf ${sysconfdir}/default/volatiles/98_nscd ${localstatedir}/db/nscd" diff --git a/poky/meta/recipes-core/glibc/glibc-tests_2.35.bb b/poky/meta/recipes-core/glibc/glibc-tests_2.35.bb index 414f8660de..96d0569ff6 100644 --- a/poky/meta/recipes-core/glibc/glibc-tests_2.35.bb +++ b/poky/meta/recipes-core/glibc/glibc-tests_2.35.bb @@ -5,6 +5,7 @@ inherit ptest features_check REQUIRED_DISTRO_FEATURES = "ptest" SRC_URI:append = " \ + file://reproducible-paths.patch \ file://run-ptest \ " @@ -18,7 +19,8 @@ python __anonymous() { d.setVar("PROVIDES", "${PN} ${PN}-ptest") d.setVar("RPROVIDES", "${PN} ${PN}-ptest") - d.setVar("BBCLASSEXTEND", "") + bbclassextend = d.getVar("BBCLASSEXTEND").replace("nativesdk", "").strip() + d.setVar("BBCLASSEXTEND", bbclassextend) d.setVar("RRECOMMENDS", "") d.setVar("SYSTEMD_SERVICE:nscd", "") d.setVar("SYSTEMD_PACKAGES", "") @@ -30,6 +32,8 @@ RRECOMMENDS:${PN} = "" RDEPENDS:${PN} = " glibc sed" DEPENDS:append = " sed" +export oe_srcdir="${exec_prefix}/src/debug/glibc/${PV}/" + # Just build tests for target - do not run them do_check:append () { oe_runmake -i check run-built-tests=no @@ -95,7 +99,7 @@ python populate_packages:prepend () { d.setVar('DEBIAN_NAMES', '') } -FILES:${PN} = "${PTEST_PATH}/* /usr/src/debug/glibc-tests/*" +FILES:${PN} = "${PTEST_PATH}/* /usr/src/debug/${PN}/*" EXCLUDE_FROM_SHLIBS = "1" diff --git a/poky/meta/recipes-core/glibc/glibc-version.inc b/poky/meta/recipes-core/glibc/glibc-version.inc index 5fea8b33ef..99017ce1d4 100644 --- a/poky/meta/recipes-core/glibc/glibc-version.inc +++ b/poky/meta/recipes-core/glibc/glibc-version.inc @@ -1,6 +1,6 @@ SRCBRANCH ?= "release/2.35/master" PV = "2.35" -SRCREV_glibc ?= "499a60179657d2945c6ad01bdac90e8427a6310e" +SRCREV_glibc ?= "b6aade18a7e5719c942aa2da6cf3157aca993fa4" SRCREV_localedef ?= "794da69788cbf9bf57b59a852f9f11307663fa87" GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git" diff --git a/poky/meta/recipes-core/glibc/glibc/reproducible-paths.patch b/poky/meta/recipes-core/glibc/glibc/reproducible-paths.patch new file mode 100644 index 0000000000..0754dca62b --- /dev/null +++ b/poky/meta/recipes-core/glibc/glibc/reproducible-paths.patch @@ -0,0 +1,23 @@ +Avoid hardcoded build time paths in the output binaries by replacing the compile +definitions with the output locations. + +Upstream-Status: Inappropriate [would need reworking somehow to be acceptable upstream] +Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> + +Index: git/support/Makefile +=================================================================== +--- git.orig/support/Makefile ++++ git/support/Makefile +@@ -216,9 +216,9 @@ libsupport-inhibit-o += .o + endif + + CFLAGS-support_paths.c = \ +- -DSRCDIR_PATH=\"`cd .. ; pwd`\" \ +- -DOBJDIR_PATH=\"`cd $(objpfx)/..; pwd`\" \ +- -DOBJDIR_ELF_LDSO_PATH=\"`cd $(objpfx)/..; pwd`/elf/$(rtld-installed-name)\" \ ++ -DSRCDIR_PATH=\"$(oe_srcdir)\" \ ++ -DOBJDIR_PATH=\"$(libdir)/glibc-tests/ptest/tests/glibc-ptest\" \ ++ -DOBJDIR_ELF_LDSO_PATH=\"$(slibdir)/$(rtld-installed-name)\" \ + -DINSTDIR_PATH=\"$(prefix)\" \ + -DLIBDIR_PATH=\"$(libdir)\" \ + -DBINDIR_PATH=\"$(bindir)\" \ diff --git a/poky/meta/recipes-core/initrdscripts/initramfs-framework/finish b/poky/meta/recipes-core/initrdscripts/initramfs-framework/finish index f08a920867..ac0de9f996 100755 --- a/poky/meta/recipes-core/initrdscripts/initramfs-framework/finish +++ b/poky/meta/recipes-core/initrdscripts/initramfs-framework/finish @@ -26,6 +26,15 @@ finish_run() { info "Switching root to '$ROOTFS_DIR'..." + debug "Moving basic mounts onto rootfs" + for dir in `awk '/\/dev.* \/run\/media/{print $2}' /proc/mounts`; do + # Parse any OCT or HEX encoded chars such as spaces + # in the mount points to actual ASCII chars + dir=`printf $dir` + mkdir -p "${ROOTFS_DIR}/media/${dir##*/}" + mount -n --move "$dir" "${ROOTFS_DIR}/media/${dir##*/}" + done + debug "Moving /dev, /proc and /sys onto rootfs..." mount --move /dev $ROOTFS_DIR/dev mount --move /proc $ROOTFS_DIR/proc diff --git a/poky/meta/recipes-core/initscripts/init-system-helpers_1.63.bb b/poky/meta/recipes-core/initscripts/init-system-helpers_1.64.bb index 1251ddf639..22ddd6840f 100644 --- a/poky/meta/recipes-core/initscripts/init-system-helpers_1.63.bb +++ b/poky/meta/recipes-core/initscripts/init-system-helpers_1.64.bb @@ -14,9 +14,9 @@ include their helpers in this package." HOMEPAGE = "https://salsa.debian.org/debian/init-system-helpers" SECTION = "base" LICENSE = "BSD-3-Clause & GPL-2.0-only" -LIC_FILES_CHKSUM = "file://debian/copyright;md5=ee2b1830fcfead84d07bc060ec43e072" +LIC_FILES_CHKSUM = "file://debian/copyright;md5=c4ec20aa158fa9de26ee1accf78dcaae" -SRCREV = "af94bae943a80954af7fd486c1cab3f900e0975f" +SRCREV = "c440893051406c11f0a315058939657d5937be4f" SRC_URI = "git://salsa.debian.org/debian/init-system-helpers.git;protocol=https;branch=master" S = "${WORKDIR}/git" diff --git a/poky/meta/recipes-core/kbd/kbd_2.5.0.bb b/poky/meta/recipes-core/kbd/kbd_2.5.1.bb index c0317a5d84..aa3ab6e121 100644 --- a/poky/meta/recipes-core/kbd/kbd_2.5.0.bb +++ b/poky/meta/recipes-core/kbd/kbd_2.5.1.bb @@ -16,7 +16,7 @@ RCONFLICTS:${PN} = "console-tools" SRC_URI = "${KERNELORG_MIRROR}/linux/utils/${BPN}/${BP}.tar.xz \ " -SRC_URI[sha256sum] = "ad95964a4dede55f9239dd63b455fa4498cf3db3a0075ccd1d65a9f0e622a0fd" +SRC_URI[sha256sum] = "ccdf452387a6380973d2927363e9cbb939fa2068915a6f937ff9d24522024683" PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} \ " diff --git a/poky/meta/recipes-core/meta/signing-keys.bb b/poky/meta/recipes-core/meta/signing-keys.bb index 03463f95f5..107a39d658 100644 --- a/poky/meta/recipes-core/meta/signing-keys.bb +++ b/poky/meta/recipes-core/meta/signing-keys.bb @@ -18,6 +18,8 @@ FILES:${PN}-rpm = "${sysconfdir}/pki/rpm-gpg" FILES:${PN}-ipk = "${sysconfdir}/pki/ipk-gpg" FILES:${PN}-packagefeed = "${sysconfdir}/pki/packagefeed-gpg" +RDEPENDS:${PN}-dev = "" + python do_get_public_keys () { from oe.gpg_sign import get_signer diff --git a/poky/meta/recipes-core/musl/bsd-headers.bb b/poky/meta/recipes-core/musl/bsd-headers.bb index cf8af0da3c..887a816031 100644 --- a/poky/meta/recipes-core/musl/bsd-headers.bb +++ b/poky/meta/recipes-core/musl/bsd-headers.bb @@ -27,5 +27,5 @@ do_install() { # COMPATIBLE_HOST = ".*-musl.*" -RDEPENDS:${PN}-dev = "" +DEV_PKG_DEPENDENCY = "" RRECOMMENDS:${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})" diff --git a/poky/meta/recipes-core/musl/libssp-nonshared.bb b/poky/meta/recipes-core/musl/libssp-nonshared.bb index 748dacf312..3faf8f00c3 100644 --- a/poky/meta/recipes-core/musl/libssp-nonshared.bb +++ b/poky/meta/recipes-core/musl/libssp-nonshared.bb @@ -31,5 +31,5 @@ do_install() { # COMPATIBLE_HOST = ".*-musl.*" RDEPENDS:${PN}-staticdev = "" -RDEPENDS:${PN}-dev = "" +DEV_PKG_DEPENDENCY = "" RRECOMMENDS:${PN}-dbg = "${PN}-staticdev (= ${EXTENDPKGV})" diff --git a/poky/meta/recipes-core/musl/musl-obstack.bb b/poky/meta/recipes-core/musl/musl-obstack.bb index 4df24c013b..5c95ddbc94 100644 --- a/poky/meta/recipes-core/musl/musl-obstack.bb +++ b/poky/meta/recipes-core/musl/musl-obstack.bb @@ -8,8 +8,8 @@ LICENSE = "GPL-2.0-or-later" LIC_FILES_CHKSUM = "file://COPYING;md5=3d23e4eef8243efcaab6f0a438078932" SECTION = "libs" -PV = "1.1" -SRCREV = "d2ad66b0df44a4b784956f7f7f2717131ddc05f4" +PV = "1.2" +SRCREV = "466f773fe171da427e28be79b9cf48ccfddfb7e2" SRC_URI = "git://github.com/pullmoll/musl-obstack;branch=master;protocol=https" UPSTREAM_CHECK_COMMITS = "1" diff --git a/poky/meta/recipes-core/ncurses/ncurses.inc b/poky/meta/recipes-core/ncurses/ncurses.inc index 7a7c7dd227..367f3b19f4 100644 --- a/poky/meta/recipes-core/ncurses/ncurses.inc +++ b/poky/meta/recipes-core/ncurses/ncurses.inc @@ -2,7 +2,7 @@ SUMMARY = "The New Curses library" DESCRIPTION = "SVr4 and XSI-Curses compatible curses library and terminfo tools including tic, infocmp, captoinfo. Supports color, multiple highlights, forms-drawing characters, and automatic recognition of keypad and function-key sequences. Extensions include resizable windows and mouse support on both xterm and Linux console using the gpm library." HOMEPAGE = "http://www.gnu.org/software/ncurses/ncurses.html" LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=9529289636145d1bf093c96af067695a;endline=27" +LIC_FILES_CHKSUM = "file://COPYING;md5=c5a4600fdef86384c41ca33ecc70a4b8;endline=27" SECTION = "libs" DEPENDS = "ncurses-native" DEPENDS:class-native = "" @@ -13,7 +13,7 @@ BINCONFIG = "${bindir}/ncurses5-config ${bindir}/ncursesw5-config \ inherit autotools binconfig-disabled multilib_header pkgconfig # Upstream has useful patches at times at ftp://invisible-island.net/ncurses/ -SRC_URI = "git://salsa.debian.org/debian/ncurses.git;protocol=https;branch=master" +SRC_URI = "git://github.com/mirror/ncurses.git;protocol=https;branch=master" EXTRA_AUTORECONF = "-I m4" diff --git a/poky/meta/recipes-core/ncurses/ncurses_6.3.bb b/poky/meta/recipes-core/ncurses/ncurses_6.3+20220423.bb index f0256dad22..9fba5b584b 100644 --- a/poky/meta/recipes-core/ncurses/ncurses_6.3.bb +++ b/poky/meta/recipes-core/ncurses/ncurses_6.3+20220423.bb @@ -5,10 +5,11 @@ SRC_URI += "file://0001-tic-hang.patch \ file://0003-gen-pkgconfig.in-Do-not-include-LDFLAGS-in-generated.patch \ " # commit id corresponds to the revision in package version -SRCREV = "51d0fd9cc3edb975f04224f29f777f8f448e8ced" +SRCREV = "20db1fb41ec91cd8a1f528e770362092c5403378" S = "${WORKDIR}/git" EXTRA_OECONF += "--with-abi-version=5" UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)$" +UPSTREAM_VERSION_UNKNOWN = "1" # This is needed when using patchlevel versions like 6.1+20181013 -#CVE_VERSION = "${@d.getVar("PV").split('+')[0]}.${@d.getVar("PV").split('+')[1]}" +CVE_VERSION = "${@d.getVar("PV").split('+')[0]}.${@d.getVar("PV").split('+')[1]}" diff --git a/poky/meta/recipes-core/newlib/newlib_4.2.0.bb b/poky/meta/recipes-core/newlib/newlib_4.2.0.bb index 0542c596ba..fb922d65d1 100644 --- a/poky/meta/recipes-core/newlib/newlib_4.2.0.bb +++ b/poky/meta/recipes-core/newlib/newlib_4.2.0.bb @@ -17,4 +17,4 @@ do_install:append() { } # No rpm package is actually created but -dev depends on it, avoid dnf error -RDEPENDS:${PN}-dev:libc-newlib = "" +DEV_PKG_DEPENDENCY:libc-newlib = "" diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-core-ssh-dropbear.bb b/poky/meta/recipes-core/packagegroups/packagegroup-core-ssh-dropbear.bb index 4f844ad925..d06c6a5609 100644 --- a/poky/meta/recipes-core/packagegroups/packagegroup-core-ssh-dropbear.bb +++ b/poky/meta/recipes-core/packagegroups/packagegroup-core-ssh-dropbear.bb @@ -4,3 +4,4 @@ PR = "r1" inherit packagegroup RDEPENDS:${PN} = "dropbear" +RRECOMMENDS:${PN} = "openssh-sftp-server" diff --git a/poky/meta/recipes-core/systemd/systemd-systemctl/systemctl b/poky/meta/recipes-core/systemd/systemd-systemctl/systemctl index 6324319a45..6d19666d82 100755 --- a/poky/meta/recipes-core/systemd/systemd-systemctl/systemctl +++ b/poky/meta/recipes-core/systemd/systemd-systemctl/systemctl @@ -11,6 +11,7 @@ import re import sys from collections import namedtuple +from itertools import chain from pathlib import Path version = 1.0 @@ -25,12 +26,16 @@ locations = list() class SystemdFile(): """Class representing a single systemd configuration file""" - def __init__(self, root, path): + def __init__(self, root, path, instance_unit_name): self.sections = dict() self._parse(root, path) dirname = os.path.basename(path.name) + ".d" for location in locations: - for path2 in sorted((root / location / "system" / dirname).glob("*.conf")): + files = (root / location / "system" / dirname).glob("*.conf") + if instance_unit_name: + inst_dirname = instance_unit_name + ".d" + files = chain(files, (root / location / "system" / inst_dirname).glob("*.conf")) + for path2 in sorted(files): self._parse(root, path2) def _parse(self, root, path): @@ -195,8 +200,11 @@ class SystemdUnit(): # if we're enabling an instance, first extract the actual instance # then figure out what the template unit is template = re.match(r"[^@]+@(?P<instance>[^\.]*)\.", self.unit) + instance_unit_name = None if template: instance = template.group('instance') + if instance != "": + instance_unit_name = self.unit unit = re.sub(r"@[^\.]*\.", "@.", self.unit, 1) else: instance = None @@ -208,7 +216,7 @@ class SystemdUnit(): # ignore aliases return - config = SystemdFile(self.root, path) + config = SystemdFile(self.root, path, instance_unit_name) if instance == "": try: default_instance = config.get('Install', 'DefaultInstance')[0] diff --git a/poky/meta/recipes-core/systemd/systemd/0001-Add-sys-file.h-for-LOCK_.patch b/poky/meta/recipes-core/systemd/systemd/0001-Add-sys-file.h-for-LOCK_.patch new file mode 100644 index 0000000000..08e8af0a5b --- /dev/null +++ b/poky/meta/recipes-core/systemd/systemd/0001-Add-sys-file.h-for-LOCK_.patch @@ -0,0 +1,78 @@ +From c193380a08f5adea1fd514e0a20abd1d7b50d08c Mon Sep 17 00:00:00 2001 +From: Pavel Zhukov <pavel.zhukov@huawei.com> +Date: Mon, 20 Jun 2022 11:24:52 +0200 +Subject: [PATCH] Add sys/file.h for LOCK_ + +Upstream-Status: Backport [19df770fe14da601d4e54e1592c11c10ffe4df5a] + +Signed-off-by: Pavel Zhukov <pavel.zhukov@huawei.com> + +--- + src/core/namespace.c | 1 + + src/dissect/dissect.c | 1 + + src/shared/dissect-image.c | 2 ++ + src/sysext/sysext.c | 1 + + src/test/test-loop-block.c | 1 + + 5 files changed, 6 insertions(+) + +diff --git a/src/core/namespace.c b/src/core/namespace.c +index 926aa96174..39f9e21c93 100644 +--- a/src/core/namespace.c ++++ b/src/core/namespace.c +@@ -7,6 +7,7 @@ + #include <sys/mount.h> + #include <unistd.h> + #include <linux/fs.h> ++#include <sys/file.h> + + #include "alloc-util.h" + #include "base-filesystem.h" +diff --git a/src/dissect/dissect.c b/src/dissect/dissect.c +index bd94a755db..a0d2a6f287 100644 +--- a/src/dissect/dissect.c ++++ b/src/dissect/dissect.c +@@ -6,6 +6,7 @@ + #include <stdio.h> + #include <sys/ioctl.h> + #include <sys/mount.h> ++#include <sys/file.h> + + #include "architecture.h" + #include "chase-symlinks.h" +diff --git a/src/shared/dissect-image.c b/src/shared/dissect-image.c +index 1ab88839aa..a9e3fe4b44 100644 +--- a/src/shared/dissect-image.c ++++ b/src/shared/dissect-image.c +@@ -4,6 +4,8 @@ + #include <valgrind/memcheck.h> + #endif + ++#include <sys/file.h> ++ + #include <linux/blkpg.h> + #include <linux/dm-ioctl.h> + #include <linux/loop.h> +diff --git a/src/sysext/sysext.c b/src/sysext/sysext.c +index 364af195e0..85686c0fab 100644 +--- a/src/sysext/sysext.c ++++ b/src/sysext/sysext.c +@@ -5,6 +5,7 @@ + #include <linux/loop.h> + #include <sys/mount.h> + #include <unistd.h> ++#include <sys/file.h> + + #include "capability-util.h" + #include "chase-symlinks.h" +diff --git a/src/test/test-loop-block.c b/src/test/test-loop-block.c +index d1793222f0..6886c4cd31 100644 +--- a/src/test/test-loop-block.c ++++ b/src/test/test-loop-block.c +@@ -3,6 +3,7 @@ + #include <fcntl.h> + #include <linux/loop.h> + #include <pthread.h> ++#include <sys/file.h> + + #include "alloc-util.h" + #include "dissect-image.h" diff --git a/poky/meta/recipes-core/systemd/systemd/0001-Adjust-for-musl-headers.patch b/poky/meta/recipes-core/systemd/systemd/0001-Adjust-for-musl-headers.patch index c42c66786f..bce1ca4563 100644 --- a/poky/meta/recipes-core/systemd/systemd/0001-Adjust-for-musl-headers.patch +++ b/poky/meta/recipes-core/systemd/systemd/0001-Adjust-for-musl-headers.patch @@ -37,16 +37,18 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> src/network/networkd-dhcp-prefix-delegation.c | 4 ++-- src/network/networkd-dhcp-server.c | 2 +- src/network/networkd-dhcp4.c | 2 +- + src/network/networkd-ipv6ll.c | 2 +- src/network/networkd-link.c | 2 +- + src/network/networkd-ndisc.c | 2 +- src/network/networkd-route.c | 8 ++++---- src/network/networkd-setlink.c | 2 +- src/shared/linux/ethtool.h | 3 ++- src/shared/netif-util.c | 2 +- src/udev/udev-builtin-net_id.c | 2 +- - 35 files changed, 42 insertions(+), 40 deletions(-) + 37 files changed, 44 insertions(+), 42 deletions(-) diff --git a/src/libsystemd-network/sd-dhcp6-client.c b/src/libsystemd-network/sd-dhcp6-client.c -index 84bc739bba..ff8cb6bf9d 100644 +index b346a50d78..7884d4c1cd 100644 --- a/src/libsystemd-network/sd-dhcp6-client.c +++ b/src/libsystemd-network/sd-dhcp6-client.c @@ -5,7 +5,7 @@ @@ -433,8 +435,21 @@ index cb9c428ae9..a35d58f3f1 100644 #include "alloc-util.h" #include "dhcp-client-internal.h" +diff --git a/src/network/networkd-ipv6ll.c b/src/network/networkd-ipv6ll.c +index dc09171afe..5b93ef3dd4 100644 +--- a/src/network/networkd-ipv6ll.c ++++ b/src/network/networkd-ipv6ll.c +@@ -1,7 +1,7 @@ + /* SPDX-License-Identifier: LGPL-2.1-or-later */ + + #include <linux/if.h> +-#include <linux/if_arp.h> ++//#include <linux/if_arp.h> + + #include "in-addr-util.h" + #include "networkd-address.h" diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c -index b62a154828..75949e6094 100644 +index 63679505f7..825ea76ff2 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -3,7 +3,7 @@ @@ -446,8 +461,21 @@ index b62a154828..75949e6094 100644 #include <linux/if_link.h> #include <linux/netdevice.h> #include <sys/socket.h> +diff --git a/src/network/networkd-ndisc.c b/src/network/networkd-ndisc.c +index efe407fedb..46a086cdf5 100644 +--- a/src/network/networkd-ndisc.c ++++ b/src/network/networkd-ndisc.c +@@ -6,7 +6,7 @@ + #include <arpa/inet.h> + #include <netinet/icmp6.h> + #include <linux/if.h> +-#include <linux/if_arp.h> ++//#include <linux/if_arp.h> + + #include "sd-ndisc.h" + diff --git a/src/network/networkd-route.c b/src/network/networkd-route.c -index ee7a535075..ce6ed64133 100644 +index 934fed3b7f..fdb89313dd 100644 --- a/src/network/networkd-route.c +++ b/src/network/networkd-route.c @@ -1,9 +1,5 @@ @@ -485,12 +513,12 @@ index e00cc1e589..e392c7e1a2 100644 #include "missing_network.h" diff --git a/src/shared/linux/ethtool.h b/src/shared/linux/ethtool.h -index 974d4292e7..fe9b8a9e07 100644 +index cf20b6dba5..c3a46dda11 100644 --- a/src/shared/linux/ethtool.h +++ b/src/shared/linux/ethtool.h @@ -16,7 +16,8 @@ - #include <linux/kernel.h> + #include <linux/const.h> #include <linux/types.h> -#include <linux/if_ether.h> +#include <netinet/if_ether.h> @@ -499,19 +527,20 @@ index 974d4292e7..fe9b8a9e07 100644 #ifndef __KERNEL__ #include <limits.h> /* for INT_MAX */ diff --git a/src/shared/netif-util.c b/src/shared/netif-util.c -index 603d4de109..7e3531808a 100644 +index f56c5646c1..5af28ff119 100644 --- a/src/shared/netif-util.c +++ b/src/shared/netif-util.c -@@ -1,6 +1,6 @@ +@@ -1,7 +1,7 @@ /* SPDX-License-Identifier: LGPL-2.1-or-later */ + #include <linux/if.h> -#include <linux/if_arp.h> +//#include <linux/if_arp.h> #include "arphrd-util.h" #include "device-util.h" diff --git a/src/udev/udev-builtin-net_id.c b/src/udev/udev-builtin-net_id.c -index 65e003eb15..0b3dc04be0 100644 +index f2ea2a7cd5..fe60a0744d 100644 --- a/src/udev/udev-builtin-net_id.c +++ b/src/udev/udev-builtin-net_id.c @@ -18,7 +18,7 @@ diff --git a/poky/meta/recipes-core/systemd/systemd/0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch b/poky/meta/recipes-core/systemd/systemd/0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch index 330ad492ba..a19a025559 100644 --- a/poky/meta/recipes-core/systemd/systemd/0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch +++ b/poky/meta/recipes-core/systemd/systemd/0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch @@ -39,7 +39,7 @@ index a9bf28f6d9..11d3644168 100644 ['proc-sys-fs-binfmt_misc.mount', 'ENABLE_BINFMT'], ['reboot.target', '', 'ctrl-alt-del.target' + (with_runlevels ? ' runlevel6.target' : '')], -@@ -184,8 +183,7 @@ in_units = [ +@@ -186,8 +185,7 @@ in_units = [ ['rescue.service', ''], ['serial-getty@.service', ''], ['systemd-backlight@.service', 'ENABLE_BACKLIGHT'], diff --git a/poky/meta/recipes-core/systemd/systemd/0001-pass-correct-parameters-to-getdents64.patch b/poky/meta/recipes-core/systemd/systemd/0001-pass-correct-parameters-to-getdents64.patch index 9ebff9825a..144314c409 100644 --- a/poky/meta/recipes-core/systemd/systemd/0001-pass-correct-parameters-to-getdents64.patch +++ b/poky/meta/recipes-core/systemd/systemd/0001-pass-correct-parameters-to-getdents64.patch @@ -15,10 +15,10 @@ Fixes Upstream-Status: Inappropriate [musl specific] Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Jiaqing Zhao <jiaqing.zhao@linux.intel.com> + --- src/basic/recurse-dir.c | 2 +- - src/basic/stat-util.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) + 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/basic/recurse-dir.c b/src/basic/recurse-dir.c index efa1797b7b..03ff10ebe9 100644 @@ -33,19 +33,3 @@ index efa1797b7b..03ff10ebe9 100644 if (n < 0) return -errno; if (n == 0) -diff --git a/src/basic/stat-util.c b/src/basic/stat-util.c -index c2269844f8..7cd6c7fa42 100644 ---- a/src/basic/stat-util.c -+++ b/src/basic/stat-util.c -@@ -99,7 +99,7 @@ int dir_is_empty_at(int dir_fd, const char *path) { - return fd; - } - -- n = getdents64(fd, &buffer, sizeof(buffer)); -+ n = getdents64(fd, (struct dirent *)&buffer, sizeof(buffer)); - if (n < 0) - return -errno; - --- -2.34.1 - diff --git a/poky/meta/recipes-core/systemd/systemd/0002-Add-sys-stat.h-for-S_IFDIR.patch b/poky/meta/recipes-core/systemd/systemd/0002-Add-sys-stat.h-for-S_IFDIR.patch index 8cf0546450..58767c7c35 100644 --- a/poky/meta/recipes-core/systemd/systemd/0002-Add-sys-stat.h-for-S_IFDIR.patch +++ b/poky/meta/recipes-core/systemd/systemd/0002-Add-sys-stat.h-for-S_IFDIR.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add sys/stat.h for S_IFDIR ../git/src/shared/mkdir-label.c:13:61: error: use of undeclared identifier 'S_IFDIR' r = mac_selinux_create_file_prepare_at(dirfd, path, S_IFDIR); -Upstream-Status: Submitted [https://github.com/systemd/systemd/pull/23441] +Upstream-Status: Backport [29b7114c5d9624002aa7c17748d960cd1e45362d] Signed-off-by: Khem Raj <raj.khem@gmail.com> --- @@ -14,10 +14,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> 1 file changed, 1 insertion(+) diff --git a/src/shared/mkdir-label.c b/src/shared/mkdir-label.c -index d36a6466d7..63b764cd83 100644 +index 5b1ac5d1e0..fa5802b894 100644 --- a/src/shared/mkdir-label.c +++ b/src/shared/mkdir-label.c -@@ -4,6 +4,7 @@ +@@ -6,6 +6,7 @@ #include "selinux-util.h" #include "smack-util.h" #include "user-util.h" diff --git a/poky/meta/recipes-core/systemd/systemd/0003-implment-systemd-sysv-install-for-OE.patch b/poky/meta/recipes-core/systemd/systemd/0003-implment-systemd-sysv-install-for-OE.patch index c6204786b3..4556ab5da6 100644 --- a/poky/meta/recipes-core/systemd/systemd/0003-implment-systemd-sysv-install-for-OE.patch +++ b/poky/meta/recipes-core/systemd/systemd/0003-implment-systemd-sysv-install-for-OE.patch @@ -15,10 +15,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com> 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/systemctl/systemd-sysv-install.SKELETON b/src/systemctl/systemd-sysv-install.SKELETON -index 8c16cf99913f..9f078a121469 100755 +index a2a0059fef..7f95791d9b 100755 --- a/src/systemctl/systemd-sysv-install.SKELETON +++ b/src/systemctl/systemd-sysv-install.SKELETON -@@ -32,17 +32,17 @@ case "$1" in +@@ -34,17 +34,17 @@ case "$1" in enable) # call the command to enable SysV init script $NAME here # (consider optional $ROOT) diff --git a/poky/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch b/poky/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch index 1bd538b0c0..0c85f2bcbe 100644 --- a/poky/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch +++ b/poky/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch @@ -23,10 +23,10 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com> create mode 100644 src/basic/parse-printf-format.h diff --git a/meson.build b/meson.build -index cb9936ee8b..ae53345260 100644 +index 36cbfa4893..30b5305b89 100644 --- a/meson.build +++ b/meson.build -@@ -686,6 +686,7 @@ endif +@@ -694,6 +694,7 @@ endif foreach header : ['crypt.h', 'linux/memfd.h', 'linux/vm_sockets.h', @@ -35,10 +35,10 @@ index cb9936ee8b..ae53345260 100644 'valgrind/memcheck.h', 'valgrind/valgrind.h', diff --git a/src/basic/meson.build b/src/basic/meson.build -index 49e1e7f43e..4131494bfa 100644 +index 9b89fdcdea..0b1ef91016 100644 --- a/src/basic/meson.build +++ b/src/basic/meson.build -@@ -334,6 +334,11 @@ endforeach +@@ -336,6 +336,11 @@ endforeach basic_sources += generated_gperf_headers diff --git a/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch b/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch index 680930ca3c..9e02666698 100644 --- a/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch +++ b/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch @@ -73,10 +73,10 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com> 52 files changed, 63 insertions(+) diff --git a/meson.build b/meson.build -index cb9936ee8b..7ab201c6d9 100644 +index 30b5305b89..0189ef8ce6 100644 --- a/meson.build +++ b/meson.build -@@ -507,6 +507,7 @@ foreach ident : ['secure_getenv', '__secure_getenv'] +@@ -512,6 +512,7 @@ foreach ident : ['secure_getenv', '__secure_getenv'] endforeach foreach ident : [ @@ -85,19 +85,19 @@ index cb9936ee8b..7ab201c6d9 100644 ['gettid', '''#include <sys/types.h> #include <unistd.h>'''], diff --git a/src/backlight/backlight.c b/src/backlight/backlight.c -index 5a3095cbba..22cfa4d526 100644 +index a4e5d77f6c..fc12da4c53 100644 --- a/src/backlight/backlight.c +++ b/src/backlight/backlight.c -@@ -19,6 +19,7 @@ - #include "string-util.h" +@@ -20,6 +20,7 @@ #include "strv.h" + #include "terminal-util.h" #include "util.h" +#include "missing_stdlib.h" static int help(void) { _cleanup_free_ char *link = NULL; diff --git a/src/basic/cgroup-util.c b/src/basic/cgroup-util.c -index a626ecf2e2..f7dc6c8421 100644 +index b03cc70e2e..f4615ffce1 100644 --- a/src/basic/cgroup-util.c +++ b/src/basic/cgroup-util.c @@ -37,6 +37,7 @@ @@ -249,10 +249,10 @@ index b659d6905d..020112be24 100644 static clockid_t map_clock_id(clockid_t c) { diff --git a/src/boot/bless-boot.c b/src/boot/bless-boot.c -index 9e4b0d1f72..d640316ff7 100644 +index d9c901d73b..79a035274c 100644 --- a/src/boot/bless-boot.c +++ b/src/boot/bless-boot.c -@@ -19,6 +19,7 @@ +@@ -22,6 +22,7 @@ #include "util.h" #include "verbs.h" #include "virt.h" @@ -297,10 +297,10 @@ index 32a2ec0ff9..36be2511e4 100644 int bus_property_get_triggered_unit( sd_bus *bus, diff --git a/src/core/execute.c b/src/core/execute.c -index 0b20d386d3..fccfb9268c 100644 +index 2762b10287..a8aeec7f6e 100644 --- a/src/core/execute.c +++ b/src/core/execute.c -@@ -102,6 +102,7 @@ +@@ -103,6 +103,7 @@ #include "unit-serialize.h" #include "user-util.h" #include "utmp-wtmp.h" @@ -309,19 +309,19 @@ index 0b20d386d3..fccfb9268c 100644 #define IDLE_TIMEOUT_USEC (5*USEC_PER_SEC) #define IDLE_TIMEOUT2_USEC (1*USEC_PER_SEC) diff --git a/src/core/kmod-setup.c b/src/core/kmod-setup.c -index d054668b8e..9b4caa7651 100644 +index f4488dd692..1d331a7ee2 100644 --- a/src/core/kmod-setup.c +++ b/src/core/kmod-setup.c -@@ -10,6 +10,7 @@ - #include "macro.h" +@@ -11,6 +11,7 @@ #include "recurse-dir.h" #include "string-util.h" + #include "virt.h" +#include "missing_stdlib.h" #if HAVE_KMOD #include "module-util.h" diff --git a/src/core/service.c b/src/core/service.c -index 87f0d34c8c..ccda3feb29 100644 +index 9f7af9dffb..3ec5e30c8b 100644 --- a/src/core/service.c +++ b/src/core/service.c @@ -42,6 +42,7 @@ @@ -330,13 +330,13 @@ index 87f0d34c8c..ccda3feb29 100644 #include "util.h" +#include "missing_stdlib.h" - static const UnitActiveState state_translation_table[_SERVICE_STATE_MAX] = { - [SERVICE_DEAD] = UNIT_INACTIVE, + #define service_spawn(...) service_spawn_internal(__func__, __VA_ARGS__) + diff --git a/src/coredump/coredump-vacuum.c b/src/coredump/coredump-vacuum.c -index dcf9cc03cd..8f8d992ec2 100644 +index c6e201ecf2..ab034475e2 100644 --- a/src/coredump/coredump-vacuum.c +++ b/src/coredump/coredump-vacuum.c -@@ -16,6 +16,7 @@ +@@ -17,6 +17,7 @@ #include "string-util.h" #include "time-util.h" #include "user-util.h" @@ -369,10 +369,10 @@ index 3e3646e45f..6a8fc60f6d 100644 #define PRIV_KEY_FILE CERTIFICATE_ROOT "/private/journal-remote.pem" #define CERT_FILE CERTIFICATE_ROOT "/certs/journal-remote.pem" diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c -index 3c4a7c0a7a..6a792404f2 100644 +index cff34fd585..a5003e47e9 100644 --- a/src/journal/journalctl.c +++ b/src/journal/journalctl.c -@@ -73,6 +73,7 @@ +@@ -74,6 +74,7 @@ #include "unit-name.h" #include "user-util.h" #include "varlink.h" @@ -393,11 +393,11 @@ index 96529b422b..ddb5e9c698 100644 static int message_append_basic(sd_bus_message *m, char type, const void *p, const void **stored); diff --git a/src/libsystemd/sd-bus/bus-objects.c b/src/libsystemd/sd-bus/bus-objects.c -index 28d8336718..5d3ce88a53 100644 +index 909dfe4d3a..254b7ce866 100644 --- a/src/libsystemd/sd-bus/bus-objects.c +++ b/src/libsystemd/sd-bus/bus-objects.c -@@ -12,6 +12,7 @@ - #include "set.h" +@@ -11,6 +11,7 @@ + #include "missing_capability.h" #include "string-util.h" #include "strv.h" +#include "missing_stdlib.h" @@ -633,11 +633,11 @@ index f75ef62d2d..530001a821 100644 static pid_t pager_pid = 0; diff --git a/src/shared/uid-range.c b/src/shared/uid-range.c -index 2c07a1b7a8..2a9d6ef4ab 100644 +index 1b4396a34c..c2f72b185f 100644 --- a/src/shared/uid-range.c +++ b/src/shared/uid-range.c -@@ -9,6 +9,7 @@ - #include "sort-util.h" +@@ -14,6 +14,7 @@ + #include "stat-util.h" #include "uid-range.h" #include "user-util.h" +#include "missing_stdlib.h" @@ -704,6 +704,3 @@ index 1a384d6b38..0089833e3f 100644 #define RULES_DIRS (const char* const*) CONF_PATHS_STRV("udev/rules.d") --- -2.34.1 - diff --git a/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch b/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch index b84fbaa67e..eeaaac1b9a 100644 --- a/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch +++ b/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch @@ -131,7 +131,7 @@ index fcab51c208..fdef1807ae 100644 /* This reads all files listed in /etc/tmpfiles.d/?*.conf and creates * them in the file system. This is intended to be used to create * properly owned directories beneath /tmp, /var/tmp, /run, which are -@@ -1961,7 +1967,9 @@ finish: +@@ -1934,7 +1940,9 @@ finish: static int glob_item(Item *i, action_t action) { _cleanup_globfree_ glob_t g = { @@ -140,8 +140,8 @@ index fcab51c208..fdef1807ae 100644 +#endif }; int r = 0, k; - char **fn; -@@ -1981,7 +1989,9 @@ static int glob_item(Item *i, action_t action) { + +@@ -1953,7 +1961,9 @@ static int glob_item(Item *i, action_t action) { static int glob_item_recursively(Item *i, fdaction_t action) { _cleanup_globfree_ glob_t g = { @@ -150,4 +150,3 @@ index fcab51c208..fdef1807ae 100644 +#endif }; int r = 0, k; - char **fn; diff --git a/poky/meta/recipes-core/systemd/systemd/0008-add-missing-FTW_-macros-for-musl.patch b/poky/meta/recipes-core/systemd/systemd/0008-add-missing-FTW_-macros-for-musl.patch index 4cce9a3fe6..d1191d7e8e 100644 --- a/poky/meta/recipes-core/systemd/systemd/0008-add-missing-FTW_-macros-for-musl.patch +++ b/poky/meta/recipes-core/systemd/systemd/0008-add-missing-FTW_-macros-for-musl.patch @@ -7,59 +7,27 @@ This is to avoid build failures like below for musl. locale-util.c:296:24: error: 'FTW_STOP' undeclared -Revisit this when upgrading to 251+ since most of these defines are not -needed anymore except FTW_CONTINUE - Upstream-Status: Inappropriate [musl specific] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> --- - src/basic/missing_type.h | 20 ++++++++++++++++++++ - src/shared/mount-setup.c | 1 + - src/test/test-recurse-dir.c | 1 + - 3 files changed, 22 insertions(+) + src/basic/missing_type.h | 4 ++++ + src/test/test-recurse-dir.c | 1 + + 2 files changed, 5 insertions(+) diff --git a/src/basic/missing_type.h b/src/basic/missing_type.h -index aeaf6ad5ec..3df1084ef2 100644 +index 6c0456349d..73a5b90e3c 100644 --- a/src/basic/missing_type.h +++ b/src/basic/missing_type.h -@@ -19,3 +19,23 @@ typedef int (*comparison_fn_t)(const void *, const void *); - #define __COMPAR_FN_T - typedef int (*__compar_fn_t)(const void *, const void *); +@@ -14,3 +14,7 @@ + #ifndef __GLIBC__ + typedef int (*comparison_fn_t)(const void *, const void *); #endif + -+#ifndef FTW_ACTIONRETVAL -+#define FTW_ACTIONRETVAL 16 -+#endif -+ +#ifndef FTW_CONTINUE +#define FTW_CONTINUE 0 +#endif -+ -+#ifndef FTW_STOP -+#define FTW_STOP 1 -+#endif -+ -+#ifndef FTW_SKIP_SUBTREE -+#define FTW_SKIP_SUBTREE 2 -+#endif -+ -+#ifndef FTW_SKIP_SIBLINGS -+#define FTW_SKIP_SIBLINGS 3 -+#endif -diff --git a/src/shared/mount-setup.c b/src/shared/mount-setup.c -index 7917968497..cc3d5baaab 100644 ---- a/src/shared/mount-setup.c -+++ b/src/shared/mount-setup.c -@@ -32,6 +32,7 @@ - #include "strv.h" - #include "user-util.h" - #include "virt.h" -+#include "missing_type.h" - - typedef enum MountMode { - MNT_NONE = 0, diff --git a/src/test/test-recurse-dir.c b/src/test/test-recurse-dir.c index 2c2120b136..bc60a178a2 100644 --- a/src/test/test-recurse-dir.c diff --git a/poky/meta/recipes-core/systemd/systemd/0009-fix-missing-of-__register_atfork-for-non-glibc-build.patch b/poky/meta/recipes-core/systemd/systemd/0009-fix-missing-of-__register_atfork-for-non-glibc-build.patch deleted file mode 100644 index e7b7269f95..0000000000 --- a/poky/meta/recipes-core/systemd/systemd/0009-fix-missing-of-__register_atfork-for-non-glibc-build.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 3ca0920429f7eaf8c59f9ac8afd30a43b83d95ed Mon Sep 17 00:00:00 2001 -From: Chen Qi <Qi.Chen@windriver.com> -Date: Mon, 25 Feb 2019 15:03:47 +0800 -Subject: [PATCH] fix missing of __register_atfork for non-glibc builds - -Upstream-Status: Inappropriate [musl specific] - -Drop this when upgrading to 251+, systemd does not use -__register_atfork anymore - -Signed-off-by: Chen Qi <Qi.Chen@windriver.com> - ---- - src/basic/process-util.c | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/src/basic/process-util.c b/src/basic/process-util.c -index c971852158..df6e85b1fc 100644 ---- a/src/basic/process-util.c -+++ b/src/basic/process-util.c -@@ -18,6 +18,9 @@ - #if HAVE_VALGRIND_VALGRIND_H - #include <valgrind/valgrind.h> - #endif -+#ifndef __GLIBC__ -+#include <pthread.h> -+#endif - - #include "alloc-util.h" - #include "architecture.h" -@@ -1161,11 +1164,15 @@ void reset_cached_pid(void) { - cached_pid = CACHED_PID_UNSET; - } - -+#ifdef __GLIBC__ - /* We use glibc __register_atfork() + __dso_handle directly here, as they are not included in the glibc - * headers. __register_atfork() is mostly equivalent to pthread_atfork(), but doesn't require us to link against - * libpthread, as it is part of glibc anyway. */ - extern int __register_atfork(void (*prepare) (void), void (*parent) (void), void (*child) (void), void *dso_handle); - extern void* __dso_handle _weak_; -+#else -+#define __register_atfork(prepare,parent,child,dso) pthread_atfork(prepare,parent,child) -+#endif - - pid_t getpid_cached(void) { - static bool installed = false; diff --git a/poky/meta/recipes-core/systemd/systemd/0011-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch b/poky/meta/recipes-core/systemd/systemd/0011-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch index 7e4587cc23..1074866f86 100644 --- a/poky/meta/recipes-core/systemd/systemd/0011-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch +++ b/poky/meta/recipes-core/systemd/systemd/0011-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch @@ -18,8 +18,8 @@ index f349852553..602772227e 100644 +++ b/src/test/test-sizeof.c @@ -55,8 +55,10 @@ int main(void) { info(unsigned); - info(long unsigned); - info(long long unsigned); + info(unsigned long); + info(unsigned long long); +#ifdef __GLIBC__ info(__syscall_ulong_t); info(__syscall_slong_t); diff --git a/poky/meta/recipes-core/systemd/systemd/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch b/poky/meta/recipes-core/systemd/systemd/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch index 6eecd3197c..e1a2512ec3 100644 --- a/poky/meta/recipes-core/systemd/systemd/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch +++ b/poky/meta/recipes-core/systemd/systemd/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch @@ -65,10 +65,10 @@ index 0bbb3f6298..3dc494dbfb 100644 int touch_file(const char *path, bool parents, usec_t stamp, uid_t uid, gid_t gid, mode_t mode); int touch(const char *path); diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c -index 5f5328c8cf..d396bc99fe 100644 +index 6dacc1d20a..909a6818f6 100644 --- a/src/shared/base-filesystem.c +++ b/src/shared/base-filesystem.c -@@ -117,7 +117,7 @@ int base_filesystem_create(const char *root, uid_t uid, gid_t gid) { +@@ -131,7 +131,7 @@ int base_filesystem_create(const char *root, uid_t uid, gid_t gid) { return log_error_errno(errno, "Failed to open root file system: %m"); for (size_t i = 0; i < ELEMENTSOF(table); i++) { @@ -77,7 +77,7 @@ index 5f5328c8cf..d396bc99fe 100644 continue; if (table[i].target) { -@@ -125,7 +125,7 @@ int base_filesystem_create(const char *root, uid_t uid, gid_t gid) { +@@ -139,7 +139,7 @@ int base_filesystem_create(const char *root, uid_t uid, gid_t gid) { /* check if one of the targets exists */ NULSTR_FOREACH(s, table[i].target) { @@ -86,7 +86,7 @@ index 5f5328c8cf..d396bc99fe 100644 continue; /* check if a specific file exists at the target path */ -@@ -136,7 +136,7 @@ int base_filesystem_create(const char *root, uid_t uid, gid_t gid) { +@@ -150,7 +150,7 @@ int base_filesystem_create(const char *root, uid_t uid, gid_t gid) { if (!p) return log_oom(); diff --git a/poky/meta/recipes-core/systemd/systemd/0014-Do-not-disable-buffering-when-writing-to-oom_score_a.patch b/poky/meta/recipes-core/systemd/systemd/0014-Do-not-disable-buffering-when-writing-to-oom_score_a.patch index 015347cb6a..e5e592a837 100644 --- a/poky/meta/recipes-core/systemd/systemd/0014-Do-not-disable-buffering-when-writing-to-oom_score_a.patch +++ b/poky/meta/recipes-core/systemd/systemd/0014-Do-not-disable-buffering-when-writing-to-oom_score_a.patch @@ -25,10 +25,10 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com> 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/basic/process-util.c b/src/basic/process-util.c -index df6e85b1fc..635dbb5d26 100644 +index 6980e0c4f6..45ec26ea45 100644 --- a/src/basic/process-util.c +++ b/src/basic/process-util.c -@@ -1489,7 +1489,7 @@ int set_oom_score_adjust(int value) { +@@ -1460,7 +1460,7 @@ int set_oom_score_adjust(int value) { xsprintf(t, "%i", value); return write_string_file("/proc/self/oom_score_adj", t, diff --git a/poky/meta/recipes-core/systemd/systemd/0021-test-json.c-define-M_PIl.patch b/poky/meta/recipes-core/systemd/systemd/0021-test-json.c-define-M_PIl.patch deleted file mode 100644 index 82a01f732e..0000000000 --- a/poky/meta/recipes-core/systemd/systemd/0021-test-json.c-define-M_PIl.patch +++ /dev/null @@ -1,35 +0,0 @@ -From e10a73de254b570bbc29b26423dbb86b4265bb05 Mon Sep 17 00:00:00 2001 -From: Chen Qi <Qi.Chen@windriver.com> -Date: Mon, 25 Feb 2019 16:53:06 +0800 -Subject: [PATCH] test-json.c: define M_PIl - -Fix the following compile failure: -src/test/test-json.c:305:50: error: 'M_PIl' undeclared (first use in this function); did you mean 'M_PI'? - -Upstream-Status: Inappropriate [musl specific] - -This is fixed upstream where systemd no longer needs M_PIl so it could -be dropped when upgrading to 251+ see -https://github.com/systemd/systemd/commit/f9a1fd2a3b2d8212ba84ef1c3b55657ced34475e - -Signed-off-by: Chen Qi <Qi.Chen@windriver.com> - ---- - src/test/test-json.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/src/test/test-json.c b/src/test/test-json.c -index b385edc269..5e5830238c 100644 ---- a/src/test/test-json.c -+++ b/src/test/test-json.c -@@ -14,6 +14,10 @@ - #include "tests.h" - #include "util.h" - -+#ifndef M_PIl -+#define M_PIl 3.141592653589793238462643383279502884L -+#endif -+ - static void test_tokenizer_one(const char *data, ...) { - unsigned line = 0, column = 0; - void *state = NULL; diff --git a/poky/meta/recipes-core/systemd/systemd/0022-do-not-disable-buffer-in-writing-files.patch b/poky/meta/recipes-core/systemd/systemd/0022-do-not-disable-buffer-in-writing-files.patch index 4dd6ff6e2e..00131de7d0 100644 --- a/poky/meta/recipes-core/systemd/systemd/0022-do-not-disable-buffer-in-writing-files.patch +++ b/poky/meta/recipes-core/systemd/systemd/0022-do-not-disable-buffer-in-writing-files.patch @@ -44,10 +44,10 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com> 21 files changed, 39 insertions(+), 40 deletions(-) diff --git a/src/basic/cgroup-util.c b/src/basic/cgroup-util.c -index f7dc6c8421..5f7a27c2c4 100644 +index f4615ffce1..07cb8ed669 100644 --- a/src/basic/cgroup-util.c +++ b/src/basic/cgroup-util.c -@@ -390,7 +390,7 @@ int cg_kill_kernel_sigkill(const char *controller, const char *path) { +@@ -399,7 +399,7 @@ int cg_kill_kernel_sigkill(const char *controller, const char *path) { if (r < 0) return r; @@ -56,7 +56,7 @@ index f7dc6c8421..5f7a27c2c4 100644 if (r < 0) return r; -@@ -803,7 +803,7 @@ int cg_install_release_agent(const char *controller, const char *agent) { +@@ -805,7 +805,7 @@ int cg_install_release_agent(const char *controller, const char *agent) { sc = strstrip(contents); if (isempty(sc)) { @@ -65,7 +65,7 @@ index f7dc6c8421..5f7a27c2c4 100644 if (r < 0) return r; } else if (!path_equal(sc, agent)) -@@ -821,7 +821,7 @@ int cg_install_release_agent(const char *controller, const char *agent) { +@@ -823,7 +823,7 @@ int cg_install_release_agent(const char *controller, const char *agent) { sc = strstrip(contents); if (streq(sc, "0")) { @@ -74,7 +74,7 @@ index f7dc6c8421..5f7a27c2c4 100644 if (r < 0) return r; -@@ -848,7 +848,7 @@ int cg_uninstall_release_agent(const char *controller) { +@@ -850,7 +850,7 @@ int cg_uninstall_release_agent(const char *controller) { if (r < 0) return r; @@ -83,7 +83,7 @@ index f7dc6c8421..5f7a27c2c4 100644 if (r < 0) return r; -@@ -858,7 +858,7 @@ int cg_uninstall_release_agent(const char *controller) { +@@ -860,7 +860,7 @@ int cg_uninstall_release_agent(const char *controller) { if (r < 0) return r; @@ -92,7 +92,7 @@ index f7dc6c8421..5f7a27c2c4 100644 if (r < 0) return r; -@@ -1704,7 +1704,7 @@ int cg_set_attribute(const char *controller, const char *path, const char *attri +@@ -1730,7 +1730,7 @@ int cg_set_attribute(const char *controller, const char *path, const char *attri if (r < 0) return r; @@ -188,7 +188,7 @@ index 18231c2618..6c598d55c8 100644 if (r < 0) return log_error_errno(r, "%s:%u: Failed to add binary format '%s': %m", filename, line, rulename); -@@ -226,7 +226,7 @@ static int run(int argc, char *argv[]) { +@@ -225,7 +225,7 @@ static int run(int argc, char *argv[]) { } /* Flush out all rules */ @@ -198,10 +198,10 @@ index 18231c2618..6c598d55c8 100644 log_warning_errno(r, "Failed to flush binfmt_misc rules, ignoring: %m"); else diff --git a/src/core/cgroup.c b/src/core/cgroup.c -index f58de95a49..7a97ab6f99 100644 +index 9282b1ff20..7781e0f8eb 100644 --- a/src/core/cgroup.c +++ b/src/core/cgroup.c -@@ -4140,7 +4140,7 @@ int unit_cgroup_freezer_action(Unit *u, FreezerAction action) { +@@ -4182,7 +4182,7 @@ int unit_cgroup_freezer_action(Unit *u, FreezerAction action) { else u->freezer_state = FREEZER_THAWING; @@ -211,10 +211,10 @@ index f58de95a49..7a97ab6f99 100644 return r; diff --git a/src/core/main.c b/src/core/main.c -index 57aedb9b93..7ef36d22f5 100644 +index 409b84a006..b1631e57ce 100644 --- a/src/core/main.c +++ b/src/core/main.c -@@ -1466,7 +1466,7 @@ static int bump_unix_max_dgram_qlen(void) { +@@ -1374,7 +1374,7 @@ static int bump_unix_max_dgram_qlen(void) { if (v >= DEFAULT_UNIX_MAX_DGRAM_QLEN) return 0; @@ -223,7 +223,7 @@ index 57aedb9b93..7ef36d22f5 100644 "%lu", DEFAULT_UNIX_MAX_DGRAM_QLEN); if (r < 0) return log_full_errno(IN_SET(r, -EROFS, -EPERM, -EACCES) ? LOG_DEBUG : LOG_WARNING, r, -@@ -1737,7 +1737,7 @@ static void initialize_core_pattern(bool skip_setup) { +@@ -1646,7 +1646,7 @@ static void initialize_core_pattern(bool skip_setup) { if (getpid_cached() != 1) return; @@ -259,23 +259,23 @@ index f88cb80834..68055fb64a 100644 log_warning_errno(r, "Failed to set SMACK netlabel rule \"127.0.0.1 -CIPSO\": %m"); #endif diff --git a/src/hibernate-resume/hibernate-resume.c b/src/hibernate-resume/hibernate-resume.c -index 58e35e403e..1d0beb4008 100644 +index 1c7d9179d8..3ae78ee580 100644 --- a/src/hibernate-resume/hibernate-resume.c +++ b/src/hibernate-resume/hibernate-resume.c -@@ -45,7 +45,7 @@ int main(int argc, char *argv[]) { +@@ -40,7 +40,7 @@ int main(int argc, char *argv[]) { return EXIT_FAILURE; } -- r = write_string_file("/sys/power/resume", major_minor, WRITE_STRING_FILE_DISABLE_BUFFER); -+ r = write_string_file("/sys/power/resume", major_minor, 0); +- r = write_string_file("/sys/power/resume", FORMAT_DEVNUM(st.st_rdev), WRITE_STRING_FILE_DISABLE_BUFFER); ++ r = write_string_file("/sys/power/resume", FORMAT_DEVNUM(st.st_rdev), 0); if (r < 0) { - log_error_errno(r, "Failed to write '%s' to /sys/power/resume: %m", major_minor); + log_error_errno(r, "Failed to write '" DEVNUM_FORMAT_STR "' to /sys/power/resume: %m", DEVNUM_FORMAT_VAL(st.st_rdev)); return EXIT_FAILURE; diff --git a/src/home/homework.c b/src/home/homework.c -index 9fdc74b775..9858a2b415 100644 +index 0014a7f598..ec3e9caa1c 100644 --- a/src/home/homework.c +++ b/src/home/homework.c -@@ -284,7 +284,7 @@ static void drop_caches_now(void) { +@@ -278,7 +278,7 @@ static void drop_caches_now(void) { * details. We write "2" into /proc/sys/vm/drop_caches to ensure dentries/inodes are flushed, but not * more. */ @@ -285,10 +285,10 @@ index 9fdc74b775..9858a2b415 100644 log_warning_errno(r, "Failed to drop caches, ignoring: %m"); else diff --git a/src/libsystemd/sd-device/sd-device.c b/src/libsystemd/sd-device/sd-device.c -index b163a0fb6b..fd6c5301d6 100644 +index aaf951ced8..45a9d70f0d 100644 --- a/src/libsystemd/sd-device/sd-device.c +++ b/src/libsystemd/sd-device/sd-device.c -@@ -2108,7 +2108,7 @@ _public_ int sd_device_set_sysattr_value(sd_device *device, const char *sysattr, +@@ -2215,7 +2215,7 @@ _public_ int sd_device_set_sysattr_value(sd_device *device, const char *sysattr, if (!value) return -ENOMEM; @@ -298,10 +298,10 @@ index b163a0fb6b..fd6c5301d6 100644 /* On failure, clear cache entry, as we do not know how it fails. */ device_remove_cached_sysattr_value(device, sysattr); diff --git a/src/nspawn/nspawn-cgroup.c b/src/nspawn/nspawn-cgroup.c -index d472e80c03..c7780c7fc6 100644 +index 9e6379ae7b..546a03a7f5 100644 --- a/src/nspawn/nspawn-cgroup.c +++ b/src/nspawn/nspawn-cgroup.c -@@ -124,7 +124,7 @@ int sync_cgroup(pid_t pid, CGroupUnified unified_requested, uid_t uid_shift) { +@@ -123,7 +123,7 @@ int sync_cgroup(pid_t pid, CGroupUnified unified_requested, uid_t uid_shift) { fn = strjoina(tree, cgroup, "/cgroup.procs"); sprintf(pid_string, PID_FMT, pid); @@ -311,7 +311,7 @@ index d472e80c03..c7780c7fc6 100644 log_error_errno(r, "Failed to move process: %m"); goto finish; diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c -index fb6af295b5..0d83f1e4d2 100644 +index c5fd978395..fefe8a21e5 100644 --- a/src/nspawn/nspawn.c +++ b/src/nspawn/nspawn.c @@ -2759,7 +2759,7 @@ static int reset_audit_loginuid(void) { @@ -323,7 +323,7 @@ index fb6af295b5..0d83f1e4d2 100644 if (r < 0) { log_error_errno(r, "Failed to reset audit login UID. This probably means that your kernel is too\n" -@@ -4175,7 +4175,7 @@ static int setup_uid_map( +@@ -4187,7 +4187,7 @@ static int setup_uid_map( return log_oom(); xsprintf(uid_map, "/proc/" PID_FMT "/uid_map", pid); @@ -332,7 +332,7 @@ index fb6af295b5..0d83f1e4d2 100644 if (r < 0) return log_error_errno(r, "Failed to write UID map: %m"); -@@ -4185,7 +4185,7 @@ static int setup_uid_map( +@@ -4197,7 +4197,7 @@ static int setup_uid_map( return log_oom(); xsprintf(uid_map, "/proc/" PID_FMT "/gid_map", pid); @@ -355,19 +355,19 @@ index 724d7f27d9..dd725cff92 100644 return log_warning_errno(r, "Failed to unregister binfmt_misc entries: %m"); diff --git a/src/shared/cgroup-setup.c b/src/shared/cgroup-setup.c -index 8bda66ca36..4e1e9943ee 100644 +index a1fabc73c1..c5c8fc417e 100644 --- a/src/shared/cgroup-setup.c +++ b/src/shared/cgroup-setup.c -@@ -345,7 +345,7 @@ int cg_attach(const char *controller, const char *path, pid_t pid) { +@@ -344,7 +344,7 @@ int cg_attach(const char *controller, const char *path, pid_t pid) { xsprintf(c, PID_FMT "\n", pid); - r = write_string_file(fs, c, WRITE_STRING_FILE_DISABLE_BUFFER); + r = write_string_file(fs, c, 0); - if (r < 0) - return r; - -@@ -877,7 +877,7 @@ int cg_enable_everywhere( + if (r == -EOPNOTSUPP && cg_is_threaded(controller, path) > 0) + /* When the threaded mode is used, we cannot read/write the file. Let's return recognizable error. */ + return -EUCLEAN; +@@ -879,7 +879,7 @@ int cg_enable_everywhere( return log_debug_errno(errno, "Failed to open cgroup.subtree_control file of %s: %m", p); } @@ -422,7 +422,7 @@ index 7064f3a905..8f2a7d9da2 100644 if (r < 0) return log_debug_errno(r, "Failed to write swap file offset to /sys/power/resume_offset for '%s': '%s': %m", hibernate_location->swap->device, offset_str); -@@ -90,7 +90,7 @@ static int write_mode(char **modes) { +@@ -89,7 +89,7 @@ static int write_mode(char **modes) { STRV_FOREACH(mode, modes) { int k; @@ -431,7 +431,7 @@ index 7064f3a905..8f2a7d9da2 100644 if (k >= 0) return 0; -@@ -112,7 +112,7 @@ static int write_state(FILE **f, char **states) { +@@ -110,7 +110,7 @@ static int write_state(FILE **f, char **states) { STRV_FOREACH(state, states) { int k; @@ -441,10 +441,10 @@ index 7064f3a905..8f2a7d9da2 100644 return 0; log_debug_errno(k, "Failed to write '%s' to /sys/power/state: %m", *state); diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c -index 0089833e3f..0a6a3abbb4 100644 +index cd858c9cca..0feb9669a0 100644 --- a/src/udev/udev-rules.c +++ b/src/udev/udev-rules.c -@@ -2181,7 +2181,6 @@ static int udev_rule_apply_token_to_event( +@@ -2335,7 +2335,6 @@ static int udev_rule_apply_token_to_event( log_rule_debug(dev, rules, "ATTR '%s' writing '%s'", buf, value); r = write_string_file(buf, value, WRITE_STRING_FILE_VERIFY_ON_FAILURE | diff --git a/poky/meta/recipes-core/systemd/systemd/38c87ca2ab96d085158485ecfc46c7cb6af0f166.patch b/poky/meta/recipes-core/systemd/systemd/38c87ca2ab96d085158485ecfc46c7cb6af0f166.patch index 2449023083..6ab89cd99e 100644 --- a/poky/meta/recipes-core/systemd/systemd/38c87ca2ab96d085158485ecfc46c7cb6af0f166.patch +++ b/poky/meta/recipes-core/systemd/systemd/38c87ca2ab96d085158485ecfc46c7cb6af0f166.patch @@ -22,15 +22,16 @@ Content-Transfer-Encoding: 8bit Upstream-Status: Backport Signed-off-by: Alexander Kanavin <alex@linutronix.de> + --- src/fundamental/sha256.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/fundamental/sha256.c b/src/fundamental/sha256.c -index 67d83b5f1cd6..f08959479643 100644 +index cd16aec4dd..58b1a80d33 100644 --- a/src/fundamental/sha256.c +++ b/src/fundamental/sha256.c -@@ -60,7 +60,7 @@ +@@ -58,7 +58,7 @@ # define UNALIGNED_P(p) (((size_t) p) % sizeof(uint32_t) != 0) # endif #else diff --git a/poky/meta/recipes-core/systemd/systemd_251.2.bb b/poky/meta/recipes-core/systemd/systemd_251.2.bb index 8370bec0ca..bb3c59f418 100644 --- a/poky/meta/recipes-core/systemd/systemd_251.2.bb +++ b/poky/meta/recipes-core/systemd/systemd_251.2.bb @@ -35,7 +35,6 @@ SRC_URI_MUSL = "\ file://0005-src-basic-missing.h-check-for-missing-strndupa.patch \ file://0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch \ file://0008-add-missing-FTW_-macros-for-musl.patch \ - file://0009-fix-missing-of-__register_atfork-for-non-glibc-build.patch \ file://0010-Use-uintmax_t-for-handling-rlim_t.patch \ file://0011-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch \ file://0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch \ @@ -43,7 +42,6 @@ SRC_URI_MUSL = "\ file://0014-Do-not-disable-buffering-when-writing-to-oom_score_a.patch \ file://0015-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch \ file://0018-avoid-redefinition-of-prctl_mm_map-structure.patch \ - file://0021-test-json.c-define-M_PIl.patch \ file://0022-do-not-disable-buffer-in-writing-files.patch \ file://0025-Handle-__cpu_mask-usage.patch \ file://0026-Handle-missing-gshadow.patch \ @@ -51,6 +49,7 @@ SRC_URI_MUSL = "\ file://0001-pass-correct-parameters-to-getdents64.patch \ file://0002-Add-sys-stat.h-for-S_IFDIR.patch \ file://0001-Adjust-for-musl-headers.patch \ + file://0001-Add-sys-file.h-for-LOCK_.patch \ " PAM_PLUGINS = " \ @@ -186,6 +185,7 @@ PACKAGECONFIG[rfkill] = "-Drfkill=true,-Drfkill=false" PACKAGECONFIG[seccomp] = "-Dseccomp=true,-Dseccomp=false,libseccomp" PACKAGECONFIG[selinux] = "-Dselinux=true,-Dselinux=false,libselinux,initscripts-sushell" PACKAGECONFIG[smack] = "-Dsmack=true,-Dsmack=false" +PACKAGECONFIG[sysext] = "-Dsysext=true, -Dsysext=false" PACKAGECONFIG[sysusers] = "-Dsysusers=true,-Dsysusers=false" PACKAGECONFIG[sysvinit] = "-Dsysvinit-path=${sysconfdir}/init.d -Dsysvrcnd-path=${sysconfdir},-Dsysvinit-path= -Dsysvrcnd-path=,,systemd-compat-units update-rc.d" # When enabled use reproducble build timestamp if set as time epoch, @@ -522,7 +522,6 @@ FILES:${PN}-extra-utils = "\ ${bindir}/systemd-cgls \ ${bindir}/systemd-cgtop \ ${bindir}/systemd-stdio-bridge \ - ${bindir}/systemd-sysext \ ${base_bindir}/systemd-ask-password \ ${base_bindir}/systemd-tty-ask-password-agent \ ${systemd_system_unitdir}/systemd-ask-password-console.path \ diff --git a/poky/meta/recipes-core/udev/udev-extraconf/mount.sh b/poky/meta/recipes-core/udev/udev-extraconf/mount.sh index c8b773bc07..43acb3a7a0 100644 --- a/poky/meta/recipes-core/udev/udev-extraconf/mount.sh +++ b/poky/meta/recipes-core/udev/udev-extraconf/mount.sh @@ -40,11 +40,21 @@ automount_systemd() { name="`basename "$DEVNAME"`" # Skip already mounted partitions - if [ -f /run/systemd/transient/run-media-$name.mount ]; then + if [ -f /run/systemd/transient/$(echo $MOUNT_BASE | cut -d '/' -f 2- | sed 's#/#-#g')-*$name.mount ]; then logger "mount.sh/automount" "$MOUNT_BASE/$name already mounted" return fi + # Get the unique name for mount point + get_label_name "${DEVNAME}" + + # Only go for auto-mounting when the device has been cleaned up in remove + # or has not been identified yet + if [ -e "/tmp/.automount-$name" ]; then + logger "mount.sh/automount" "[$MOUNT_BASE/$name] is already cached" + return + fi + # Skip the partition which are already in /etc/fstab grep "^[[:space:]]*$DEVNAME" /etc/fstab && return for n in LABEL PARTLABEL UUID PARTUUID; do @@ -66,6 +76,8 @@ automount_systemd() { ;; swap) return ;; + lvm*|LVM*) + return ;; # TODO *) ;; @@ -94,6 +106,16 @@ automount() { # configured in fstab grep -q "^$DEVNAME " /proc/mounts && return + # Get the unique name for mount point + get_label_name "${DEVNAME}" + + # Only go for auto-mounting when the device has been cleaned up in remove + # or has not been identified yet + if [ -e "/tmp/.automount-$name" ]; then + logger "mount.sh/automount" "[$MOUNT_BASE/$name] is already cached" + return + fi + ! test -d "$MOUNT_BASE/$name" && mkdir -p "$MOUNT_BASE/$name" # Silent util-linux's version of mounting auto if [ "x`readlink $MOUNT`" = "x/bin/mount.util-linux" ] ; @@ -109,6 +131,8 @@ automount() { ;; swap) return ;; + lvm*|LVM*) + return ;; # TODO *) ;; @@ -120,7 +144,10 @@ automount() { rm_dir "$MOUNT_BASE/$name" else logger "mount.sh/automount" "Auto-mount of [$MOUNT_BASE/$name] successful" - touch "/tmp/.automount-$name" + # The actual device might not be present in the remove event so blkid cannot + # be used to calculate what name was generated here. Simply save the mount + # name in our tmp file. + echo "$name" > "/tmp/.automount-$name" fi } @@ -134,6 +161,18 @@ rm_dir() { fi } +get_label_name() { + # Get the LABEL or PARTLABEL + LABEL=`/sbin/blkid | grep "$1:" | grep -o 'LABEL=".*"' | cut -d '"' -f2` + # If the $DEVNAME has a LABEL or a PARTLABEL + if [ -n "$LABEL" ]; then + # Set the mount location dir name to LABEL appended + # with $name e.g. label-sda. That would avoid overlapping + # mounts in case two devices have same LABEL + name="${LABEL}-${name}" + fi +} + # No ID_FS_TYPE for cdrom device, yet it should be mounted name="`basename "$DEVNAME"`" [ -e /sys/block/$name/device/media ] && media_type=`cat /sys/block/$name/device/media` @@ -151,12 +190,18 @@ if [ "$ACTION" = "add" ] && [ -n "$DEVNAME" ] && [ -n "$ID_FS_TYPE" -o "$media_t fi if [ "$ACTION" = "remove" ] || [ "$ACTION" = "change" ] && [ -x "$UMOUNT" ] && [ -n "$DEVNAME" ]; then - for mnt in `cat /proc/mounts | grep "$DEVNAME" | cut -f 2 -d " " ` - do - $UMOUNT $mnt - done - - # Remove empty directories from auto-mounter name="`basename "$DEVNAME"`" - test -e "/tmp/.automount-$name" && rm_dir "$MOUNT_BASE/$name" + tmpfile=`find /tmp | grep "\.automount-.*${name}$"` + if [ ! -e "/sys/$DEVPATH" -a -e "$tmpfile" ]; then + logger "mount.sh/remove" "cleaning up $DEVNAME, was mounted by the auto-mounter" + for mnt in `cat /proc/mounts | grep "$DEVNAME" | cut -f 2 -d " " ` + do + $UMOUNT $mnt + done + # Remove mount directory created by the auto-mounter + # and clean up our tmp cache file + mntdir=`cat "$tmpfile"` + rm_dir "$MOUNT_BASE/$mntdir" + rm "$tmpfile" + fi fi diff --git a/poky/meta/recipes-core/udev/udev-extraconf_1.1.bb b/poky/meta/recipes-core/udev/udev-extraconf_1.1.bb index 2b908ac05b..30f1fe76d0 100644 --- a/poky/meta/recipes-core/udev/udev-extraconf_1.1.bb +++ b/poky/meta/recipes-core/udev/udev-extraconf_1.1.bb @@ -37,8 +37,19 @@ do_install() { install -m 0755 ${WORKDIR}/network.sh ${D}${sysconfdir}/udev/scripts } -FILES:${PN} = "${sysconfdir}/udev" -RDEPENDS:${PN} = "udev" +pkg_postinst:${PN} () { + if [ -e $D${systemd_unitdir}/system/systemd-udevd.service ]; then + sed -i "/\[Service\]/aMountFlags=shared" $D${systemd_unitdir}/system/systemd-udevd.service + fi +} + +pkg_postrm:${PN} () { + if [ -e $D${systemd_unitdir}/system/systemd-udevd.service ]; then + sed -i "/MountFlags=shared/d" $D${systemd_unitdir}/system/systemd-udevd.service + fi +} + +RDEPENDS:${PN} = "udev util-linux-blkid ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'util-linux-lsblk', '', d)}" CONFFILES:${PN} = "${sysconfdir}/udev/mount.ignorelist" # to replace udev-extra-rules from meta-oe |