summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-core/systemd/systemd-boot_245.5.bb (renamed from meta/recipes-core/systemd/systemd-boot_244.3.bb)0
-rw-r--r--meta/recipes-core/systemd/systemd-conf_245.5.bb (renamed from meta/recipes-core/systemd/systemd-conf_244.3.bb)0
-rw-r--r--meta/recipes-core/systemd/systemd.inc4
-rw-r--r--meta/recipes-core/systemd/systemd/0001-Handle-missing-gshadow.patch171
-rw-r--r--meta/recipes-core/systemd/systemd/0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch14
-rw-r--r--meta/recipes-core/systemd/systemd/0001-do-not-disable-buffer-in-writing-files.patch46
-rw-r--r--meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch12
-rw-r--r--meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch10
-rw-r--r--meta/recipes-core/systemd/systemd/0004-src-shared-cpu-set-util.h-add-__cpu_mask-definition.patch8
-rw-r--r--meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch93
-rw-r--r--meta/recipes-core/systemd/systemd/0006-Include-netinet-if_ether.h.patch41
-rw-r--r--meta/recipes-core/systemd/systemd/0010-fix-missing-of-__register_atfork-for-non-glibc-build.patch6
-rw-r--r--meta/recipes-core/systemd/systemd/0011-Use-uintmax_t-for-handling-rlim_t.patch10
-rw-r--r--meta/recipes-core/systemd/systemd/0014-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch8
-rw-r--r--meta/recipes-core/systemd/systemd/0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch8
-rw-r--r--meta/recipes-core/systemd/systemd_245.5.bb (renamed from meta/recipes-core/systemd/systemd_244.3.bb)11
16 files changed, 317 insertions, 125 deletions
diff --git a/meta/recipes-core/systemd/systemd-boot_244.3.bb b/meta/recipes-core/systemd/systemd-boot_245.5.bb
index f92c639810..f92c639810 100644
--- a/meta/recipes-core/systemd/systemd-boot_244.3.bb
+++ b/meta/recipes-core/systemd/systemd-boot_245.5.bb
diff --git a/meta/recipes-core/systemd/systemd-conf_244.3.bb b/meta/recipes-core/systemd/systemd-conf_245.5.bb
index d9ec023bfd..d9ec023bfd 100644
--- a/meta/recipes-core/systemd/systemd-conf_244.3.bb
+++ b/meta/recipes-core/systemd/systemd-conf_245.5.bb
diff --git a/meta/recipes-core/systemd/systemd.inc b/meta/recipes-core/systemd/systemd.inc
index e73b397b5d..0f82580361 100644
--- a/meta/recipes-core/systemd/systemd.inc
+++ b/meta/recipes-core/systemd/systemd.inc
@@ -14,8 +14,8 @@ LICENSE = "GPLv2 & LGPLv2.1"
LIC_FILES_CHKSUM = "file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \
file://LICENSE.LGPL2.1;md5=4fbd65380cdd255951079008b364516c"
-SRCREV = "b7ed902b2394f94e7f1fbe6c3194b5cd9a9429e6"
-SRCBRANCH = "v244-stable"
+SRCREV = "9a506b7e9291d997a920af9ac299e7b834368119"
+SRCBRANCH = "v245-stable"
SRC_URI = "git://github.com/systemd/systemd-stable.git;protocol=git;branch=${SRCBRANCH}"
S = "${WORKDIR}/git"
diff --git a/meta/recipes-core/systemd/systemd/0001-Handle-missing-gshadow.patch b/meta/recipes-core/systemd/systemd/0001-Handle-missing-gshadow.patch
new file mode 100644
index 0000000000..26a597d45b
--- /dev/null
+++ b/meta/recipes-core/systemd/systemd/0001-Handle-missing-gshadow.patch
@@ -0,0 +1,171 @@
+From ef9580ea1e2f1e57af3c7dcb0ec392ba8dbb5c8d Mon Sep 17 00:00:00 2001
+From: Alex Kiernan <alex.kiernan@gmail.com>
+Date: Tue, 10 Mar 2020 11:05:20 +0000
+Subject: [PATCH] Handle missing gshadow
+
+gshadow usage is now present in the userdb code. Mask all uses of it to
+allow compilation on musl
+
+Upstream-Status: Inappropriate [musl specific]
+Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
+---
+ src/shared/group-record-nss.c | 20 ++++++++++++++++++++
+ src/shared/group-record-nss.h | 4 ++++
+ src/shared/userdb.c | 6 ++++++
+ 3 files changed, 30 insertions(+)
+
+diff --git a/src/shared/group-record-nss.c b/src/shared/group-record-nss.c
+index 77924f1c4067..c64490253ff3 100644
+--- a/src/shared/group-record-nss.c
++++ b/src/shared/group-record-nss.c
+@@ -19,8 +19,10 @@ int nss_group_to_group_record(
+ if (isempty(grp->gr_name))
+ return -EINVAL;
+
++#if ENABLE_GSHADOW
+ if (sgrp && !streq_ptr(sgrp->sg_namp, grp->gr_name))
+ return -EINVAL;
++#endif
+
+ g = group_record_new();
+ if (!g)
+@@ -36,6 +38,7 @@ int nss_group_to_group_record(
+
+ g->gid = grp->gr_gid;
+
++#if ENABLE_GSHADOW
+ if (sgrp) {
+ if (hashed_password_valid(sgrp->sg_passwd)) {
+ g->hashed_password = strv_new(sgrp->sg_passwd);
+@@ -51,6 +54,7 @@ int nss_group_to_group_record(
+ if (!g->administrators)
+ return -ENOMEM;
+ }
++#endif
+
+ r = json_build(&g->json, JSON_BUILD_OBJECT(
+ JSON_BUILD_PAIR("groupName", JSON_BUILD_STRING(g->group_name)),
+@@ -76,6 +80,7 @@ int nss_sgrp_for_group(const struct group *grp, struct sgrp *ret_sgrp, char **re
+ assert(ret_sgrp);
+ assert(ret_buffer);
+
++#if ENABLE_GSHADOW
+ for (;;) {
+ _cleanup_free_ char *buf = NULL;
+ struct sgrp sgrp, *result;
+@@ -104,6 +109,9 @@ int nss_sgrp_for_group(const struct group *grp, struct sgrp *ret_sgrp, char **re
+ buflen *= 2;
+ buf = mfree(buf);
+ }
++#else
++ return -ESRCH;
++#endif
+ }
+
+ int nss_group_record_by_name(const char *name, GroupRecord **ret) {
+@@ -111,7 +119,9 @@ int nss_group_record_by_name(const char *name, GroupRecord **ret) {
+ struct group grp, *result;
+ bool incomplete = false;
+ size_t buflen = 4096;
++#if ENABLE_GSHADOW
+ struct sgrp sgrp;
++#endif
+ int r;
+
+ assert(name);
+@@ -141,6 +151,7 @@ int nss_group_record_by_name(const char *name, GroupRecord **ret) {
+ buf = mfree(buf);
+ }
+
++#if ENABLE_GSHADOW
+ r = nss_sgrp_for_group(result, &sgrp, &sbuf);
+ if (r < 0) {
+ log_debug_errno(r, "Failed to do shadow lookup for group %s, ignoring: %m", result->gr_name);
+@@ -148,6 +159,9 @@ int nss_group_record_by_name(const char *name, GroupRecord **ret) {
+ }
+
+ r = nss_group_to_group_record(result, r >= 0 ? &sgrp : NULL, ret);
++#else
++ r = nss_group_to_group_record(result, NULL, ret);
++#endif
+ if (r < 0)
+ return r;
+
+@@ -160,7 +174,9 @@ int nss_group_record_by_gid(gid_t gid, GroupRecord **ret) {
+ struct group grp, *result;
+ bool incomplete = false;
+ size_t buflen = 4096;
++#if ENABLE_GSHADOW
+ struct sgrp sgrp;
++#endif
+ int r;
+
+ assert(ret);
+@@ -188,6 +204,7 @@ int nss_group_record_by_gid(gid_t gid, GroupRecord **ret) {
+ buf = mfree(buf);
+ }
+
++#if ENABLE_GSHADOW
+ r = nss_sgrp_for_group(result, &sgrp, &sbuf);
+ if (r < 0) {
+ log_debug_errno(r, "Failed to do shadow lookup for group %s, ignoring: %m", result->gr_name);
+@@ -195,6 +212,9 @@ int nss_group_record_by_gid(gid_t gid, GroupRecord **ret) {
+ }
+
+ r = nss_group_to_group_record(result, r >= 0 ? &sgrp : NULL, ret);
++#else
++ r = nss_group_to_group_record(result, NULL, ret);
++#endif
+ if (r < 0)
+ return r;
+
+diff --git a/src/shared/group-record-nss.h b/src/shared/group-record-nss.h
+index 38b2995178ff..d7d95c44cf11 100644
+--- a/src/shared/group-record-nss.h
++++ b/src/shared/group-record-nss.h
+@@ -2,7 +2,11 @@
+ #pragma once
+
+ #include <grp.h>
++#if ENABLE_GSHADOW
+ #include <gshadow.h>
++#else
++struct sgrp;
++#endif
+
+ #include "group-record.h"
+
+diff --git a/src/shared/userdb.c b/src/shared/userdb.c
+index 92f8796768d7..5d912862f85c 100644
+--- a/src/shared/userdb.c
++++ b/src/shared/userdb.c
+@@ -924,13 +924,16 @@ int groupdb_iterator_get(UserDBIterator *iterator, GroupRecord **ret) {
+ if (gr) {
+ _cleanup_free_ char *buffer = NULL;
+ bool incomplete = false;
++#if ENABLE_GSHADOW
+ struct sgrp sgrp;
++#endif
+
+ if (streq_ptr(gr->gr_name, "root"))
+ iterator->synthesize_root = false;
+ if (gr->gr_gid == GID_NOBODY)
+ iterator->synthesize_nobody = false;
+
++#if ENABLE_GSHADOW
+ r = nss_sgrp_for_group(gr, &sgrp, &buffer);
+ if (r < 0) {
+ log_debug_errno(r, "Failed to acquire shadow entry for group %s, ignoring: %m", gr->gr_name);
+@@ -938,6 +941,9 @@ int groupdb_iterator_get(UserDBIterator *iterator, GroupRecord **ret) {
+ }
+
+ r = nss_group_to_group_record(gr, r >= 0 ? &sgrp : NULL, ret);
++#else
++ r = nss_group_to_group_record(gr, NULL, ret);
++#endif
+ if (r < 0)
+ return r;
+
+--
+2.17.1
+
diff --git a/meta/recipes-core/systemd/systemd/0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch b/meta/recipes-core/systemd/systemd/0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch
index 6eaaec71c5..d098084b2e 100644
--- a/meta/recipes-core/systemd/systemd/0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch
+++ b/meta/recipes-core/systemd/systemd/0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch
@@ -1,4 +1,4 @@
-From c73a87871df31b4f8d96c9d443759c6f702935f6 Mon Sep 17 00:00:00 2001
+From e9c993816077c1ae67d25d464f2ece2a090f30b8 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Thu, 21 Feb 2019 16:23:24 +0800
Subject: [PATCH] binfmt: Don't install dependency links at install time for
@@ -26,10 +26,10 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
3 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/units/meson.build b/units/meson.build
-index 6a3a0d0dea22..bbb1b78618c3 100644
+index ea91f0cc9ea7..25186f88dfeb 100644
--- a/units/meson.build
+++ b/units/meson.build
-@@ -46,8 +46,7 @@ units = [
+@@ -52,8 +52,7 @@ units = [
['poweroff.target', '',
'runlevel0.target'],
['printer.target', ''],
@@ -39,16 +39,16 @@ index 6a3a0d0dea22..bbb1b78618c3 100644
['proc-sys-fs-binfmt_misc.mount', 'ENABLE_BINFMT'],
['reboot.target', '',
'runlevel6.target ctrl-alt-del.target'],
-@@ -130,8 +129,7 @@ in_units = [
- ['systemd-ask-password-console.service', ''],
- ['systemd-ask-password-wall.service', ''],
+@@ -161,8 +160,7 @@ in_units = [
+ ['rc-local.service', 'HAVE_SYSV_COMPAT'],
+ ['rescue.service', ''],
['systemd-backlight@.service', 'ENABLE_BACKLIGHT'],
- ['systemd-binfmt.service', 'ENABLE_BINFMT',
- 'sysinit.target.wants/'],
+ ['systemd-binfmt.service', 'ENABLE_BINFMT'],
['systemd-bless-boot.service', 'ENABLE_EFI HAVE_BLKID'],
['systemd-boot-check-no-failures.service', ''],
- ['systemd-boot-system-token.service', 'ENABLE_EFI',
+ ['systemd-coredump@.service', 'ENABLE_COREDUMP'],
diff --git a/units/proc-sys-fs-binfmt_misc.automount b/units/proc-sys-fs-binfmt_misc.automount
index 30a6bc991844..4231f3b70fe9 100644
--- a/units/proc-sys-fs-binfmt_misc.automount
diff --git a/meta/recipes-core/systemd/systemd/0001-do-not-disable-buffer-in-writing-files.patch b/meta/recipes-core/systemd/systemd/0001-do-not-disable-buffer-in-writing-files.patch
index f1c7181ef9..4eeec7b7da 100644
--- a/meta/recipes-core/systemd/systemd/0001-do-not-disable-buffer-in-writing-files.patch
+++ b/meta/recipes-core/systemd/systemd/0001-do-not-disable-buffer-in-writing-files.patch
@@ -1,4 +1,4 @@
-From f4a0caaea346b70cf5064f9159a53a1b8020071e Mon Sep 17 00:00:00 2001
+From f92fd7e77ed5aab2dda01a20e6891c37f09415d3 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Fri, 1 Mar 2019 15:22:15 +0800
Subject: [PATCH] do not disable buffer in writing files
@@ -167,10 +167,10 @@ index 7ff844c78c3a..5c5721d7c2f7 100644
STRV_FOREACH(f, files) {
k = apply_file(*f, true);
diff --git a/src/core/main.c b/src/core/main.c
-index c24b696b1663..195be7d2df0d 100644
+index 3c6b66e89c8e..c39ebe56a5b3 100644
--- a/src/core/main.c
+++ b/src/core/main.c
-@@ -1303,7 +1303,7 @@ static int bump_unix_max_dgram_qlen(void) {
+@@ -1312,7 +1312,7 @@ static int bump_unix_max_dgram_qlen(void) {
if (v >= DEFAULT_UNIX_MAX_DGRAM_QLEN)
return 0;
@@ -179,7 +179,7 @@ index c24b696b1663..195be7d2df0d 100644
if (r < 0)
return log_full_errno(IN_SET(r, -EROFS, -EPERM, -EACCES) ? LOG_DEBUG : LOG_WARNING, r,
"Failed to bump AF_UNIX datagram queue length, ignoring: %m");
-@@ -1527,7 +1527,7 @@ static void initialize_core_pattern(bool skip_setup) {
+@@ -1536,7 +1536,7 @@ static void initialize_core_pattern(bool skip_setup) {
if (getpid_cached() != 1)
return;
@@ -228,7 +228,7 @@ index 17e7cd1a009b..87a766771663 100644
log_error_errno(r, "Failed to write '%s' to /sys/power/resume: %m", major_minor);
return EXIT_FAILURE;
diff --git a/src/libsystemd/sd-device/sd-device.c b/src/libsystemd/sd-device/sd-device.c
-index f35612fe12bc..20351bf7fa70 100644
+index 1f2451f8e1b4..3f676ec2841a 100644
--- a/src/libsystemd/sd-device/sd-device.c
+++ b/src/libsystemd/sd-device/sd-device.c
@@ -1849,7 +1849,7 @@ _public_ int sd_device_set_sysattr_value(sd_device *device, const char *sysattr,
@@ -241,10 +241,10 @@ index f35612fe12bc..20351bf7fa70 100644
if (r == -ELOOP)
return -EINVAL;
diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c
-index 69b59948786f..b4973c596d48 100644
+index 52a7ea3c77e9..9703de0dabee 100644
--- a/src/login/logind-dbus.c
+++ b/src/login/logind-dbus.c
-@@ -1322,7 +1322,7 @@ static int trigger_device(Manager *m, sd_device *d) {
+@@ -1339,7 +1339,7 @@ static int trigger_device(Manager *m, sd_device *d) {
if (!t)
return -ENOMEM;
@@ -267,10 +267,10 @@ index f5048d9473cb..b6383ab5c97e 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 873a76596f0b..4e496548bb94 100644
+index 734dee1130e0..71add9a055d2 100644
--- a/src/nspawn/nspawn.c
+++ b/src/nspawn/nspawn.c
-@@ -2425,7 +2425,7 @@ static int reset_audit_loginuid(void) {
+@@ -2440,7 +2440,7 @@ static int reset_audit_loginuid(void) {
if (streq(p, "4294967295"))
return 0;
@@ -279,7 +279,7 @@ index 873a76596f0b..4e496548bb94 100644
if (r < 0) {
log_error_errno(r,
"Failed to reset audit login UID. This probably means that your kernel is too\n"
-@@ -3633,13 +3633,13 @@ static int setup_uid_map(pid_t pid) {
+@@ -3665,13 +3665,13 @@ static int setup_uid_map(pid_t pid) {
xsprintf(uid_map, "/proc/" PID_FMT "/uid_map", pid);
xsprintf(line, UID_FMT " " UID_FMT " " UID_FMT "\n", 0, arg_uid_shift, arg_uid_range);
@@ -318,10 +318,10 @@ index e8398cbde5ba..ba682ec0c9e7 100644
log_debug_errno(r, "Failed to %s controller %s for %s (%s): %m",
FLAGS_SET(mask, bit) ? "enable" : "disable", n, p, fs);
diff --git a/src/shared/sysctl-util.c b/src/shared/sysctl-util.c
-index 12fb3ef7ea0e..132ac847c091 100644
+index 8543dbd2d05f..76162599817e 100644
--- a/src/shared/sysctl-util.c
+++ b/src/shared/sysctl-util.c
-@@ -87,7 +87,7 @@ int sysctl_write_ip_property(int af, const char *ifname, const char *property, c
+@@ -93,7 +93,7 @@ int sysctl_write_ip_property(int af, const char *ifname, const char *property, c
log_debug("Setting '%s' to '%s'", p, value);
@@ -331,28 +331,28 @@ index 12fb3ef7ea0e..132ac847c091 100644
int sysctl_read(const char *property, char **content) {
diff --git a/src/sleep/sleep.c b/src/sleep/sleep.c
-index 89b80367f8f4..33dbb21364d0 100644
+index fbfddc0262fc..7cc2902154e9 100644
--- a/src/sleep/sleep.c
+++ b/src/sleep/sleep.c
-@@ -45,7 +45,7 @@ static int write_hibernate_location_info(const HibernateLocation *hibernate_loca
+@@ -47,7 +47,7 @@ static int write_hibernate_location_info(const HibernateLocation *hibernate_loca
assert(hibernate_location->swap);
- assert(hibernate_location->resume);
-- r = write_string_file("/sys/power/resume", hibernate_location->resume, WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file("/sys/power/resume", hibernate_location->resume, 0);
+ xsprintf(resume_str, "%u:%u", major(hibernate_location->devno), minor(hibernate_location->devno));
+- r = write_string_file("/sys/power/resume", resume_str, WRITE_STRING_FILE_DISABLE_BUFFER);
++ r = write_string_file("/sys/power/resume", resume_str, 0);
if (r < 0)
return log_debug_errno(r, "Failed to write partition device to /sys/power/resume for '%s': '%s': %m",
- hibernate_location->swap->device, hibernate_location->resume);
-@@ -72,7 +72,7 @@ static int write_hibernate_location_info(const HibernateLocation *hibernate_loca
+ hibernate_location->swap->device, resume_str);
+@@ -74,7 +74,7 @@ static int write_hibernate_location_info(const HibernateLocation *hibernate_loca
}
- xsprintf(offset_str, "%" PRIu64, hibernate_location->resume_offset);
+ xsprintf(offset_str, "%" PRIu64, hibernate_location->offset);
- r = write_string_file("/sys/power/resume_offset", offset_str, WRITE_STRING_FILE_DISABLE_BUFFER);
+ r = write_string_file("/sys/power/resume_offset", offset_str, 0);
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);
-@@ -89,7 +89,7 @@ static int write_mode(char **modes) {
+@@ -91,7 +91,7 @@ static int write_mode(char **modes) {
STRV_FOREACH(mode, modes) {
int k;
@@ -361,7 +361,7 @@ index 89b80367f8f4..33dbb21364d0 100644
if (k >= 0)
return 0;
-@@ -108,7 +108,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;
@@ -384,7 +384,7 @@ index 60c68b5029cf..fdca03d3d42c 100644
bool ignore = IN_SET(r, -ENOENT, -EACCES, -ENODEV, -EROFS);
diff --git a/src/udev/udevd.c b/src/udev/udevd.c
-index 7678331897f5..6871cde7aa65 100644
+index ca65474f2763..38780681431a 100644
--- a/src/udev/udevd.c
+++ b/src/udev/udevd.c
@@ -1089,7 +1089,7 @@ static int synthesize_change_one(sd_device *dev, const char *syspath) {
diff --git a/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch b/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch
index 6b85ff0f89..a5e41bfabf 100644
--- a/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch
+++ b/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch
@@ -1,4 +1,4 @@
-From 49501c80d32c1bc5ecb07f40c324feb82af0b057 Mon Sep 17 00:00:00 2001
+From 3eb12a6ba0bce149717eaabeb1505d379b3d705a Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 13:41:41 +0800
Subject: [PATCH] don't use glibc-specific qsort_r
@@ -40,7 +40,7 @@ index e029f8646eb0..27d68b341cf3 100644
- qsort_r_safe((p), (n), sizeof((p)[0]), (__compar_d_fn_t) _func_, userdata); \
- })
diff --git a/src/libsystemd/sd-hwdb/hwdb-util.c b/src/libsystemd/sd-hwdb/hwdb-util.c
-index c83575c7c876..72f8f3a05048 100644
+index d790e8fd0b19..42e0fd7c9b3c 100644
--- a/src/libsystemd/sd-hwdb/hwdb-util.c
+++ b/src/libsystemd/sd-hwdb/hwdb-util.c
@@ -128,9 +128,13 @@ static void trie_free(struct trie *trie) {
@@ -84,10 +84,10 @@ index c83575c7c876..72f8f3a05048 100644
}
diff --git a/src/shared/format-table.c b/src/shared/format-table.c
-index 4617ae8badc4..17d6b9616256 100644
+index 425013046491..33c1c5a12d43 100644
--- a/src/shared/format-table.c
+++ b/src/shared/format-table.c
-@@ -1109,31 +1109,33 @@ static int cell_data_compare(TableData *a, size_t index_a, TableData *b, size_t
+@@ -1164,31 +1164,33 @@ static int cell_data_compare(TableData *a, size_t index_a, TableData *b, size_t
return CMP(index_a, index_b);
}
@@ -131,7 +131,7 @@ index 4617ae8badc4..17d6b9616256 100644
}
/* Order identical lines by the order there were originally added in */
-@@ -1533,7 +1535,12 @@ int table_print(Table *t, FILE *f) {
+@@ -1690,7 +1692,12 @@ int table_print(Table *t, FILE *f) {
for (i = 0; i < n_rows; i++)
sorted[i] = i * t->n_columns;
@@ -145,7 +145,7 @@ index 4617ae8badc4..17d6b9616256 100644
}
if (t->display_map)
-@@ -1997,7 +2004,12 @@ int table_to_json(Table *t, JsonVariant **ret) {
+@@ -2236,7 +2243,12 @@ int table_to_json(Table *t, JsonVariant **ret) {
for (i = 0; i < n_rows; i++)
sorted[i] = i * t->n_columns;
diff --git a/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch b/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch
index 71e52c4967..0dea933270 100644
--- a/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch
+++ b/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch
@@ -1,4 +1,4 @@
-From 142dcaef0d24a78d3c0c94168b66fdf234497e97 Mon Sep 17 00:00:00 2001
+From 8af168cefca01f8f2da336f1c82620c284dc74f2 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 14:04:21 +0800
Subject: [PATCH] add fallback parse_printf_format implementation
@@ -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 21d6968abdf4..bab0bf84806c 100644
+index fc216d22da24..a25996803d64 100644
--- a/meson.build
+++ b/meson.build
-@@ -628,6 +628,7 @@ endif
+@@ -640,6 +640,7 @@ endif
foreach header : ['crypt.h',
'linux/memfd.h',
'linux/vm_sockets.h',
@@ -35,10 +35,10 @@ index 21d6968abdf4..bab0bf84806c 100644
'valgrind/memcheck.h',
'valgrind/valgrind.h',
diff --git a/src/basic/meson.build b/src/basic/meson.build
-index f70d1b8bf8a0..4cd57373e10d 100644
+index ccb22e159505..25c77ea6bc0e 100644
--- a/src/basic/meson.build
+++ b/src/basic/meson.build
-@@ -311,6 +311,11 @@ foreach item : [['af', af_list_txt, 'af', ''],
+@@ -313,6 +313,11 @@ foreach item : [['af', af_list_txt, 'af', ''],
endforeach
basic_sources += generated_gperf_headers
diff --git a/meta/recipes-core/systemd/systemd/0004-src-shared-cpu-set-util.h-add-__cpu_mask-definition.patch b/meta/recipes-core/systemd/systemd/0004-src-shared-cpu-set-util.h-add-__cpu_mask-definition.patch
index 685df01a10..d394444c1c 100644
--- a/meta/recipes-core/systemd/systemd/0004-src-shared-cpu-set-util.h-add-__cpu_mask-definition.patch
+++ b/meta/recipes-core/systemd/systemd/0004-src-shared-cpu-set-util.h-add-__cpu_mask-definition.patch
@@ -1,4 +1,4 @@
-From 6883ffc99168056101c667c6421f8353d5ad675a Mon Sep 17 00:00:00 2001
+From dbe8b3ee45580defeefcac929b897c5437ffc50b Mon Sep 17 00:00:00 2001
From: Scott Murray <scott.murray@konsulko.com>
Date: Fri, 13 Sep 2019 19:26:27 -0400
Subject: [PATCH] Handle __cpu_mask usage
@@ -38,7 +38,7 @@ index 27812dfd5923..0ab40731ea93 100644
typedef struct CPUSet {
cpu_set_t *set;
diff --git a/src/test/test-sizeof.c b/src/test/test-sizeof.c
-index a710db5370b8..d1601ad9292d 100644
+index c65062d2562c..8b6eefa9cdae 100644
--- a/src/test/test-sizeof.c
+++ b/src/test/test-sizeof.c
@@ -1,6 +1,5 @@
@@ -47,8 +47,8 @@ index a710db5370b8..d1601ad9292d 100644
-#include <sched.h>
#include <stdio.h>
#include <string.h>
-
-@@ -8,6 +7,7 @@
+ #include <sys/types.h>
+@@ -10,6 +9,7 @@
#include <float.h>
#include "time-util.h"
diff --git a/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch b/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch
index aa4bb063c9..ca4f0d5d62 100644
--- a/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch
+++ b/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch
@@ -1,4 +1,4 @@
-From 9597196234a0ccf30d7f65cf185a8c24cb3158b3 Mon Sep 17 00:00:00 2001
+From 85dcaad8f38521ec3dc580794072b601900eed84 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 14:18:21 +0800
Subject: [PATCH] src/basic/missing.h: check for missing strndupa
@@ -39,6 +39,7 @@ Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
src/coredump/coredump-vacuum.c | 1 +
src/journal-remote/journal-remote-main.c | 1 +
src/journal/journalctl.c | 1 +
+ src/journal/sd-journal.c | 1 +
src/libsystemd/sd-bus/bus-message.c | 1 +
src/libsystemd/sd-bus/bus-objects.c | 1 +
src/libsystemd/sd-bus/bus-socket.c | 1 +
@@ -65,16 +66,16 @@ Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
src/udev/udev-builtin-path_id.c | 1 +
src/udev/udev-event.c | 1 +
src/udev/udev-rules.c | 1 +
- 48 files changed, 59 insertions(+)
+ 49 files changed, 60 insertions(+)
diff --git a/meson.build b/meson.build
-index bab0bf84806c..f4e1736cf09e 100644
+index a25996803d64..72b305b5ab58 100644
--- a/meson.build
+++ b/meson.build
-@@ -517,6 +517,7 @@ foreach ident : [
- #include <unistd.h>'''],
- ['get_mempolicy', '''#include <stdlib.h>
- #include <unistd.h>'''],
+@@ -529,6 +529,7 @@ foreach ident : [
+ #include <unistd.h>
+ #include <signal.h>
+ #include <sys/wait.h>'''],
+ ['strndupa' , '''#include <string.h>'''],
]
@@ -160,7 +161,7 @@ index fa682d4c438e..37902551490a 100644
int mkdir_safe_internal(const char *path, mode_t mode, uid_t uid, gid_t gid, MkdirFlags flags, mkdir_func_t _mkdir) {
struct stat st;
diff --git a/src/basic/parse-util.c b/src/basic/parse-util.c
-index aec6099c9cc1..744b9b134ce4 100644
+index e0094b0f370a..00da6518124b 100644
--- a/src/basic/parse-util.c
+++ b/src/basic/parse-util.c
@@ -18,6 +18,7 @@
@@ -172,7 +173,7 @@ index aec6099c9cc1..744b9b134ce4 100644
int parse_boolean(const char *v) {
if (!v)
diff --git a/src/basic/proc-cmdline.c b/src/basic/proc-cmdline.c
-index d3d99d9a7f90..e0b9efad03a2 100644
+index 1af58717c686..c1020f4611d4 100644
--- a/src/basic/proc-cmdline.c
+++ b/src/basic/proc-cmdline.c
@@ -15,6 +15,7 @@
@@ -196,7 +197,7 @@ index 7aaf95bfced2..da7e836f143e 100644
int procfs_tasks_get_limit(uint64_t *ret) {
_cleanup_free_ char *value = NULL;
diff --git a/src/basic/selinux-util.c b/src/basic/selinux-util.c
-index f35e760233be..e4b0a8aa445e 100644
+index 1095cb426cce..806ef4bd97a9 100644
--- a/src/basic/selinux-util.c
+++ b/src/basic/selinux-util.c
@@ -26,6 +26,7 @@
@@ -206,9 +207,9 @@ index f35e760233be..e4b0a8aa445e 100644
+#include "missing_stdlib.h"
#if HAVE_SELINUX
- DEFINE_TRIVIAL_CLEANUP_FUNC(char*, freecon);
+ DEFINE_TRIVIAL_CLEANUP_FUNC(context_t, context_free);
diff --git a/src/basic/time-util.c b/src/basic/time-util.c
-index bfe2c60da173..d7ef30d2fe52 100644
+index 105584e2e72f..eb0bed47dac3 100644
--- a/src/basic/time-util.c
+++ b/src/basic/time-util.c
@@ -26,6 +26,7 @@
@@ -244,7 +245,7 @@ index 27dc9e43c3e2..b1a83023600b 100644
BUS_DEFINE_PROPERTY_GET(bus_property_get_tasks_max, "t", TasksMax, tasks_max_resolve);
diff --git a/src/core/dbus-execute.c b/src/core/dbus-execute.c
-index 1d0bc1ede3cb..313654913345 100644
+index d8ba3e5d9241..729e13fda64c 100644
--- a/src/core/dbus-execute.c
+++ b/src/core/dbus-execute.c
@@ -41,6 +41,7 @@
@@ -268,7 +269,7 @@ index 7862beaacb6d..3b1ea53a5f0d 100644
int bus_property_get_triggered_unit(
sd_bus *bus,
diff --git a/src/core/execute.c b/src/core/execute.c
-index abc164ff5bef..f04b8ba05002 100644
+index 89dbf6fbd2c1..9762dc57443c 100644
--- a/src/core/execute.c
+++ b/src/core/execute.c
@@ -88,6 +88,7 @@
@@ -292,7 +293,7 @@ index 09ccd613e32c..f4e64fa283e9 100644
#if HAVE_KMOD
#include "module-util.h"
diff --git a/src/core/service.c b/src/core/service.c
-index 49ad166c2604..c3b14067e201 100644
+index 17f27a4abce3..e5dcc532d0ce 100644
--- a/src/core/service.c
+++ b/src/core/service.c
@@ -41,6 +41,7 @@
@@ -316,10 +317,10 @@ index 35885dfb47c4..bb9f0660a6a0 100644
#define DEFAULT_MAX_USE_LOWER (uint64_t) (1ULL*1024ULL*1024ULL) /* 1 MiB */
#define DEFAULT_MAX_USE_UPPER (uint64_t) (4ULL*1024ULL*1024ULL*1024ULL) /* 4 GiB */
diff --git a/src/journal-remote/journal-remote-main.c b/src/journal-remote/journal-remote-main.c
-index ac2bf648d2af..06c86f0201af 100644
+index 88e42d3a984b..0f08376e5399 100644
--- a/src/journal-remote/journal-remote-main.c
+++ b/src/journal-remote/journal-remote-main.c
-@@ -21,6 +21,7 @@
+@@ -22,6 +22,7 @@
#include "stat-util.h"
#include "string-table.h"
#include "strv.h"
@@ -328,19 +329,31 @@ index ac2bf648d2af..06c86f0201af 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 95b6bfee172a..e0bcfb9d4233 100644
+index e5feec83bce6..c3aec1e219d7 100644
--- a/src/journal/journalctl.c
+++ b/src/journal/journalctl.c
-@@ -68,6 +68,7 @@
+@@ -69,6 +69,7 @@
#include "unit-name.h"
#include "user-util.h"
#include "varlink.h"
+#include "missing_stdlib.h"
#define DEFAULT_FSS_INTERVAL_USEC (15*USEC_PER_MINUTE)
+ #define PROCESS_INOTIFY_INTERVAL 1024 /* Every 1,024 messages processed */
+diff --git a/src/journal/sd-journal.c b/src/journal/sd-journal.c
+index 3fa98dfda237..e655d77e714a 100644
+--- a/src/journal/sd-journal.c
++++ b/src/journal/sd-journal.c
+@@ -40,6 +40,7 @@
+ #include "string-util.h"
+ #include "strv.h"
+ #include "syslog-util.h"
++#include "missing_stdlib.h"
+
+ #define JOURNAL_FILES_MAX 7168
diff --git a/src/libsystemd/sd-bus/bus-message.c b/src/libsystemd/sd-bus/bus-message.c
-index eb029e445326..8da2c5d51a75 100644
+index 73127dfe0253..cc8635dea591 100644
--- a/src/libsystemd/sd-bus/bus-message.c
+++ b/src/libsystemd/sd-bus/bus-message.c
@@ -21,6 +21,7 @@
@@ -352,7 +365,7 @@ index eb029e445326..8da2c5d51a75 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 ae643cacc740..f766e235206d 100644
+index 6d140348ec4c..9126b8801bc5 100644
--- a/src/libsystemd/sd-bus/bus-objects.c
+++ b/src/libsystemd/sd-bus/bus-objects.c
@@ -13,6 +13,7 @@
@@ -376,7 +389,7 @@ index 18d30d010a20..be2ab703f8ed 100644
#define SNDBUF_SIZE (8*1024*1024)
diff --git a/src/libsystemd/sd-bus/sd-bus.c b/src/libsystemd/sd-bus/sd-bus.c
-index 058492a83eec..54c896f572b9 100644
+index 7ad03680f48d..b9d2181e4910 100644
--- a/src/libsystemd/sd-bus/sd-bus.c
+++ b/src/libsystemd/sd-bus/sd-bus.c
@@ -41,6 +41,7 @@
@@ -400,7 +413,7 @@ index 8de0a859ee94..58044b6ba908 100644
#define MAX_SIZE (2*1024*1024)
diff --git a/src/locale/keymap-util.c b/src/locale/keymap-util.c
-index 519dd0d188cf..a8f536915bb2 100644
+index 30669a9359e5..6544b3722099 100644
--- a/src/locale/keymap-util.c
+++ b/src/locale/keymap-util.c
@@ -21,6 +21,7 @@
@@ -412,19 +425,19 @@ index 519dd0d188cf..a8f536915bb2 100644
static bool startswith_comma(const char *s, const char *prefix) {
s = startswith(s, prefix);
diff --git a/src/login/pam_systemd.c b/src/login/pam_systemd.c
-index aa6e5ea7aca8..c439c21b2872 100644
+index 84bea21ab7be..49720c7f742e 100644
--- a/src/login/pam_systemd.c
+++ b/src/login/pam_systemd.c
-@@ -28,6 +28,7 @@
- #include "hostname-util.h"
+@@ -31,6 +31,7 @@
+ #include "locale-util.h"
#include "login-util.h"
#include "macro.h"
+#include "missing_stdlib.h"
+ #include "pam-util.h"
#include "parse-util.h"
#include "path-util.h"
- #include "process-util.h"
diff --git a/src/network/generator/network-generator.c b/src/network/generator/network-generator.c
-index 81afa9530762..2c5328f97c63 100644
+index bed1e42697c4..e4847c2beea2 100644
--- a/src/network/generator/network-generator.c
+++ b/src/network/generator/network-generator.c
@@ -13,6 +13,7 @@
@@ -460,10 +473,10 @@ index 364356da5622..47d4ea44e40f 100644
NSS_GETHOSTBYNAME_PROTOTYPES(mymachines);
NSS_GETPW_PROTOTYPES(mymachines);
diff --git a/src/portable/portable.c b/src/portable/portable.c
-index 34b123e84692..5a48504d00ac 100644
+index e18826ab2685..d9f4b81d8937 100644
--- a/src/portable/portable.c
+++ b/src/portable/portable.c
-@@ -29,6 +29,7 @@
+@@ -31,6 +31,7 @@
#include "strv.h"
#include "tmpfile-util.h"
#include "user-util.h"
@@ -472,10 +485,10 @@ index 34b123e84692..5a48504d00ac 100644
static const char profile_dirs[] = CONF_PATHS_NULSTR("systemd/portable/profile");
diff --git a/src/resolve/resolvectl.c b/src/resolve/resolvectl.c
-index 0a96a18b3836..432d6ebc3730 100644
+index f20e8c44b8bc..9f6c4e8f49a7 100644
--- a/src/resolve/resolvectl.c
+++ b/src/resolve/resolvectl.c
-@@ -31,6 +31,7 @@
+@@ -33,6 +33,7 @@
#include "strv.h"
#include "terminal-util.h"
#include "verbs.h"
@@ -496,7 +509,7 @@ index b21fe393265f..af2640005c1d 100644
struct CGroupInfo {
char *cgroup_path;
diff --git a/src/shared/bus-unit-util.c b/src/shared/bus-unit-util.c
-index 22a15493d7f3..3f4c51975675 100644
+index 28d85944a8a7..4743a84a417e 100644
--- a/src/shared/bus-unit-util.c
+++ b/src/shared/bus-unit-util.c
@@ -34,6 +34,7 @@
@@ -508,10 +521,10 @@ index 22a15493d7f3..3f4c51975675 100644
int bus_parse_unit_info(sd_bus_message *message, UnitInfo *u) {
assert(message);
diff --git a/src/shared/bus-util.c b/src/shared/bus-util.c
-index aea46d311996..223426298144 100644
+index 8e6a6e2ce2de..0cbf4b1997df 100644
--- a/src/shared/bus-util.c
+++ b/src/shared/bus-util.c
-@@ -34,6 +34,7 @@
+@@ -30,6 +30,7 @@
#include "stdio-util.h"
#include "strv.h"
#include "user-util.h"
@@ -544,10 +557,10 @@ index 7c4fc7021dec..3fbaf5a63969 100644
enum {
IMPORTER_STATE_LINE = 0, /* waiting to read, or reading line */
diff --git a/src/shared/logs-show.c b/src/shared/logs-show.c
-index 95b2e3376e9a..facc23aaecd5 100644
+index 2bfd0b60c26b..6a1bb3a0760f 100644
--- a/src/shared/logs-show.c
+++ b/src/shared/logs-show.c
-@@ -37,6 +37,7 @@
+@@ -39,6 +39,7 @@
#include "time-util.h"
#include "utf8.h"
#include "util.h"
@@ -592,7 +605,7 @@ index 7cb7d8a477e9..8e7d7f9e7ca6 100644
static bool uid_range_intersect(UidRange *range, uid_t start, uid_t nr) {
assert(range);
diff --git a/src/socket-proxy/socket-proxyd.c b/src/socket-proxy/socket-proxyd.c
-index 2fb9c854fa50..58cef31458f7 100644
+index 2ee6fc2f0a6a..4a9934f9c14d 100644
--- a/src/socket-proxy/socket-proxyd.c
+++ b/src/socket-proxy/socket-proxyd.c
@@ -26,6 +26,7 @@
@@ -628,7 +641,7 @@ index ca38f5608791..9d8cf4d2807b 100644
_printf_(2,3)
static void path_prepend(char **path, const char *fmt, ...) {
diff --git a/src/udev/udev-event.c b/src/udev/udev-event.c
-index 58d484280aa5..90eab6806b55 100644
+index eb51139e519c..977cc16e9d7c 100644
--- a/src/udev/udev-event.c
+++ b/src/udev/udev-event.c
@@ -34,6 +34,7 @@
@@ -640,7 +653,7 @@ index 58d484280aa5..90eab6806b55 100644
typedef struct Spawn {
sd_device *device;
diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c
-index 6168b332d3b2..245fe0a64d22 100644
+index b9b350d1ef7a..2c114cc77572 100644
--- a/src/udev/udev-rules.c
+++ b/src/udev/udev-rules.c
@@ -30,6 +30,7 @@
diff --git a/meta/recipes-core/systemd/systemd/0006-Include-netinet-if_ether.h.patch b/meta/recipes-core/systemd/systemd/0006-Include-netinet-if_ether.h.patch
index ea003fd7da..9142d7b45c 100644
--- a/meta/recipes-core/systemd/systemd/0006-Include-netinet-if_ether.h.patch
+++ b/meta/recipes-core/systemd/systemd/0006-Include-netinet-if_ether.h.patch
@@ -1,4 +1,4 @@
-From 3932ce7f6c8ace5e1210aad20e1a141cb29329b1 Mon Sep 17 00:00:00 2001
+From 47818052121d135632f5e46c369e3e4706a0f9e0 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 26 Oct 2017 22:10:42 -0700
Subject: [PATCH] Include netinet/if_ether.h
@@ -53,7 +53,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
19 files changed, 18 insertions(+), 4 deletions(-)
diff --git a/src/libsystemd-network/sd-dhcp6-client.c b/src/libsystemd-network/sd-dhcp6-client.c
-index 5417ba8c5feb..d3aba928dd96 100644
+index eac2e725cce7..1beae7ba91cc 100644
--- a/src/libsystemd-network/sd-dhcp6-client.c
+++ b/src/libsystemd-network/sd-dhcp6-client.c
@@ -5,7 +5,6 @@
@@ -65,7 +65,7 @@ index 5417ba8c5feb..d3aba928dd96 100644
#include "sd-dhcp6-client.h"
diff --git a/src/libsystemd/sd-netlink/netlink-types.c b/src/libsystemd/sd-netlink/netlink-types.c
-index a55460f03407..6f9cd527c800 100644
+index e35127a4cd2e..4f6ad9ef5886 100644
--- a/src/libsystemd/sd-netlink/netlink-types.c
+++ b/src/libsystemd/sd-netlink/netlink-types.c
@@ -3,6 +3,7 @@
@@ -77,7 +77,7 @@ index a55460f03407..6f9cd527c800 100644
#include <linux/netlink.h>
#include <linux/rtnetlink.h>
diff --git a/src/machine/machine-dbus.c b/src/machine/machine-dbus.c
-index 3b2ac3829859..760ccb445cd0 100644
+index a2990452af17..5af350883c28 100644
--- a/src/machine/machine-dbus.c
+++ b/src/machine/machine-dbus.c
@@ -3,6 +3,7 @@
@@ -89,7 +89,7 @@ index 3b2ac3829859..760ccb445cd0 100644
/* When we include libgen.h because we need dirname() we immediately
* undefine basename() since libgen.h defines it as a macro to the POSIX
diff --git a/src/network/netdev/bond.c b/src/network/netdev/bond.c
-index 185b155440e7..dc1cd236c814 100644
+index 8df39e35843f..8d697894f970 100644
--- a/src/network/netdev/bond.c
+++ b/src/network/netdev/bond.c
@@ -1,5 +1,6 @@
@@ -100,7 +100,7 @@ index 185b155440e7..dc1cd236c814 100644
#include "bond.h"
#include "conf-parser.h"
diff --git a/src/network/netdev/bridge.c b/src/network/netdev/bridge.c
-index 59a40faef8fa..8e821a3216b3 100644
+index 6b8f9944612e..7f81ec25c407 100644
--- a/src/network/netdev/bridge.c
+++ b/src/network/netdev/bridge.c
@@ -1,5 +1,6 @@
@@ -111,7 +111,7 @@ index 59a40faef8fa..8e821a3216b3 100644
#include "bridge.h"
diff --git a/src/network/netdev/macsec.c b/src/network/netdev/macsec.c
-index 25dc23ff0338..f20d11fbcf53 100644
+index 7d1fec3afe6d..e948a335336d 100644
--- a/src/network/netdev/macsec.c
+++ b/src/network/netdev/macsec.c
@@ -1,5 +1,6 @@
@@ -134,7 +134,7 @@ index 09a5f4822e03..873299b1f98a 100644
#include "bond.h"
#include "bridge.h"
diff --git a/src/network/netdev/netdev.c b/src/network/netdev/netdev.c
-index 6908c4e811b0..e0d8c459ab63 100644
+index f8121a48ed92..437f411c61e8 100644
--- a/src/network/netdev/netdev.c
+++ b/src/network/netdev/netdev.c
@@ -1,5 +1,6 @@
@@ -145,7 +145,7 @@ index 6908c4e811b0..e0d8c459ab63 100644
#include <netinet/in.h>
diff --git a/src/network/networkd-brvlan.c b/src/network/networkd-brvlan.c
-index c3c5d535ac66..ebea408c89a8 100644
+index 41f09287f2b7..b67ce4fc8844 100644
--- a/src/network/networkd-brvlan.c
+++ b/src/network/networkd-brvlan.c
@@ -4,6 +4,7 @@
@@ -157,7 +157,7 @@ index c3c5d535ac66..ebea408c89a8 100644
#include <stdbool.h>
diff --git a/src/network/networkd-dhcp-common.c b/src/network/networkd-dhcp-common.c
-index 6465a8cfe9c7..bd4b2cdfac15 100644
+index 8664d8cdc0d4..e9f91f74c1a1 100644
--- a/src/network/networkd-dhcp-common.c
+++ b/src/network/networkd-dhcp-common.c
@@ -4,6 +4,7 @@
@@ -169,21 +169,22 @@ index 6465a8cfe9c7..bd4b2cdfac15 100644
#include "parse-util.h"
#include "string-table.h"
diff --git a/src/network/networkd-dhcp4.c b/src/network/networkd-dhcp4.c
-index 8ca87d99d4db..a66284896cf3 100644
+index 13e3e32f40e8..5394399c9150 100644
--- a/src/network/networkd-dhcp4.c
+++ b/src/network/networkd-dhcp4.c
-@@ -1,8 +1,8 @@
+@@ -1,9 +1,9 @@
/* SPDX-License-Identifier: LGPL-2.1+ */
+#include <netinet/if_ether.h>
#include <netinet/in.h>
+ #include <netinet/ip.h>
#include <linux/if.h>
-#include <linux/if_arp.h>
#include "alloc-util.h"
#include "dhcp-client-internal.h"
diff --git a/src/network/networkd-dhcp6.c b/src/network/networkd-dhcp6.c
-index 647623ac3778..325c641c6231 100644
+index 7304270c60b1..099064f64715 100644
--- a/src/network/networkd-dhcp6.c
+++ b/src/network/networkd-dhcp6.c
@@ -3,9 +3,9 @@
@@ -198,7 +199,7 @@ index 647623ac3778..325c641c6231 100644
#include "sd-dhcp6-client.h"
diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
-index 2e60adbf7818..05aa8672d585 100644
+index 99d4b29c31ec..e8b467d6ac09 100644
--- a/src/network/networkd-link.c
+++ b/src/network/networkd-link.c
@@ -1,8 +1,8 @@
@@ -212,7 +213,7 @@ index 2e60adbf7818..05aa8672d585 100644
#include "alloc-util.h"
diff --git a/src/network/networkd-network.c b/src/network/networkd-network.c
-index 6e443975f171..d1aab0ca5ba2 100644
+index 2e716b291e97..56f18cea57fe 100644
--- a/src/network/networkd-network.c
+++ b/src/network/networkd-network.c
@@ -1,5 +1,6 @@
@@ -232,7 +233,7 @@ index 25b939639775..530e4928835c 100644
#include "dhcp6-internal.h"
#include "dhcp6-protocol.h"
diff --git a/src/shared/ethtool-util.c b/src/shared/ethtool-util.c
-index 3119b2b92e3b..927ddd067eef 100644
+index 00a71d64a638..4593e89120b8 100644
--- a/src/shared/ethtool-util.c
+++ b/src/shared/ethtool-util.c
@@ -1,5 +1,6 @@
@@ -243,19 +244,19 @@ index 3119b2b92e3b..927ddd067eef 100644
#include <sys/ioctl.h>
#include <linux/ethtool.h>
diff --git a/src/shared/ethtool-util.h b/src/shared/ethtool-util.h
-index d408bcd90a0b..7a1e399af023 100644
+index c1d5d7590ef9..b3e018bf76e9 100644
--- a/src/shared/ethtool-util.h
+++ b/src/shared/ethtool-util.h
-@@ -2,6 +2,7 @@
- #pragma once
+@@ -3,6 +3,7 @@
#include <macro.h>
+ #include <net/ethernet.h>
+#include <netinet/if_ether.h>
#include <linux/ethtool.h>
#include "conf-parser.h"
diff --git a/src/udev/net/link-config.c b/src/udev/net/link-config.c
-index 7b07e2f38fa8..18680a8e5484 100644
+index 0332e99269c9..ff3aead4a779 100644
--- a/src/udev/net/link-config.c
+++ b/src/udev/net/link-config.c
@@ -1,5 +1,6 @@
diff --git a/meta/recipes-core/systemd/systemd/0010-fix-missing-of-__register_atfork-for-non-glibc-build.patch b/meta/recipes-core/systemd/systemd/0010-fix-missing-of-__register_atfork-for-non-glibc-build.patch
index 0de1121906..5ee501f235 100644
--- a/meta/recipes-core/systemd/systemd/0010-fix-missing-of-__register_atfork-for-non-glibc-build.patch
+++ b/meta/recipes-core/systemd/systemd/0010-fix-missing-of-__register_atfork-for-non-glibc-build.patch
@@ -1,4 +1,4 @@
-From 5166a6657570d4072cdce118621791e4a8186e07 Mon Sep 17 00:00:00 2001
+From eed7427db98cc01db7e9b3479655d68b044bc85b 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
@@ -12,7 +12,7 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
1 file changed, 7 insertions(+)
diff --git a/src/basic/process-util.c b/src/basic/process-util.c
-index 9b6c4c31f713..24fec5ecb53a 100644
+index 5de366f830e8..644f53aee005 100644
--- a/src/basic/process-util.c
+++ b/src/basic/process-util.c
@@ -18,6 +18,9 @@
@@ -25,7 +25,7 @@ index 9b6c4c31f713..24fec5ecb53a 100644
#include "alloc-util.h"
#include "architecture.h"
-@@ -1114,11 +1117,15 @@ void reset_cached_pid(void) {
+@@ -1116,11 +1119,15 @@ void reset_cached_pid(void) {
cached_pid = CACHED_PID_UNSET;
}
diff --git a/meta/recipes-core/systemd/systemd/0011-Use-uintmax_t-for-handling-rlim_t.patch b/meta/recipes-core/systemd/systemd/0011-Use-uintmax_t-for-handling-rlim_t.patch
index e00600ab7c..e5d9515e86 100644
--- a/meta/recipes-core/systemd/systemd/0011-Use-uintmax_t-for-handling-rlim_t.patch
+++ b/meta/recipes-core/systemd/systemd/0011-Use-uintmax_t-for-handling-rlim_t.patch
@@ -1,4 +1,4 @@
-From f6df7f25a6bb00d5540915216adfff8afefec2b0 Mon Sep 17 00:00:00 2001
+From 4aa91347ae975051dbe4dd2f98a1f4f459f2604f Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 15:12:41 +0800
Subject: [PATCH] Use uintmax_t for handling rlim_t
@@ -28,10 +28,10 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
3 files changed, 8 insertions(+), 14 deletions(-)
diff --git a/src/basic/format-util.h b/src/basic/format-util.h
-index 59622508a333..779b6826d50e 100644
+index c47fa76ea8ff..14a78d9f5fd0 100644
--- a/src/basic/format-util.h
+++ b/src/basic/format-util.h
-@@ -44,13 +44,7 @@
+@@ -32,13 +32,7 @@ assert_cc(sizeof(gid_t) == sizeof(uint32_t));
# define PRI_TIMEX "li"
#endif
@@ -78,10 +78,10 @@ index 2dc13eabc30d..0633cc67f417 100644
return 1;
}
diff --git a/src/core/execute.c b/src/core/execute.c
-index f04b8ba05002..084cf1420078 100644
+index 9762dc57443c..4a3421bb3ee6 100644
--- a/src/core/execute.c
+++ b/src/core/execute.c
-@@ -4455,9 +4455,9 @@ void exec_context_dump(const ExecContext *c, FILE* f, const char *prefix) {
+@@ -4567,9 +4567,9 @@ void exec_context_dump(const ExecContext *c, FILE* f, const char *prefix) {
for (i = 0; i < RLIM_NLIMITS; i++)
if (c->rlimit[i]) {
fprintf(f, "%sLimit%s: " RLIM_FMT "\n",
diff --git a/meta/recipes-core/systemd/systemd/0014-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch b/meta/recipes-core/systemd/systemd/0014-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch
index aa23c7ab7d..049096d2a9 100644
--- a/meta/recipes-core/systemd/systemd/0014-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch
+++ b/meta/recipes-core/systemd/systemd/0014-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch
@@ -1,4 +1,4 @@
-From 7874912817b5ac7ed7f8557359a12d9d4b2f53eb Mon Sep 17 00:00:00 2001
+From 62fac5e3ff0fccd329cdc49605258b6d0e573a3e Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Wed, 28 Feb 2018 21:25:22 -0800
Subject: [PATCH] test-sizeof.c: Disable tests for missing typedefs in musl
@@ -13,10 +13,10 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
1 file changed, 4 insertions(+)
diff --git a/src/test/test-sizeof.c b/src/test/test-sizeof.c
-index 7fc16a62b656..a710db5370b8 100644
+index 1020e0cb3153..c65062d2562c 100644
--- a/src/test/test-sizeof.c
+++ b/src/test/test-sizeof.c
-@@ -42,8 +42,10 @@ int main(void) {
+@@ -44,8 +44,10 @@ int main(void) {
info(unsigned);
info(long unsigned);
info(long long unsigned);
@@ -27,7 +27,7 @@ index 7fc16a62b656..a710db5370b8 100644
info(float);
info(double);
-@@ -61,7 +63,9 @@ int main(void) {
+@@ -63,7 +65,9 @@ int main(void) {
info(ssize_t);
info(time_t);
info(usec_t);
diff --git a/meta/recipes-core/systemd/systemd/0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch b/meta/recipes-core/systemd/systemd/0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
index 56f45381de..1934b783dc 100644
--- a/meta/recipes-core/systemd/systemd/0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
+++ b/meta/recipes-core/systemd/systemd/0017-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
@@ -1,4 +1,4 @@
-From a6f3359042219abaa8ae06dfcce41a4721e8c21f Mon Sep 17 00:00:00 2001
+From bb28a9c870bb47dcdb1ccebaa8e3a5a86730a244 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Wed, 4 Jul 2018 15:00:44 +0800
Subject: [PATCH] Do not disable buffering when writing to oom_score_adj
@@ -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 24fec5ecb53a..642b02443c85 100644
+index 644f53aee005..acaf13591396 100644
--- a/src/basic/process-util.c
+++ b/src/basic/process-util.c
-@@ -1492,7 +1492,7 @@ int set_oom_score_adjust(int value) {
+@@ -1500,7 +1500,7 @@ int set_oom_score_adjust(int value) {
sprintf(t, "%i", value);
return write_string_file("/proc/self/oom_score_adj", t,
@@ -36,4 +36,4 @@ index 24fec5ecb53a..642b02443c85 100644
+ WRITE_STRING_FILE_VERIFY_ON_FAILURE);
}
- static const char *const ioprio_class_table[] = {
+ int pidfd_get_pid(int fd, pid_t *ret) {
diff --git a/meta/recipes-core/systemd/systemd_244.3.bb b/meta/recipes-core/systemd/systemd_245.5.bb
index 7ab01fb8ce..ece4220987 100644
--- a/meta/recipes-core/systemd/systemd_244.3.bb
+++ b/meta/recipes-core/systemd/systemd_245.5.bb
@@ -47,6 +47,7 @@ SRC_URI_MUSL = "\
file://0002-src-login-brightness.c-include-sys-wait.h.patch \
file://0003-src-basic-copy.c-include-signal.h.patch \
file://0004-src-shared-cpu-set-util.h-add-__cpu_mask-definition.patch \
+ file://0001-Handle-missing-gshadow.patch \
"
PAM_PLUGINS = " \
@@ -83,6 +84,7 @@ PACKAGECONFIG ??= " \
sysvinit \
timedated \
timesyncd \
+ userdb \
utmp \
vconsole \
xz \
@@ -97,6 +99,7 @@ PACKAGECONFIG_remove_libc-musl = " \
nss-mymachines \
nss-resolve \
sysusers \
+ userdb \
utmp \
"
@@ -174,6 +177,7 @@ PACKAGECONFIG[timedated] = "-Dtimedated=true,-Dtimedated=false"
PACKAGECONFIG[timesyncd] = "-Dtimesyncd=true,-Dtimesyncd=false"
PACKAGECONFIG[usrmerge] = "-Dsplit-usr=false,-Dsplit-usr=true"
PACKAGECONFIG[sbinmerge] = "-Dsplit-bin=false,-Dsplit-bin=true"
+PACKAGECONFIG[userdb] = "-Duserdb=true,-Duserdb=false"
PACKAGECONFIG[utmp] = "-Dutmp=true,-Dutmp=false"
PACKAGECONFIG[valgrind] = "-DVALGRIND=1,,valgrind"
PACKAGECONFIG[vconsole] = "-Dvconsole=true,-Dvconsole=false,,${PN}-vconsole-setup"
@@ -494,10 +498,13 @@ FILES_${PN}-extra-utils = "\
CONFFILES_${PN} = "${sysconfdir}/systemd/coredump.conf \
${sysconfdir}/systemd/journald.conf \
${sysconfdir}/systemd/logind.conf \
- ${sysconfdir}/systemd/system.conf \
- ${sysconfdir}/systemd/user.conf \
+ ${sysconfdir}/systemd/networkd.conf \
+ ${sysconfdir}/systemd/pstore.conf \
${sysconfdir}/systemd/resolved.conf \
+ ${sysconfdir}/systemd/sleep.conf \
+ ${sysconfdir}/systemd/system.conf \
${sysconfdir}/systemd/timesyncd.conf \
+ ${sysconfdir}/systemd/user.conf \
"
FILES_${PN} = " ${base_bindir}/* \