[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1057861: bookworm-pu: package systemd/252.20-1~deb12u1



Package: release.debian.org
Severity: normal
Tags: bookworm
User: release.debian.org@packages.debian.org
Usertags: pu
X-Debbugs-Cc: pkg-systemd-maintainers@lists.alioth.debian.org

Dear Release Team,

We would like to upload the latest stable point release of systemd 252
to bookworm-p-u. Stable release branches are maintained upstream with
the intention of providing bug fixes only and no compatibility
breakages, and with automated non-trivial CI jobs that also cover
Debian and Ubuntu. I have already uploaded to p-u.

No packaging changes besides refreshing patches. Attached debdiff
excludes hwdb.d/ changes, which are just a large number of hardware
vendor/devices IDs and constitutes the bulk of the changes. The list of
commits included can be seen at:

https://github.com/systemd/systemd-stable/compare/v252.19...v252.20

-- 
Kind regards,
Luca Boccassi
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/debian/changelog systemd-252.20/debian/changelog
--- systemd-252.19/debian/changelog	2023-11-10 00:25:41.000000000 +0000
+++ systemd-252.20/debian/changelog	2023-12-06 23:13:24.000000000 +0000
@@ -1,3 +1,10 @@
+systemd (252.20-1~deb12u1) bookworm; urgency=medium
+
+  * New upstream version 252.20
+  * Refresh patches
+
+ -- Luca Boccassi <bluca@debian.org>  Wed, 06 Dec 2023 23:13:24 +0000
+
 systemd (252.19-1~deb12u1) bookworm; urgency=medium
 
   * New upstream version 252.19
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/debian/patches/debian/Add-support-for-TuxOnIce-hibernation.patch systemd-252.20/debian/patches/debian/Add-support-for-TuxOnIce-hibernation.patch
--- systemd-252.19/debian/patches/debian/Add-support-for-TuxOnIce-hibernation.patch	2023-11-10 00:25:20.000000000 +0000
+++ systemd-252.20/debian/patches/debian/Add-support-for-TuxOnIce-hibernation.patch	2023-12-06 23:13:24.000000000 +0000
@@ -12,10 +12,10 @@
  1 file changed, 6 insertions(+)
 
 diff --git a/src/shared/sleep-config.c b/src/shared/sleep-config.c
-index 854ab16..2015667 100644
+index 69b3e35..5664752 100644
 --- a/src/shared/sleep-config.c
 +++ b/src/shared/sleep-config.c
-@@ -968,6 +968,12 @@ static bool enough_swap_for_hibernation(void) {
+@@ -973,6 +973,12 @@ static bool enough_swap_for_hibernation(void) {
          if (getenv_bool("SYSTEMD_BYPASS_HIBERNATION_MEMORY_CHECK") > 0)
                  return true;
  
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/debian/patches/debian/Don-t-enable-audit-by-default.patch systemd-252.20/debian/patches/debian/Don-t-enable-audit-by-default.patch
--- systemd-252.19/debian/patches/debian/Don-t-enable-audit-by-default.patch	2023-11-10 00:25:20.000000000 +0000
+++ systemd-252.20/debian/patches/debian/Don-t-enable-audit-by-default.patch	2023-12-06 23:13:24.000000000 +0000
@@ -16,10 +16,10 @@
  3 files changed, 3 insertions(+), 3 deletions(-)
 
 diff --git a/man/journald.conf.xml b/man/journald.conf.xml
-index 6510afe..45eae3a 100644
+index 160544a..7e6f175 100644
 --- a/man/journald.conf.xml
 +++ b/man/journald.conf.xml
-@@ -429,7 +429,7 @@
+@@ -438,7 +438,7 @@
          <command>systemd-journald</command> collects generated audit records, it just controls whether it
          tells the kernel to generate them. This means if another tool turns on auditing even if
          <command>systemd-journald</command> left it off, it will still collect the generated
@@ -29,10 +29,10 @@
  
        <varlistentry>
 diff --git a/src/journal/journald-server.c b/src/journal/journald-server.c
-index 3e55795..314f684 100644
+index a78e2c0..efeb50c 100644
 --- a/src/journal/journald-server.c
 +++ b/src/journal/journald-server.c
-@@ -2273,7 +2273,7 @@ int server_init(Server *s, const char *namespace) {
+@@ -2279,7 +2279,7 @@ int server_init(Server *s, const char *namespace) {
                  .compress.threshold_bytes = UINT64_MAX,
                  .seal = true,
  
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/debian/patches/debian/fsckd-daemon-for-inter-fsckd-communication.patch systemd-252.20/debian/patches/debian/fsckd-daemon-for-inter-fsckd-communication.patch
--- systemd-252.19/debian/patches/debian/fsckd-daemon-for-inter-fsckd-communication.patch	2023-11-10 00:25:20.000000000 +0000
+++ systemd-252.20/debian/patches/debian/fsckd-daemon-for-inter-fsckd-communication.patch	2023-12-06 23:13:24.000000000 +0000
@@ -46,13 +46,13 @@
  man/systemd-fsckd.service.xml      | 162 +++++++++
  meson.build                        |   9 +
  po/POTFILES.in                     |   1 +
- src/fsckd/fsckd.c                  | 697 +++++++++++++++++++++++++++++++++++++
+ src/fsckd/fsckd.c                  | 702 +++++++++++++++++++++++++++++++++++++
  units/meson.build                  |   2 +
  units/systemd-fsck-root.service.in |   2 +
  units/systemd-fsck@.service.in     |   3 +-
  units/systemd-fsckd.service.in     |  17 +
  units/systemd-fsckd.socket         |  15 +
- 10 files changed, 908 insertions(+), 1 deletion(-)
+ 10 files changed, 913 insertions(+), 1 deletion(-)
  create mode 100644 man/systemd-fsckd.service.xml
  create mode 100644 src/fsckd/fsckd.c
  create mode 100644 units/systemd-fsckd.service.in
@@ -239,7 +239,7 @@
 +
 +</refentry>
 diff --git a/meson.build b/meson.build
-index c108004..643b42b 100644
+index b9f2c7e..d2b021d 100644
 --- a/meson.build
 +++ b/meson.build
 @@ -3367,6 +3367,15 @@ executable(
@@ -269,10 +269,10 @@
 +src/fsckd/fsckd.c
 diff --git a/src/fsckd/fsckd.c b/src/fsckd/fsckd.c
 new file mode 100644
-index 0000000..8a85b69
+index 0000000..71dc86d
 --- /dev/null
 +++ b/src/fsckd/fsckd.c
-@@ -0,0 +1,697 @@
+@@ -0,0 +1,702 @@
 +/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
 +
 +/***
@@ -384,6 +384,11 @@
 +DEFINE_TRIVIAL_CLEANUP_FUNC(Client*, client_free);
 +DEFINE_TRIVIAL_CLEANUP_FUNC(Manager*, manager_free);
 +
++static void init_gettext(void) {
++        setlocale(LC_ALL, "");
++        textdomain(GETTEXT_PACKAGE);
++}
++
 +static bool plymouth_running(void) {
 +        return access("/run/plymouth/pid", F_OK) >= 0;
 +}
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/debian/patches/debian/Re-enable-journal-forwarding-to-syslog.patch systemd-252.20/debian/patches/debian/Re-enable-journal-forwarding-to-syslog.patch
--- systemd-252.19/debian/patches/debian/Re-enable-journal-forwarding-to-syslog.patch	2023-11-10 00:25:20.000000000 +0000
+++ systemd-252.20/debian/patches/debian/Re-enable-journal-forwarding-to-syslog.patch	2023-12-06 23:13:24.000000000 +0000
@@ -17,7 +17,7 @@
  3 files changed, 3 insertions(+), 2 deletions(-)
 
 diff --git a/man/journald.conf.xml b/man/journald.conf.xml
-index 33d8c55..6510afe 100644
+index 2db6a0f..160544a 100644
 --- a/man/journald.conf.xml
 +++ b/man/journald.conf.xml
 @@ -356,7 +356,7 @@
@@ -30,10 +30,10 @@
          <literal>systemd.journald.forward_to_kmsg</literal>,
          <literal>systemd.journald.forward_to_console</literal>, and
 diff --git a/src/journal/journald-server.c b/src/journal/journald-server.c
-index 4c5eadc..3e55795 100644
+index 77aef79..a78e2c0 100644
 --- a/src/journal/journald-server.c
 +++ b/src/journal/journald-server.c
-@@ -2283,6 +2283,7 @@ int server_init(Server *s, const char *namespace) {
+@@ -2289,6 +2289,7 @@ int server_init(Server *s, const char *namespace) {
                  .ratelimit_interval = DEFAULT_RATE_LIMIT_INTERVAL,
                  .ratelimit_burst = DEFAULT_RATE_LIMIT_BURST,
  
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/debian/patches/debian/Use-Debian-specific-config-files.patch systemd-252.20/debian/patches/debian/Use-Debian-specific-config-files.patch
--- systemd-252.19/debian/patches/debian/Use-Debian-specific-config-files.patch	2023-11-10 00:25:20.000000000 +0000
+++ systemd-252.20/debian/patches/debian/Use-Debian-specific-config-files.patch	2023-12-06 23:13:24.000000000 +0000
@@ -13,10 +13,10 @@
  3 files changed, 108 insertions(+), 117 deletions(-)
 
 diff --git a/src/firstboot/firstboot.c b/src/firstboot/firstboot.c
-index 8db73c2..fa41931 100644
+index dee2742..d66cf87 100644
 --- a/src/firstboot/firstboot.c
 +++ b/src/firstboot/firstboot.c
-@@ -309,12 +309,16 @@ static int prompt_locale(void) {
+@@ -311,12 +311,16 @@ static int prompt_locale(void) {
  }
  
  static int process_locale(void) {
@@ -36,7 +36,7 @@
          if (laccess(etc_localeconf, F_OK) >= 0 && !arg_force) {
                  log_debug("Found %s, assuming locale information has been configured.",
                            etc_localeconf);
-@@ -324,7 +328,7 @@ static int process_locale(void) {
+@@ -326,7 +330,7 @@ static int process_locale(void) {
          if (arg_copy_locale && arg_root) {
  
                  (void) mkdir_parents(etc_localeconf, 0755);
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/debian/patches/p11kit-switch-to-dlopen.patch systemd-252.20/debian/patches/p11kit-switch-to-dlopen.patch
--- systemd-252.19/debian/patches/p11kit-switch-to-dlopen.patch	2023-11-10 00:25:20.000000000 +0000
+++ systemd-252.20/debian/patches/p11kit-switch-to-dlopen.patch	2023-12-06 23:13:24.000000000 +0000
@@ -13,7 +13,7 @@
  7 files changed, 202 insertions(+), 60 deletions(-)
 
 diff --git a/meson.build b/meson.build
-index 3bef553..c108004 100644
+index b250474..b9f2c7e 100644
 --- a/meson.build
 +++ b/meson.build
 @@ -1461,8 +1461,10 @@ if want_p11kit != 'false' and not skip_deps
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/docs/RESOLVED-VPNS.md systemd-252.20/docs/RESOLVED-VPNS.md
--- systemd-252.19/docs/RESOLVED-VPNS.md	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/docs/RESOLVED-VPNS.md	2023-12-06 20:35:33.000000000 +0000
@@ -48,18 +48,18 @@
 
 2. Routing domains: these are very similar to search domains, but are purely
    about DNS domain name lookup routing — they are not used for qualifying
-   single-label domain names. When it comes to routing assigning a routing
+   single-label domain names. When it comes to routing, assigning a routing
    domain to a network interface is identical to assigning a search domain to
    it.
 
    Why the need to have both concepts, i.e. search *and* routing domains?
    Mostly because in many cases the qualifying of single-label names is not
-   desirable (since security-sensitive), but needs to be supported for specific
-   use-cases. Routing domains are a concept `systemd-resolved.service`
+   desirable (as it has security implications), but needs to be supported for
+   specific use-cases. Routing domains are a concept `systemd-resolved.service`
    introduced, while search domains are traditionally available and are part of
    DHCP/IPv6RA/PPP leases and thus universally supported. In many cases routing
    domains are probably the more appropriate concept, but not easily available,
-   since not part of DHCP/IPv6RA/PPP.
+   since they are not part of DHCP/IPv6RA/PPP.
 
    Routing domains for `systemd-resolved.service` are usually presented along
    with search domains in mostly the same way, but prefixed with `~` to
@@ -79,7 +79,7 @@
    these (or sub-domains thereof) defined as routing domains, will be preferably
    used for doing reverse IP to domain name lookups. e.g. declaring
    `~168.192.in-addr.arpa` on an interface means that all lookups to find the
-   domain names for IPv4 addresses 192.168.x.y are preferable routed to it.
+   domain names for IPv4 addresses 192.168.x.y are preferably routed to it.
 
 3. The `default-route` boolean. This is a simple boolean value that may be set
    on an interface. If true (the default), any DNS lookups for which no
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/.github/workflows/linter.yml systemd-252.20/.github/workflows/linter.yml
--- systemd-252.19/.github/workflows/linter.yml	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/.github/workflows/linter.yml	1970-01-01 01:00:00.000000000 +0100
@@ -1,44 +0,0 @@
----
-# vi: ts=2 sw=2 et:
-# SPDX-License-Identifier: LGPL-2.1-or-later
-# https://github.com/marketplace/actions/super-linter
-name: Lint Code Base
-
-on:
-  pull_request:
-    branches:
-      - main
-      - v[0-9]+-stable
-
-permissions:
-  contents: read
-
-jobs:
-  build:
-    name: Lint Code Base
-    runs-on: ubuntu-latest
-    concurrency:
-      group: ${{ github.workflow }}-${{ github.ref }}
-      cancel-in-progress: true
-
-    steps:
-      - name: Repo checkout
-        uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
-        with:
-          # We need a full repo clone
-          fetch-depth: 0
-
-      - name: Lint Code Base
-        uses: github/super-linter/slim@454ba4482ce2cd0c505bc592e83c06e1e37ade61
-        env:
-          DEFAULT_BRANCH: main
-          MULTI_STATUS: false
-          # Excludes:
-          #   - man/.* - all snippets in man pages (false positives due to
-          #              missing shebangs)
-          #   - .*\.(in|SKELETON) - all template/skeleton files
-          #                         except kernel-install
-          FILTER_REGEX_EXCLUDE: .*/(man/.*|([^k]|k(k|ek)*([^ek]|e[^kr]))*(k(k|ek)*e?)?\.(in|SKELETON))$
-          VALIDATE_ALL_CODEBASE: false
-          VALIDATE_BASH: true
-          VALIDATE_GITHUB_ACTIONS: true
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/hwdb.d/acpi-update.py systemd-252.20/hwdb.d/acpi-update.py
--- systemd-252.19/hwdb.d/acpi-update.py	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/hwdb.d/acpi-update.py	2023-12-06 20:35:33.000000000 +0000
@@ -1,80 +1,26 @@
 #!/usr/bin/env python3
 # SPDX-License-Identifier: LGPL-2.1-or-later
 
-from html.parser import HTMLParser
-from enum import Enum
+from csv import reader
 
-class State(Enum):
-    NOWHERE = 0
-    COMPANY = 1
-    AFTER_COMPANY = 2
-    PNPID = 3
-    AFTER_PNPID = 4
-    DATE = 5
-
-class PNPTableParser(HTMLParser):
-
-    def __init__(self):
-        HTMLParser.__init__(self)
-        self.state = State.NOWHERE
-        self.data = ""
-        self.pnpid = None
-        self.company = None
-        self.table = []
-
-    def handle_starttag(self, tag, attrs):
-
-        if tag == "td":
-            if self.state == State.NOWHERE:
-                self.state = State.COMPANY
-            elif self.state == State.AFTER_COMPANY:
-                self.state = State.PNPID
-            elif self.state == State.AFTER_PNPID:
-                self.state = State.DATE
-            else:
-                raise ValueError
-
-            self.data = ""
-
-    def handle_endtag(self, tag):
-
-        if tag == "td":
-            if self.state == State.COMPANY:
-                self.company = ' '.join(self.data.strip().split())
-                self.state = State.AFTER_COMPANY
-            elif self.state == State.PNPID:
-                self.pnpid = self.data.strip()
-                self.state = State.AFTER_PNPID
-                self.table.append((self.pnpid, self.company))
-            elif self.state == State.DATE:
-                self.state = State.NOWHERE
-            else:
-                raise ValueError
-
-    def handle_data(self, data):
-        self.data += data
-
-def read_table(a):
-
-    parser = PNPTableParser()
-
-    for line in a:
-        parser.feed(line)
-
-    parser.close()
-    parser.table.sort()
-
-    for pnpid, company in parser.table:
-        print("\nacpi:{0}*:\n ID_VENDOR_FROM_DATABASE={1}".format(pnpid, company))
-
-a = open("acpi_id_registry.html")
-b = open("pnp_id_registry.html")
-
-print('# This file is part of systemd.\n'
-      '#\n'
-      '# Data imported from:\n'
-      '#     https://uefi.org/uefi-pnp-export\n'
-      '#     https://uefi.org/uefi-acpi-export')
+# pylint: disable=consider-using-with
 
-read_table(a)
-read_table(b)
+def read_table(filename):
+    table = list(reader(open(filename, newline='')))
+    table = table[1:]  # Skip header
+    table.sort(key=lambda x: x[1])
+
+    for row in table:
+        # Some IDs end with whitespace, while they didn't in the old HTML table, so it's probably
+        # a mistake, strip it.
+        print(f'\nacpi:{row[1].strip()}*:\n ID_VENDOR_FROM_DATABASE={row[0].strip()}')
+
+print('''\
+# This file is part of systemd.
+#
+# Data imported from:
+#     https://uefi.org/uefi-pnp-export
+#     https://uefi.org/uefi-acpi-export''')
+
+read_table('acpi_id_registry.csv')
+read_table('pnp_id_registry.csv')
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/man/journald.conf.xml systemd-252.20/man/journald.conf.xml
--- systemd-252.19/man/journald.conf.xml	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/man/journald.conf.xml	2023-12-06 20:35:33.000000000 +0000
@@ -371,6 +371,15 @@
         the log buffer, for example by adding <literal>log_buf_len=8M</literal> to the kernel command line.
         <command>systemd</command> will automatically disable kernel's rate-limiting applied to userspace
         processes (equivalent to setting <literal>printk.devkmsg=on</literal>).</para></listitem>
+
+        <para>Note: Forwarding is performed synchronously within journald, and may significantly affect its
+        performance.  This is particularly relevant when using ForwardToConsole=yes in cloud environments,
+        where the console is often a slow, virtual serial port.  Since journald is implemented as a
+        conventional single-process daemon, forwarding to a completely hung console will block journald.
+        This can have a cascading effect resulting in any services synchronously logging to the blocked
+        journal also becoming blocked.  Unless actively debugging/developing something, it's generally
+        preferable to setup a <command>journalctl --follow</command> style service redirected to the
+        console, instead of ForwardToConsole=yes, for production use.</para>
       </varlistentry>
 
       <varlistentry>
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/man/org.freedesktop.login1.xml systemd-252.20/man/org.freedesktop.login1.xml
--- systemd-252.19/man/org.freedesktop.login1.xml	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/man/org.freedesktop.login1.xml	2023-12-06 20:35:33.000000000 +0000
@@ -1120,7 +1120,6 @@
       readonly (so) Seat = ...;
       @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
       readonly s TTY = '...';
-      @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
       readonly s Display = '...';
       @org.freedesktop.DBus.Property.EmitsChangedSignal("const")
       readonly b Remote = ...;
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/man/systemd.network.xml systemd-252.20/man/systemd.network.xml
--- systemd-252.19/man/systemd.network.xml	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/man/systemd.network.xml	2023-12-06 20:35:33.000000000 +0000
@@ -837,7 +837,7 @@
           value. When enabled, prefixes configured in [IPv6Prefix] sections and routes configured in
           the [IPv6RoutePrefix] sections are distributed as defined in the [IPv6SendRA] section. If
           <varname>DHCPPrefixDelegation=</varname> is enabled, then the delegated prefixes are also
-          distributed. See <varname>DCHPPrefixDelegation=</varname> setting and the [IPv6SendRA],
+          distributed. See <varname>DHCPPrefixDelegation=</varname> setting and the [IPv6SendRA],
           [IPv6Prefix], [IPv6RoutePrefix], and [DHCPPrefixDelegation] sections for more configuration
           options.</para>
         </listitem>
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/meson.build systemd-252.20/meson.build
--- systemd-252.19/meson.build	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/meson.build	2023-12-06 20:35:33.000000000 +0000
@@ -308,7 +308,7 @@
 conf.set('STATUS_UNIT_FORMAT_DEFAULT',                        'STATUS_UNIT_FORMAT_' + status_unit_format_default.to_upper())
 conf.set_quoted('STATUS_UNIT_FORMAT_DEFAULT_STR',             status_unit_format_default)
 
-conf.set10('FIRST_BOOT_FULL_PRESET',                          get_option('first-boot-full-preset'))
+conf.set10('ENABLE_FIRST_BOOT_FULL_PRESET',                   get_option('first-boot-full-preset'))
 
 conf.set10('EFI_TPM_PCR_COMPAT',                              get_option('efi-tpm-pcr-compat'))
 
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/rules.d/99-systemd.rules.in systemd-252.20/rules.d/99-systemd.rules.in
--- systemd-252.19/rules.d/99-systemd.rules.in	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/rules.d/99-systemd.rules.in	2023-12-06 20:35:33.000000000 +0000
@@ -19,7 +19,9 @@
 SUBSYSTEM=="block", TAG+="systemd"
 
 # We can't make any conclusions about suspended DM devices so let's just import previous SYSTEMD_READY state and skip other rules
-SUBSYSTEM=="block", ENV{DM_SUSPENDED}=="1", IMPORT{db}="SYSTEMD_READY", GOTO="systemd_end"
+SUBSYSTEM=="block", ENV{DM_SUSPENDED}=="1", IMPORT{db}="SYSTEMD_READY"
+SUBSYSTEM=="block", ENV{DM_SUSPENDED}=="1", GOTO="systemd_end"
+
 SUBSYSTEM=="block", ACTION=="add", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}=="1", ENV{SYSTEMD_READY}="0"
 
 # Ignore encrypted devices with no identified superblock on it, since
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/analyze/analyze-verify-util.c systemd-252.20/src/analyze/analyze-verify-util.c
--- systemd-252.19/src/analyze/analyze-verify-util.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/analyze/analyze-verify-util.c	2023-12-06 20:35:33.000000000 +0000
@@ -104,7 +104,7 @@
         old = getenv("SYSTEMD_UNIT_PATH");
         if (!streq_ptr(old, "")) {
                 if (!old)
-                        old = ":";
+                        old = "";
 
                 r = strv_extend(&ans, old);
                 if (r < 0)
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/capability-util.c systemd-252.20/src/basic/capability-util.c
--- systemd-252.19/src/basic/capability-util.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/capability-util.c	2023-12-06 20:35:33.000000000 +0000
@@ -20,7 +20,8 @@
 
 int have_effective_cap(int value) {
         _cleanup_cap_free_ cap_t cap = NULL;
-        cap_flag_value_t fv;
+        cap_flag_value_t fv = CAP_CLEAR; /* To avoid false-positive use-of-uninitialized-value error reported
+                                          * by fuzzers. */
 
         cap = cap_get_proc();
         if (!cap)
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/locale-util.c systemd-252.20/src/basic/locale-util.c
--- systemd-252.19/src/basic/locale-util.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/locale-util.c	2023-12-06 20:35:33.000000000 +0000
@@ -17,6 +17,7 @@
 #include "fileio.h"
 #include "hashmap.h"
 #include "locale-util.h"
+#include "missing_syscall.h"
 #include "path-util.h"
 #include "set.h"
 #include "string-table.h"
@@ -280,11 +281,6 @@
         return true;
 }
 
-void init_gettext(void) {
-        setlocale(LC_ALL, "");
-        textdomain(GETTEXT_PACKAGE);
-}
-
 bool is_locale_utf8(void) {
         const char *set;
         static int cached_answer = -1;
@@ -295,6 +291,12 @@
         if (cached_answer >= 0)
                 goto out;
 
+        /* This function may be called from libsystemd, and setlocale() is not thread safe. Assuming yes. */
+        if (gettid() != raw_getpid()) {
+                cached_answer = true;
+                goto out;
+        }
+
         if (!setlocale(LC_ALL, "")) {
                 cached_answer = true;
                 goto out;
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/locale-util.h systemd-252.20/src/basic/locale-util.h
--- systemd-252.19/src/basic/locale-util.h	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/locale-util.h	2023-12-06 20:35:33.000000000 +0000
@@ -35,7 +35,6 @@
 
 #define _(String) gettext(String)
 #define N_(String) String
-void init_gettext(void);
 
 bool is_locale_utf8(void);
 
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscall-list.txt systemd-252.20/src/basic/syscall-list.txt
--- systemd-252.19/src/basic/syscall-list.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscall-list.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek
 _newselect
-_sysctl
 accept
 accept4
 access
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush
 bind
 bpf
 brk
@@ -39,14 +37,12 @@
 clock_settime
 clock_settime64
 clone
-clone2
 clone3
 close
 close_range
 connect
 copy_file_range
 creat
-create_module
 delete_module
 dipc
 dup
@@ -78,6 +74,7 @@
 fchdir
 fchmod
 fchmodat
+fchmodat2
 fchown
 fchown32
 fchownat
@@ -89,7 +86,6 @@
 flistxattr
 flock
 fork
-fp_udfiex_crtl
 fremovexattr
 fsconfig
 fsetxattr
@@ -105,10 +101,12 @@
 ftruncate
 ftruncate64
 futex
+futex_requeue
 futex_time64
+futex_wait
 futex_waitv
+futex_wake
 futimesat
-get_kernel_syms
 get_mempolicy
 get_robust_list
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid
 getpgrp
 getpid
-getpmsg
 getppid
 getpriority
 getrandom
@@ -150,12 +147,10 @@
 gettimeofday
 getuid
 getuid32
-getunwind
 getxattr
 getxgid
 getxpid
 getxuid
-idle
 init_module
 inotify_add_watch
 inotify_init
@@ -201,6 +196,7 @@
 lstat
 lstat64
 madvise
+map_shadow_stack
 mbind
 membarrier
 memfd_create
@@ -244,10 +240,8 @@
 name_to_handle_at
 nanosleep
 newfstatat
-nfsservctl
 nice
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat
 openat2
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64
 pwritev
 pwritev2
-query_module
 quotactl
 quotactl_fd
 read
@@ -582,7 +495,6 @@
 unlink
 unlinkat
 unshare
-uselib
 userfaultfd
 ustat
 utime
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-alpha.txt systemd-252.20/src/basic/syscalls-alpha.txt
--- systemd-252.19/src/basic/syscalls-alpha.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-alpha.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek
 _newselect
-_sysctl	319
 accept	99
 accept4	502
 access	33
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush	300
 bind	104
 bpf	515
 brk	17
@@ -39,14 +37,12 @@
 clock_settime	419
 clock_settime64
 clone	312
-clone2
 clone3
 close	6
 close_range	546
 connect	98
 copy_file_range	519
 creat
-create_module	306
 delete_module	308
 dipc	373
 dup	41
@@ -78,6 +74,7 @@
 fchdir	13
 fchmod	124
 fchmodat	461
+fchmodat2	562
 fchown	123
 fchown32
 fchownat	453
@@ -89,7 +86,6 @@
 flistxattr	390
 flock	131
 fork	2
-fp_udfiex_crtl
 fremovexattr	393
 fsconfig	541
 fsetxattr	384
@@ -105,10 +101,12 @@
 ftruncate	130
 ftruncate64
 futex	394
+futex_requeue	566
 futex_time64
+futex_wait	565
 futex_waitv	559
+futex_wake	564
 futimesat	454
-get_kernel_syms	309
 get_mempolicy	430
 get_robust_list	467
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	233
 getpgrp	63
 getpid	20
-getpmsg
 getppid	532
 getpriority	100
 getrandom	511
@@ -150,12 +147,10 @@
 gettimeofday	359
 getuid	24
 getuid32
-getunwind
 getxattr	385
 getxgid	47
 getxpid	20
 getxuid	24
-idle
 init_module	307
 inotify_add_watch	445
 inotify_init	444
@@ -201,6 +196,7 @@
 lstat	68
 lstat64	426
 madvise	75
+map_shadow_stack	563
 mbind	429
 membarrier	517
 memfd_create	512
@@ -244,10 +240,8 @@
 name_to_handle_at	497
 nanosleep	340
 newfstatat
-nfsservctl	342
 nice
 old_adjtimex	303
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat	450
 openat2	547
 or1k_atomic
-osf_adjtime	140
-osf_afs_syscall	258
-osf_alt_plock	181
-osf_alt_setsid	188
-osf_alt_sigpending	187
-osf_asynch_daemon	163
-osf_audcntl	252
-osf_audgen	253
-osf_chflags	34
-osf_execve	11
-osf_exportfs	169
-osf_fchflags	35
-osf_fdatasync	261
-osf_fpathconf	248
 osf_fstat	226
 osf_fstatfs	161
 osf_fstatfs64	228
-osf_fuser	243
-osf_getaddressconf	214
 osf_getdirentries	159
 osf_getdomainname	165
-osf_getfh	164
-osf_getfsstat	18
-osf_gethostid	142
 osf_getitimer	86
-osf_getlogin	49
-osf_getmnt	184
 osf_getrusage	117
 osf_getsysinfo	256
 osf_gettimeofday	116
-osf_kloadcall	223
-osf_kmodcall	77
 osf_lstat	225
-osf_memcntl	260
-osf_mincore	78
 osf_mount	21
-osf_mremap	65
-osf_msfs_syscall	240
-osf_msleep	215
-osf_mvalid	213
-osf_mwakeup	216
-osf_naccept	30
-osf_nfssvc	158
-osf_ngetpeername	31
-osf_ngetsockname	32
-osf_nrecvfrom	29
-osf_nrecvmsg	27
-osf_nsendmsg	28
-osf_ntp_adjtime	245
-osf_ntp_gettime	246
-osf_old_creat	8
-osf_old_fstat	62
-osf_old_getpgrp	81
-osf_old_killpg	146
-osf_old_lstat	40
-osf_old_open	5
-osf_old_sigaction	46
-osf_old_sigblock	109
-osf_old_sigreturn	139
-osf_old_sigsetmask	110
-osf_old_sigvec	108
-osf_old_stat	38
-osf_old_vadvise	72
-osf_old_vtrace	115
-osf_old_wait	84
-osf_oldquota	149
-osf_pathconf	247
-osf_pid_block	153
-osf_pid_unblock	154
-osf_plock	107
-osf_priocntlset	237
-osf_profil	44
 osf_proplist_syscall	244
-osf_reboot	55
-osf_revoke	56
-osf_sbrk	69
-osf_security	222
 osf_select	93
 osf_set_program_attributes	43
-osf_set_speculative	239
-osf_sethostid	143
 osf_setitimer	83
-osf_setlogin	50
 osf_setsysinfo	257
 osf_settimeofday	122
 osf_shmat	209
-osf_signal	218
 osf_sigprocmask	48
-osf_sigsendset	238
 osf_sigstack	112
-osf_sigwaitprim	157
-osf_sstk	70
 osf_stat	224
 osf_statfs	160
 osf_statfs64	227
-osf_subsys_info	255
-osf_swapctl	259
 osf_swapon	199
 osf_syscall	0
 osf_sysinfo	241
-osf_table	85
-osf_uadmin	242
 osf_usleep_thread	251
-osf_uswitch	250
-osf_utc_adjtime	220
-osf_utc_gettime	219
 osf_utimes	138
 osf_utsname	207
 osf_wait4	7
-osf_waitid	236
 pause
 pciconfig_iobase	376
 pciconfig_read	345
@@ -404,7 +318,6 @@
 pwrite64	350
 pwritev	491
 pwritev2	521
-query_module	347
 quotactl	148
 quotactl_fd	553
 read	3
@@ -582,7 +495,6 @@
 unlink	10
 unlinkat	456
 unshare	465
-uselib	313
 userfaultfd	516
 ustat	327
 utime
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-arc.txt systemd-252.20/src/basic/syscalls-arc.txt
--- systemd-252.19/src/basic/syscalls-arc.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-arc.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek
 _newselect
-_sysctl
 accept	202
 accept4	242
 access
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush
 bind	200
 bpf	280
 brk	214
@@ -39,14 +37,12 @@
 clock_settime	112
 clock_settime64	404
 clone	220
-clone2
 clone3	435
 close	57
 close_range	436
 connect	203
 copy_file_range	285
 creat
-create_module
 delete_module	106
 dipc
 dup	23
@@ -78,6 +74,7 @@
 fchdir	50
 fchmod	52
 fchmodat	53
+fchmodat2	452
 fchown	55
 fchown32
 fchownat	54
@@ -89,7 +86,6 @@
 flistxattr	13
 flock	32
 fork
-fp_udfiex_crtl
 fremovexattr	16
 fsconfig	431
 fsetxattr	7
@@ -105,10 +101,12 @@
 ftruncate
 ftruncate64	46
 futex	98
+futex_requeue	456
 futex_time64	422
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat
-get_kernel_syms
 get_mempolicy	236
 get_robust_list	100
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	155
 getpgrp
 getpid	172
-getpmsg
 getppid	173
 getpriority	141
 getrandom	278
@@ -150,12 +147,10 @@
 gettimeofday	169
 getuid	174
 getuid32
-getunwind
 getxattr	8
 getxgid
 getxpid
 getxuid
-idle
 init_module	105
 inotify_add_watch	27
 inotify_init
@@ -201,6 +196,7 @@
 lstat
 lstat64
 madvise	233
+map_shadow_stack	453
 mbind	235
 membarrier	283
 memfd_create	279
@@ -244,10 +240,8 @@
 name_to_handle_at	264
 nanosleep	101
 newfstatat
-nfsservctl	42
 nice
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat	56
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64	68
 pwritev	70
 pwritev2	287
-query_module
 quotactl	60
 quotactl_fd	443
 read	63
@@ -582,7 +495,6 @@
 unlink
 unlinkat	35
 unshare	97
-uselib
 userfaultfd	282
 ustat
 utime
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-arm64.txt systemd-252.20/src/basic/syscalls-arm64.txt
--- systemd-252.19/src/basic/syscalls-arm64.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-arm64.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek
 _newselect
-_sysctl
 accept	202
 accept4	242
 access
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush
 bind	200
 bpf	280
 brk	214
@@ -39,14 +37,12 @@
 clock_settime	112
 clock_settime64
 clone	220
-clone2
 clone3	435
 close	57
 close_range	436
 connect	203
 copy_file_range	285
 creat
-create_module
 delete_module	106
 dipc
 dup	23
@@ -78,6 +74,7 @@
 fchdir	50
 fchmod	52
 fchmodat	53
+fchmodat2	452
 fchown	55
 fchown32
 fchownat	54
@@ -89,7 +86,6 @@
 flistxattr	13
 flock	32
 fork
-fp_udfiex_crtl
 fremovexattr	16
 fsconfig	431
 fsetxattr	7
@@ -105,10 +101,12 @@
 ftruncate	46
 ftruncate64
 futex	98
+futex_requeue	456
 futex_time64
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat
-get_kernel_syms
 get_mempolicy	236
 get_robust_list	100
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	155
 getpgrp
 getpid	172
-getpmsg
 getppid	173
 getpriority	141
 getrandom	278
@@ -150,12 +147,10 @@
 gettimeofday	169
 getuid	174
 getuid32
-getunwind
 getxattr	8
 getxgid
 getxpid
 getxuid
-idle
 init_module	105
 inotify_add_watch	27
 inotify_init
@@ -201,6 +196,7 @@
 lstat
 lstat64
 madvise	233
+map_shadow_stack	453
 mbind	235
 membarrier	283
 memfd_create	279
@@ -244,10 +240,8 @@
 name_to_handle_at	264
 nanosleep	101
 newfstatat	79
-nfsservctl	42
 nice
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat	56
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64	68
 pwritev	70
 pwritev2	287
-query_module
 quotactl	60
 quotactl_fd	443
 read	63
@@ -582,7 +495,6 @@
 unlink
 unlinkat	35
 unshare	97
-uselib
 userfaultfd	282
 ustat
 utime
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-arm.txt systemd-252.20/src/basic/syscalls-arm.txt
--- systemd-252.19/src/basic/syscalls-arm.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-arm.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek	140
 _newselect	142
-_sysctl	149
 accept	285
 accept4	366
 access	33
@@ -15,7 +14,6 @@
 arm_fadvise64_64	270
 atomic_barrier
 atomic_cmpxchg_32
-bdflush	134
 bind	282
 bpf	386
 brk	45
@@ -39,14 +37,12 @@
 clock_settime	262
 clock_settime64	404
 clone	120
-clone2
 clone3	435
 close	6
 close_range	436
 connect	283
 copy_file_range	391
 creat	8
-create_module
 delete_module	129
 dipc
 dup	41
@@ -78,6 +74,7 @@
 fchdir	133
 fchmod	94
 fchmodat	333
+fchmodat2	452
 fchown	95
 fchown32	207
 fchownat	325
@@ -89,7 +86,6 @@
 flistxattr	234
 flock	143
 fork	2
-fp_udfiex_crtl
 fremovexattr	237
 fsconfig	431
 fsetxattr	228
@@ -105,10 +101,12 @@
 ftruncate	93
 ftruncate64	194
 futex	240
+futex_requeue	456
 futex_time64	422
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat	326
-get_kernel_syms
 get_mempolicy	320
 get_robust_list	339
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	132
 getpgrp	65
 getpid	20
-getpmsg
 getppid	64
 getpriority	96
 getrandom	384
@@ -150,12 +147,10 @@
 gettimeofday	78
 getuid	24
 getuid32	199
-getunwind
 getxattr	229
 getxgid
 getxpid
 getxuid
-idle
 init_module	128
 inotify_add_watch	317
 inotify_init	316
@@ -201,6 +196,7 @@
 lstat	107
 lstat64	196
 madvise	220
+map_shadow_stack	453
 mbind	319
 membarrier	389
 memfd_create	385
@@ -244,10 +240,8 @@
 name_to_handle_at	370
 nanosleep	162
 newfstatat
-nfsservctl	169
 nice	34
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat	322
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause	29
 pciconfig_iobase	271
 pciconfig_read	272
@@ -404,7 +318,6 @@
 pwrite64	181
 pwritev	362
 pwritev2	393
-query_module
 quotactl	131
 quotactl_fd	443
 read	3
@@ -582,7 +495,6 @@
 unlink	10
 unlinkat	328
 unshare	337
-uselib	86
 userfaultfd	388
 ustat	62
 utime
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-i386.txt systemd-252.20/src/basic/syscalls-i386.txt
--- systemd-252.19/src/basic/syscalls-i386.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-i386.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek	140
 _newselect	142
-_sysctl	149
 accept
 accept4	364
 access	33
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush	134
 bind	361
 bpf	357
 brk	45
@@ -39,14 +37,12 @@
 clock_settime	264
 clock_settime64	404
 clone	120
-clone2
 clone3	435
 close	6
 close_range	436
 connect	362
 copy_file_range	377
 creat	8
-create_module	127
 delete_module	129
 dipc
 dup	41
@@ -78,6 +74,7 @@
 fchdir	133
 fchmod	94
 fchmodat	306
+fchmodat2	452
 fchown	95
 fchown32	207
 fchownat	298
@@ -89,7 +86,6 @@
 flistxattr	234
 flock	143
 fork	2
-fp_udfiex_crtl
 fremovexattr	237
 fsconfig	431
 fsetxattr	228
@@ -105,10 +101,12 @@
 ftruncate	93
 ftruncate64	194
 futex	240
+futex_requeue	456
 futex_time64	422
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat	299
-get_kernel_syms	130
 get_mempolicy	275
 get_robust_list	312
 get_thread_area	244
@@ -133,7 +131,6 @@
 getpgid	132
 getpgrp	65
 getpid	20
-getpmsg	188
 getppid	64
 getpriority	96
 getrandom	355
@@ -150,12 +147,10 @@
 gettimeofday	78
 getuid	24
 getuid32	199
-getunwind
 getxattr	229
 getxgid
 getxpid
 getxuid
-idle	112
 init_module	128
 inotify_add_watch	292
 inotify_init	291
@@ -201,6 +196,7 @@
 lstat	107
 lstat64	196
 madvise	219
+map_shadow_stack	453
 mbind	274
 membarrier	375
 memfd_create	356
@@ -244,10 +240,8 @@
 name_to_handle_at	341
 nanosleep	162
 newfstatat
-nfsservctl	169
 nice	34
 old_adjtimex
-old_getpagesize
 oldfstat	28
 oldlstat	84
 oldolduname	59
@@ -260,116 +254,36 @@
 openat	295
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause	29
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64	181
 pwritev	334
 pwritev2	379
-query_module	167
 quotactl	131
 quotactl_fd	443
 read	3
@@ -582,7 +495,6 @@
 unlink	10
 unlinkat	301
 unshare	310
-uselib	86
 userfaultfd	374
 ustat	62
 utime	30
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-ia64.txt systemd-252.20/src/basic/syscalls-ia64.txt
--- systemd-252.19/src/basic/syscalls-ia64.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-ia64.txt	2023-12-06 20:35:33.000000000 +0000
@@ -78,6 +78,7 @@
 fchdir	1035
 fchmod	1099
 fchmodat	1292
+fchmodat2	1476
 fchown	1100
 fchown32
 fchownat	1284
@@ -89,7 +90,6 @@
 flistxattr	1225
 flock	1145
 fork
-fp_udfiex_crtl
 fremovexattr	1228
 fsconfig	1455
 fsetxattr	1219
@@ -201,6 +201,7 @@
 lstat	1211
 lstat64
 madvise	1209
+map_shadow_stack
 mbind	1259
 membarrier	1344
 memfd_create	1340
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-loongarch64.txt systemd-252.20/src/basic/syscalls-loongarch64.txt
--- systemd-252.19/src/basic/syscalls-loongarch64.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-loongarch64.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek
 _newselect
-_sysctl
 accept	202
 accept4	242
 access
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush
 bind	200
 bpf	280
 brk	214
@@ -39,14 +37,12 @@
 clock_settime	112
 clock_settime64
 clone	220
-clone2
 clone3	435
 close	57
 close_range	436
 connect	203
 copy_file_range	285
 creat
-create_module
 delete_module	106
 dipc
 dup	23
@@ -78,6 +74,7 @@
 fchdir	50
 fchmod	52
 fchmodat	53
+fchmodat2	452
 fchown	55
 fchown32
 fchownat	54
@@ -89,7 +86,6 @@
 flistxattr	13
 flock	32
 fork
-fp_udfiex_crtl
 fremovexattr	16
 fsconfig	431
 fsetxattr	7
@@ -105,10 +101,12 @@
 ftruncate	46
 ftruncate64
 futex	98
+futex_requeue	456
 futex_time64
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat
-get_kernel_syms
 get_mempolicy	236
 get_robust_list	100
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	155
 getpgrp
 getpid	172
-getpmsg
 getppid	173
 getpriority	141
 getrandom	278
@@ -150,12 +147,10 @@
 gettimeofday	169
 getuid	174
 getuid32
-getunwind
 getxattr	8
 getxgid
 getxpid
 getxuid
-idle
 init_module	105
 inotify_add_watch	27
 inotify_init
@@ -201,6 +196,7 @@
 lstat
 lstat64
 madvise	233
+map_shadow_stack	453
 mbind	235
 membarrier	283
 memfd_create	279
@@ -244,10 +240,8 @@
 name_to_handle_at	264
 nanosleep	101
 newfstatat
-nfsservctl	42
 nice
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat	56
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64	68
 pwritev	70
 pwritev2	287
-query_module
 quotactl	60
 quotactl_fd	443
 read	63
@@ -582,7 +495,6 @@
 unlink
 unlinkat	35
 unshare	97
-uselib
 userfaultfd	282
 ustat
 utime
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-m68k.txt systemd-252.20/src/basic/syscalls-m68k.txt
--- systemd-252.19/src/basic/syscalls-m68k.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-m68k.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek	140
 _newselect	142
-_sysctl	149
 accept
 accept4	361
 access	33
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier	336
 atomic_cmpxchg_32	335
-bdflush	134
 bind	358
 bpf	354
 brk	45
@@ -39,14 +37,12 @@
 clock_settime	259
 clock_settime64	404
 clone	120
-clone2
 clone3	435
 close	6
 close_range	436
 connect	359
 copy_file_range	376
 creat	8
-create_module	127
 delete_module	129
 dipc
 dup	41
@@ -78,6 +74,7 @@
 fchdir	133
 fchmod	94
 fchmodat	299
+fchmodat2	452
 fchown	95
 fchown32	207
 fchownat	291
@@ -89,7 +86,6 @@
 flistxattr	231
 flock	143
 fork	2
-fp_udfiex_crtl
 fremovexattr	234
 fsconfig	431
 fsetxattr	225
@@ -105,10 +101,12 @@
 ftruncate	93
 ftruncate64	194
 futex	235
+futex_requeue	456
 futex_time64	422
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat	292
-get_kernel_syms	130
 get_mempolicy	269
 get_robust_list	305
 get_thread_area	333
@@ -133,7 +131,6 @@
 getpgid	132
 getpgrp	65
 getpid	20
-getpmsg	188
 getppid	64
 getpriority	96
 getrandom	352
@@ -150,12 +147,10 @@
 gettimeofday	78
 getuid	24
 getuid32	199
-getunwind
 getxattr	226
 getxgid
 getxpid
 getxuid
-idle
 init_module	128
 inotify_add_watch	285
 inotify_init	284
@@ -201,6 +196,7 @@
 lstat	107
 lstat64	196
 madvise	238
+map_shadow_stack	453
 mbind	268
 membarrier	374
 memfd_create	353
@@ -244,10 +240,8 @@
 name_to_handle_at	340
 nanosleep	162
 newfstatat
-nfsservctl	169
 nice	34
 old_adjtimex
-old_getpagesize
 oldfstat	28
 oldlstat	84
 oldolduname
@@ -260,116 +254,36 @@
 openat	288
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause	29
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64	181
 pwritev	330
 pwritev2	378
-query_module	167
 quotactl	131
 quotactl_fd	443
 read	3
@@ -582,7 +495,6 @@
 unlink	10
 unlinkat	294
 unshare	303
-uselib	86
 userfaultfd	373
 ustat	62
 utime	30
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-mips64n32.txt systemd-252.20/src/basic/syscalls-mips64n32.txt
--- systemd-252.19/src/basic/syscalls-mips64n32.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-mips64n32.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek
 _newselect	6022
-_sysctl	6152
 accept	6042
 accept4	6297
 access	6020
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush
 bind	6048
 bpf	6319
 brk	6012
@@ -39,14 +37,12 @@
 clock_settime	6225
 clock_settime64	6404
 clone	6055
-clone2
 clone3	6435
 close	6003
 close_range	6436
 connect	6041
 copy_file_range	6324
 creat	6083
-create_module	6167
 delete_module	6169
 dipc
 dup	6031
@@ -78,6 +74,7 @@
 fchdir	6079
 fchmod	6089
 fchmodat	6262
+fchmodat2	6452
 fchown	6091
 fchown32
 fchownat	6254
@@ -89,7 +86,6 @@
 flistxattr	6188
 flock	6071
 fork	6056
-fp_udfiex_crtl
 fremovexattr	6191
 fsconfig	6431
 fsetxattr	6182
@@ -105,10 +101,12 @@
 ftruncate	6075
 ftruncate64
 futex	6194
+futex_requeue	6456
 futex_time64	6422
+futex_wait	6455
 futex_waitv	6449
+futex_wake	6454
 futimesat	6255
-get_kernel_syms	6170
 get_mempolicy	6232
 get_robust_list	6273
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	6119
 getpgrp	6109
 getpid	6038
-getpmsg	6174
 getppid	6108
 getpriority	6137
 getrandom	6317
@@ -150,12 +147,10 @@
 gettimeofday	6094
 getuid	6100
 getuid32
-getunwind
 getxattr	6183
 getxgid
 getxpid
 getxuid
-idle
 init_module	6168
 inotify_add_watch	6248
 inotify_init	6247
@@ -201,6 +196,7 @@
 lstat	6006
 lstat64
 madvise	6027
+map_shadow_stack	6453
 mbind	6231
 membarrier	6322
 memfd_create	6318
@@ -244,10 +240,8 @@
 name_to_handle_at	6303
 nanosleep	6034
 newfstatat	6256
-nfsservctl	6173
 nice
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat	6251
 openat2	6437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause	6033
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64	6017
 pwritev	6294
 pwritev2	6326
-query_module	6171
 quotactl	6172
 quotactl_fd	6443
 read	6000
@@ -582,7 +495,6 @@
 unlink	6085
 unlinkat	6257
 unshare	6266
-uselib
 userfaultfd	6321
 ustat	6133
 utime	6130
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-mips64.txt systemd-252.20/src/basic/syscalls-mips64.txt
--- systemd-252.19/src/basic/syscalls-mips64.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-mips64.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek
 _newselect	5022
-_sysctl	5152
 accept	5042
 accept4	5293
 access	5020
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush
 bind	5048
 bpf	5315
 brk	5012
@@ -39,14 +37,12 @@
 clock_settime	5221
 clock_settime64
 clone	5055
-clone2
 clone3	5435
 close	5003
 close_range	5436
 connect	5041
 copy_file_range	5320
 creat	5083
-create_module	5167
 delete_module	5169
 dipc
 dup	5031
@@ -78,6 +74,7 @@
 fchdir	5079
 fchmod	5089
 fchmodat	5258
+fchmodat2	5452
 fchown	5091
 fchown32
 fchownat	5250
@@ -89,7 +86,6 @@
 flistxattr	5188
 flock	5071
 fork	5056
-fp_udfiex_crtl
 fremovexattr	5191
 fsconfig	5431
 fsetxattr	5182
@@ -105,10 +101,12 @@
 ftruncate	5075
 ftruncate64
 futex	5194
+futex_requeue	5456
 futex_time64
+futex_wait	5455
 futex_waitv	5449
+futex_wake	5454
 futimesat	5251
-get_kernel_syms	5170
 get_mempolicy	5228
 get_robust_list	5269
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	5119
 getpgrp	5109
 getpid	5038
-getpmsg	5174
 getppid	5108
 getpriority	5137
 getrandom	5313
@@ -150,12 +147,10 @@
 gettimeofday	5094
 getuid	5100
 getuid32
-getunwind
 getxattr	5183
 getxgid
 getxpid
 getxuid
-idle
 init_module	5168
 inotify_add_watch	5244
 inotify_init	5243
@@ -201,6 +196,7 @@
 lstat	5006
 lstat64
 madvise	5027
+map_shadow_stack	5453
 mbind	5227
 membarrier	5318
 memfd_create	5314
@@ -244,10 +240,8 @@
 name_to_handle_at	5298
 nanosleep	5034
 newfstatat	5252
-nfsservctl	5173
 nice
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat	5247
 openat2	5437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause	5033
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64	5017
 pwritev	5290
 pwritev2	5322
-query_module	5171
 quotactl	5172
 quotactl_fd	5443
 read	5000
@@ -582,7 +495,6 @@
 unlink	5085
 unlinkat	5253
 unshare	5262
-uselib
 userfaultfd	5317
 ustat	5133
 utime	5130
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-mipso32.txt systemd-252.20/src/basic/syscalls-mipso32.txt
--- systemd-252.19/src/basic/syscalls-mipso32.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-mipso32.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek	4140
 _newselect	4142
-_sysctl	4153
 accept	4168
 accept4	4334
 access	4033
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush	4134
 bind	4169
 bpf	4355
 brk	4045
@@ -39,14 +37,12 @@
 clock_settime	4262
 clock_settime64	4404
 clone	4120
-clone2
 clone3	4435
 close	4006
 close_range	4436
 connect	4170
 copy_file_range	4360
 creat	4008
-create_module	4127
 delete_module	4129
 dipc
 dup	4041
@@ -78,6 +74,7 @@
 fchdir	4133
 fchmod	4094
 fchmodat	4299
+fchmodat2	4452
 fchown	4095
 fchown32
 fchownat	4291
@@ -89,7 +86,6 @@
 flistxattr	4232
 flock	4143
 fork	4002
-fp_udfiex_crtl
 fremovexattr	4235
 fsconfig	4431
 fsetxattr	4226
@@ -105,10 +101,12 @@
 ftruncate	4093
 ftruncate64	4212
 futex	4238
+futex_requeue	4456
 futex_time64	4422
+futex_wait	4455
 futex_waitv	4449
+futex_wake	4454
 futimesat	4292
-get_kernel_syms	4130
 get_mempolicy	4269
 get_robust_list	4310
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	4132
 getpgrp	4065
 getpid	4020
-getpmsg	4208
 getppid	4064
 getpriority	4096
 getrandom	4353
@@ -150,12 +147,10 @@
 gettimeofday	4078
 getuid	4024
 getuid32
-getunwind
 getxattr	4227
 getxgid
 getxpid
 getxuid
-idle	4112
 init_module	4128
 inotify_add_watch	4285
 inotify_init	4284
@@ -201,6 +196,7 @@
 lstat	4107
 lstat64	4214
 madvise	4218
+map_shadow_stack	4453
 mbind	4268
 membarrier	4358
 memfd_create	4354
@@ -244,10 +240,8 @@
 name_to_handle_at	4339
 nanosleep	4166
 newfstatat
-nfsservctl	4189
 nice	4034
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat	4288
 openat2	4437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause	4029
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64	4201
 pwritev	4331
 pwritev2	4362
-query_module	4187
 quotactl	4131
 quotactl_fd	4443
 read	4003
@@ -582,7 +495,6 @@
 unlink	4010
 unlinkat	4294
 unshare	4303
-uselib	4086
 userfaultfd	4357
 ustat	4062
 utime	4030
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-parisc.txt systemd-252.20/src/basic/syscalls-parisc.txt
--- systemd-252.19/src/basic/syscalls-parisc.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-parisc.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek	140
 _newselect	142
-_sysctl	149
 accept	35
 accept4	320
 access	33
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush	134
 bind	22
 bpf	341
 brk	45
@@ -39,14 +37,12 @@
 clock_settime	255
 clock_settime64	404
 clone	120
-clone2
 clone3	435
 close	6
 close_range	436
 connect	31
 copy_file_range	346
 creat	8
-create_module
 delete_module	129
 dipc
 dup	41
@@ -78,6 +74,7 @@
 fchdir	133
 fchmod	94
 fchmodat	286
+fchmodat2	452
 fchown	95
 fchown32
 fchownat	278
@@ -89,7 +86,6 @@
 flistxattr	246
 flock	143
 fork	2
-fp_udfiex_crtl
 fremovexattr	249
 fsconfig	431
 fsetxattr	240
@@ -105,10 +101,12 @@
 ftruncate	93
 ftruncate64	200
 futex	210
+futex_requeue	456
 futex_time64	422
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat	279
-get_kernel_syms
 get_mempolicy	261
 get_robust_list	290
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	132
 getpgrp	65
 getpid	20
-getpmsg
 getppid	64
 getpriority	96
 getrandom	339
@@ -150,12 +147,10 @@
 gettimeofday	78
 getuid	24
 getuid32
-getunwind
 getxattr	241
 getxgid
 getxpid
 getxuid
-idle
 init_module	128
 inotify_add_watch	270
 inotify_init	269
@@ -201,6 +196,7 @@
 lstat	84
 lstat64	198
 madvise	119
+map_shadow_stack	453
 mbind	260
 membarrier	343
 memfd_create	340
@@ -244,10 +240,8 @@
 name_to_handle_at	325
 nanosleep	162
 newfstatat
-nfsservctl
 nice	34
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat	275
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause	29
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64	109
 pwritev	316
 pwritev2	348
-query_module
 quotactl	131
 quotactl_fd	443
 read	3
@@ -582,7 +495,6 @@
 unlink	10
 unlinkat	281
 unshare	288
-uselib	86
 userfaultfd	344
 ustat	62
 utime	30
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-powerpc64.txt systemd-252.20/src/basic/syscalls-powerpc64.txt
--- systemd-252.19/src/basic/syscalls-powerpc64.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-powerpc64.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek	140
 _newselect	142
-_sysctl	149
 accept	330
 accept4	344
 access	33
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush	134
 bind	327
 bpf	361
 brk	45
@@ -39,14 +37,12 @@
 clock_settime	245
 clock_settime64
 clone	120
-clone2
 clone3	435
 close	6
 close_range	436
 connect	328
 copy_file_range	379
 creat	8
-create_module	127
 delete_module	129
 dipc
 dup	41
@@ -78,6 +74,7 @@
 fchdir	133
 fchmod	94
 fchmodat	297
+fchmodat2	452
 fchown	95
 fchown32
 fchownat	289
@@ -89,7 +86,6 @@
 flistxattr	217
 flock	143
 fork	2
-fp_udfiex_crtl
 fremovexattr	220
 fsconfig	431
 fsetxattr	211
@@ -105,10 +101,12 @@
 ftruncate	93
 ftruncate64
 futex	221
+futex_requeue	456
 futex_time64
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat	290
-get_kernel_syms	130
 get_mempolicy	260
 get_robust_list	299
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	132
 getpgrp	65
 getpid	20
-getpmsg	187
 getppid	64
 getpriority	96
 getrandom	359
@@ -150,12 +147,10 @@
 gettimeofday	78
 getuid	24
 getuid32
-getunwind
 getxattr	212
 getxgid
 getxpid
 getxuid
-idle	112
 init_module	128
 inotify_add_watch	276
 inotify_init	275
@@ -201,6 +196,7 @@
 lstat	107
 lstat64
 madvise	205
+map_shadow_stack	453
 mbind	259
 membarrier	365
 memfd_create	360
@@ -244,10 +240,8 @@
 name_to_handle_at	345
 nanosleep	162
 newfstatat	291
-nfsservctl	168
 nice	34
 old_adjtimex
-old_getpagesize
 oldfstat	28
 oldlstat	84
 oldolduname	59
@@ -260,116 +254,36 @@
 openat	286
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause	29
 pciconfig_iobase	200
 pciconfig_read	198
@@ -404,7 +318,6 @@
 pwrite64	180
 pwritev	321
 pwritev2	381
-query_module	166
 quotactl	131
 quotactl_fd	443
 read	3
@@ -582,7 +495,6 @@
 unlink	10
 unlinkat	292
 unshare	282
-uselib	86
 userfaultfd	364
 ustat	62
 utime	30
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-powerpc.txt systemd-252.20/src/basic/syscalls-powerpc.txt
--- systemd-252.19/src/basic/syscalls-powerpc.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-powerpc.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek	140
 _newselect	142
-_sysctl	149
 accept	330
 accept4	344
 access	33
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush	134
 bind	327
 bpf	361
 brk	45
@@ -39,14 +37,12 @@
 clock_settime	245
 clock_settime64	404
 clone	120
-clone2
 clone3	435
 close	6
 close_range	436
 connect	328
 copy_file_range	379
 creat	8
-create_module	127
 delete_module	129
 dipc
 dup	41
@@ -78,6 +74,7 @@
 fchdir	133
 fchmod	94
 fchmodat	297
+fchmodat2	452
 fchown	95
 fchown32
 fchownat	289
@@ -89,7 +86,6 @@
 flistxattr	217
 flock	143
 fork	2
-fp_udfiex_crtl
 fremovexattr	220
 fsconfig	431
 fsetxattr	211
@@ -105,10 +101,12 @@
 ftruncate	93
 ftruncate64	194
 futex	221
+futex_requeue	456
 futex_time64	422
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat	290
-get_kernel_syms	130
 get_mempolicy	260
 get_robust_list	299
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	132
 getpgrp	65
 getpid	20
-getpmsg	187
 getppid	64
 getpriority	96
 getrandom	359
@@ -150,12 +147,10 @@
 gettimeofday	78
 getuid	24
 getuid32
-getunwind
 getxattr	212
 getxgid
 getxpid
 getxuid
-idle	112
 init_module	128
 inotify_add_watch	276
 inotify_init	275
@@ -201,6 +196,7 @@
 lstat	107
 lstat64	196
 madvise	205
+map_shadow_stack	453
 mbind	259
 membarrier	365
 memfd_create	360
@@ -244,10 +240,8 @@
 name_to_handle_at	345
 nanosleep	162
 newfstatat
-nfsservctl	168
 nice	34
 old_adjtimex
-old_getpagesize
 oldfstat	28
 oldlstat	84
 oldolduname	59
@@ -260,116 +254,36 @@
 openat	286
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause	29
 pciconfig_iobase	200
 pciconfig_read	198
@@ -404,7 +318,6 @@
 pwrite64	180
 pwritev	321
 pwritev2	381
-query_module	166
 quotactl	131
 quotactl_fd	443
 read	3
@@ -582,7 +495,6 @@
 unlink	10
 unlinkat	292
 unshare	282
-uselib	86
 userfaultfd	364
 ustat	62
 utime	30
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-riscv32.txt systemd-252.20/src/basic/syscalls-riscv32.txt
--- systemd-252.19/src/basic/syscalls-riscv32.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-riscv32.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek
 _newselect
-_sysctl
 accept	202
 accept4	242
 access
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush
 bind	200
 bpf	280
 brk	214
@@ -39,14 +37,12 @@
 clock_settime
 clock_settime64	404
 clone	220
-clone2
 clone3	435
 close	57
 close_range	436
 connect	203
 copy_file_range	285
 creat
-create_module
 delete_module	106
 dipc
 dup	23
@@ -78,6 +74,7 @@
 fchdir	50
 fchmod	52
 fchmodat	53
+fchmodat2	452
 fchown	55
 fchown32
 fchownat	54
@@ -89,7 +86,6 @@
 flistxattr	13
 flock	32
 fork
-fp_udfiex_crtl
 fremovexattr	16
 fsconfig	431
 fsetxattr	7
@@ -105,10 +101,12 @@
 ftruncate
 ftruncate64	46
 futex
+futex_requeue	456
 futex_time64	422
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat
-get_kernel_syms
 get_mempolicy	236
 get_robust_list	100
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	155
 getpgrp
 getpid	172
-getpmsg
 getppid	173
 getpriority	141
 getrandom	278
@@ -150,12 +147,10 @@
 gettimeofday
 getuid	174
 getuid32
-getunwind
 getxattr	8
 getxgid
 getxpid
 getxuid
-idle
 init_module	105
 inotify_add_watch	27
 inotify_init
@@ -201,6 +196,7 @@
 lstat
 lstat64
 madvise	233
+map_shadow_stack	453
 mbind	235
 membarrier	283
 memfd_create	279
@@ -244,10 +240,8 @@
 name_to_handle_at	264
 nanosleep
 newfstatat
-nfsservctl	42
 nice
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat	56
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64	68
 pwritev	70
 pwritev2	287
-query_module
 quotactl	60
 quotactl_fd	443
 read	63
@@ -582,7 +495,6 @@
 unlink
 unlinkat	35
 unshare	97
-uselib
 userfaultfd	282
 ustat
 utime
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-riscv64.txt systemd-252.20/src/basic/syscalls-riscv64.txt
--- systemd-252.19/src/basic/syscalls-riscv64.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-riscv64.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek
 _newselect
-_sysctl
 accept	202
 accept4	242
 access
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush
 bind	200
 bpf	280
 brk	214
@@ -39,14 +37,12 @@
 clock_settime	112
 clock_settime64
 clone	220
-clone2
 clone3	435
 close	57
 close_range	436
 connect	203
 copy_file_range	285
 creat
-create_module
 delete_module	106
 dipc
 dup	23
@@ -78,6 +74,7 @@
 fchdir	50
 fchmod	52
 fchmodat	53
+fchmodat2	452
 fchown	55
 fchown32
 fchownat	54
@@ -89,7 +86,6 @@
 flistxattr	13
 flock	32
 fork
-fp_udfiex_crtl
 fremovexattr	16
 fsconfig	431
 fsetxattr	7
@@ -105,10 +101,12 @@
 ftruncate	46
 ftruncate64
 futex	98
+futex_requeue	456
 futex_time64
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat
-get_kernel_syms
 get_mempolicy	236
 get_robust_list	100
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	155
 getpgrp
 getpid	172
-getpmsg
 getppid	173
 getpriority	141
 getrandom	278
@@ -150,12 +147,10 @@
 gettimeofday	169
 getuid	174
 getuid32
-getunwind
 getxattr	8
 getxgid
 getxpid
 getxuid
-idle
 init_module	105
 inotify_add_watch	27
 inotify_init
@@ -201,6 +196,7 @@
 lstat
 lstat64
 madvise	233
+map_shadow_stack	453
 mbind	235
 membarrier	283
 memfd_create	279
@@ -244,10 +240,8 @@
 name_to_handle_at	264
 nanosleep	101
 newfstatat	79
-nfsservctl	42
 nice
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat	56
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64	68
 pwritev	70
 pwritev2	287
-query_module
 quotactl	60
 quotactl_fd	443
 read	63
@@ -582,7 +495,6 @@
 unlink
 unlinkat	35
 unshare	97
-uselib
 userfaultfd	282
 ustat
 utime
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-s390.txt systemd-252.20/src/basic/syscalls-s390.txt
--- systemd-252.19/src/basic/syscalls-s390.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-s390.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek	140
 _newselect	142
-_sysctl	149
 accept
 accept4	364
 access	33
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush	134
 bind	361
 bpf	351
 brk	45
@@ -39,14 +37,12 @@
 clock_settime	259
 clock_settime64	404
 clone	120
-clone2
 clone3	435
 close	6
 close_range	436
 connect	362
 copy_file_range	375
 creat	8
-create_module	127
 delete_module	129
 dipc
 dup	41
@@ -78,6 +74,7 @@
 fchdir	133
 fchmod	94
 fchmodat	299
+fchmodat2	452
 fchown	95
 fchown32	207
 fchownat	291
@@ -89,7 +86,6 @@
 flistxattr	232
 flock	143
 fork	2
-fp_udfiex_crtl
 fremovexattr	235
 fsconfig	431
 fsetxattr	226
@@ -105,10 +101,12 @@
 ftruncate	93
 ftruncate64	194
 futex	238
+futex_requeue	456
 futex_time64	422
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat	292
-get_kernel_syms	130
 get_mempolicy	269
 get_robust_list	305
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	132
 getpgrp	65
 getpid	20
-getpmsg	188
 getppid	64
 getpriority	96
 getrandom	349
@@ -150,12 +147,10 @@
 gettimeofday	78
 getuid	24
 getuid32	199
-getunwind
 getxattr	227
 getxgid
 getxpid
 getxuid
-idle	112
 init_module	128
 inotify_add_watch	285
 inotify_init	284
@@ -201,6 +196,7 @@
 lstat	107
 lstat64	196
 madvise	219
+map_shadow_stack	453
 mbind	268
 membarrier	356
 memfd_create	350
@@ -244,10 +240,8 @@
 name_to_handle_at	335
 nanosleep	162
 newfstatat
-nfsservctl	169
 nice	34
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat	288
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause	29
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64	181
 pwritev	329
 pwritev2	377
-query_module	167
 quotactl	131
 quotactl_fd	443
 read	3
@@ -582,7 +495,6 @@
 unlink	10
 unlinkat	294
 unshare	303
-uselib	86
 userfaultfd	355
 ustat	62
 utime	30
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-s390x.txt systemd-252.20/src/basic/syscalls-s390x.txt
--- systemd-252.19/src/basic/syscalls-s390x.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-s390x.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek
 _newselect
-_sysctl	149
 accept
 accept4	364
 access	33
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush	134
 bind	361
 bpf	351
 brk	45
@@ -39,14 +37,12 @@
 clock_settime	259
 clock_settime64
 clone	120
-clone2
 clone3	435
 close	6
 close_range	436
 connect	362
 copy_file_range	375
 creat	8
-create_module	127
 delete_module	129
 dipc
 dup	41
@@ -78,6 +74,7 @@
 fchdir	133
 fchmod	94
 fchmodat	299
+fchmodat2	452
 fchown	207
 fchown32
 fchownat	291
@@ -89,7 +86,6 @@
 flistxattr	232
 flock	143
 fork	2
-fp_udfiex_crtl
 fremovexattr	235
 fsconfig	431
 fsetxattr	226
@@ -105,10 +101,12 @@
 ftruncate	93
 ftruncate64
 futex	238
+futex_requeue	456
 futex_time64
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat	292
-get_kernel_syms	130
 get_mempolicy	269
 get_robust_list	305
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	132
 getpgrp	65
 getpid	20
-getpmsg	188
 getppid	64
 getpriority	96
 getrandom	349
@@ -150,12 +147,10 @@
 gettimeofday	78
 getuid	199
 getuid32
-getunwind
 getxattr	227
 getxgid
 getxpid
 getxuid
-idle	112
 init_module	128
 inotify_add_watch	285
 inotify_init	284
@@ -201,6 +196,7 @@
 lstat	107
 lstat64
 madvise	219
+map_shadow_stack	453
 mbind	268
 membarrier	356
 memfd_create	350
@@ -244,10 +240,8 @@
 name_to_handle_at	335
 nanosleep	162
 newfstatat	293
-nfsservctl	169
 nice	34
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat	288
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause	29
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64	181
 pwritev	329
 pwritev2	377
-query_module	167
 quotactl	131
 quotactl_fd	443
 read	3
@@ -582,7 +495,6 @@
 unlink	10
 unlinkat	294
 unshare	303
-uselib	86
 userfaultfd	355
 ustat	62
 utime	30
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-sparc.txt systemd-252.20/src/basic/syscalls-sparc.txt
--- systemd-252.19/src/basic/syscalls-sparc.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-sparc.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek	236
 _newselect	230
-_sysctl	251
 accept	99
 accept4	323
 access	33
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush	225
 bind	353
 bpf	349
 brk	17
@@ -39,14 +37,12 @@
 clock_settime	256
 clock_settime64	404
 clone	217
-clone2
 clone3
 close	6
 close_range	436
 connect	98
 copy_file_range	357
 creat	8
-create_module	221
 delete_module	222
 dipc
 dup	41
@@ -78,6 +74,7 @@
 fchdir	176
 fchmod	124
 fchmodat	295
+fchmodat2	452
 fchown	123
 fchown32	32
 fchownat	287
@@ -89,7 +86,6 @@
 flistxattr	180
 flock	131
 fork	2
-fp_udfiex_crtl
 fremovexattr	186
 fsconfig	431
 fsetxattr	171
@@ -105,10 +101,12 @@
 ftruncate	130
 ftruncate64	84
 futex	142
+futex_requeue	456
 futex_time64	422
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat	288
-get_kernel_syms	223
 get_mempolicy	304
 get_robust_list	301
 get_thread_area
@@ -133,7 +131,6 @@
 getpgid	224
 getpgrp	81
 getpid	20
-getpmsg
 getppid	197
 getpriority	100
 getrandom	347
@@ -150,12 +147,10 @@
 gettimeofday	116
 getuid	24
 getuid32	44
-getunwind
 getxattr	172
 getxgid
 getxpid
 getxuid
-idle
 init_module	190
 inotify_add_watch	152
 inotify_init	151
@@ -201,6 +196,7 @@
 lstat	40
 lstat64	132
 madvise	75
+map_shadow_stack	453
 mbind	303
 membarrier	351
 memfd_create	348
@@ -244,10 +240,8 @@
 name_to_handle_at	332
 nanosleep	249
 newfstatat
-nfsservctl	254
 nice	34
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat	202
 oldolduname
@@ -260,116 +254,36 @@
 openat	284
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause	29
 pciconfig_iobase
 pciconfig_read	148
@@ -404,7 +318,6 @@
 pwrite64	68
 pwritev	325
 pwritev2	359
-query_module	184
 quotactl	165
 quotactl_fd	443
 read	3
@@ -582,7 +495,6 @@
 unlink	10
 unlinkat	290
 unshare	299
-uselib	203
 userfaultfd	352
 ustat	168
 utime	30
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/syscalls-x86_64.txt systemd-252.20/src/basic/syscalls-x86_64.txt
--- systemd-252.19/src/basic/syscalls-x86_64.txt	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/syscalls-x86_64.txt	2023-12-06 20:35:33.000000000 +0000
@@ -1,6 +1,5 @@
 _llseek
 _newselect
-_sysctl	156
 accept	43
 accept4	288
 access	21
@@ -15,7 +14,6 @@
 arm_fadvise64_64
 atomic_barrier
 atomic_cmpxchg_32
-bdflush
 bind	49
 bpf	321
 brk	12
@@ -39,14 +37,12 @@
 clock_settime	227
 clock_settime64
 clone	56
-clone2
 clone3	435
 close	3
 close_range	436
 connect	42
 copy_file_range	326
 creat	85
-create_module	174
 delete_module	176
 dipc
 dup	32
@@ -78,6 +74,7 @@
 fchdir	81
 fchmod	91
 fchmodat	268
+fchmodat2	452
 fchown	93
 fchown32
 fchownat	260
@@ -89,7 +86,6 @@
 flistxattr	196
 flock	73
 fork	57
-fp_udfiex_crtl
 fremovexattr	199
 fsconfig	431
 fsetxattr	190
@@ -105,10 +101,12 @@
 ftruncate	77
 ftruncate64
 futex	202
+futex_requeue	456
 futex_time64
+futex_wait	455
 futex_waitv	449
+futex_wake	454
 futimesat	261
-get_kernel_syms	177
 get_mempolicy	239
 get_robust_list	274
 get_thread_area	211
@@ -133,7 +131,6 @@
 getpgid	121
 getpgrp	111
 getpid	39
-getpmsg	181
 getppid	110
 getpriority	140
 getrandom	318
@@ -150,12 +147,10 @@
 gettimeofday	96
 getuid	102
 getuid32
-getunwind
 getxattr	191
 getxgid
 getxpid
 getxuid
-idle
 init_module	175
 inotify_add_watch	254
 inotify_init	253
@@ -201,6 +196,7 @@
 lstat	6
 lstat64
 madvise	28
+map_shadow_stack	453
 mbind	237
 membarrier	324
 memfd_create	319
@@ -244,10 +240,8 @@
 name_to_handle_at	303
 nanosleep	35
 newfstatat	262
-nfsservctl	180
 nice
 old_adjtimex
-old_getpagesize
 oldfstat
 oldlstat
 oldolduname
@@ -260,116 +254,36 @@
 openat	257
 openat2	437
 or1k_atomic
-osf_adjtime
-osf_afs_syscall
-osf_alt_plock
-osf_alt_setsid
-osf_alt_sigpending
-osf_asynch_daemon
-osf_audcntl
-osf_audgen
-osf_chflags
-osf_execve
-osf_exportfs
-osf_fchflags
-osf_fdatasync
-osf_fpathconf
 osf_fstat
 osf_fstatfs
 osf_fstatfs64
-osf_fuser
-osf_getaddressconf
 osf_getdirentries
 osf_getdomainname
-osf_getfh
-osf_getfsstat
-osf_gethostid
 osf_getitimer
-osf_getlogin
-osf_getmnt
 osf_getrusage
 osf_getsysinfo
 osf_gettimeofday
-osf_kloadcall
-osf_kmodcall
 osf_lstat
-osf_memcntl
-osf_mincore
 osf_mount
-osf_mremap
-osf_msfs_syscall
-osf_msleep
-osf_mvalid
-osf_mwakeup
-osf_naccept
-osf_nfssvc
-osf_ngetpeername
-osf_ngetsockname
-osf_nrecvfrom
-osf_nrecvmsg
-osf_nsendmsg
-osf_ntp_adjtime
-osf_ntp_gettime
-osf_old_creat
-osf_old_fstat
-osf_old_getpgrp
-osf_old_killpg
-osf_old_lstat
-osf_old_open
-osf_old_sigaction
-osf_old_sigblock
-osf_old_sigreturn
-osf_old_sigsetmask
-osf_old_sigvec
-osf_old_stat
-osf_old_vadvise
-osf_old_vtrace
-osf_old_wait
-osf_oldquota
-osf_pathconf
-osf_pid_block
-osf_pid_unblock
-osf_plock
-osf_priocntlset
-osf_profil
 osf_proplist_syscall
-osf_reboot
-osf_revoke
-osf_sbrk
-osf_security
 osf_select
 osf_set_program_attributes
-osf_set_speculative
-osf_sethostid
 osf_setitimer
-osf_setlogin
 osf_setsysinfo
 osf_settimeofday
 osf_shmat
-osf_signal
 osf_sigprocmask
-osf_sigsendset
 osf_sigstack
-osf_sigwaitprim
-osf_sstk
 osf_stat
 osf_statfs
 osf_statfs64
-osf_subsys_info
-osf_swapctl
 osf_swapon
 osf_syscall
 osf_sysinfo
-osf_table
-osf_uadmin
 osf_usleep_thread
-osf_uswitch
-osf_utc_adjtime
-osf_utc_gettime
 osf_utimes
 osf_utsname
 osf_wait4
-osf_waitid
 pause	34
 pciconfig_iobase
 pciconfig_read
@@ -404,7 +318,6 @@
 pwrite64	18
 pwritev	296
 pwritev2	328
-query_module	178
 quotactl	179
 quotactl_fd	443
 read	0
@@ -582,7 +495,6 @@
 unlink	87
 unlinkat	263
 unshare	272
-uselib	134
 userfaultfd	323
 ustat	136
 utime	132
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/basic/terminal-util.c systemd-252.20/src/basic/terminal-util.c
--- systemd-252.19/src/basic/terminal-util.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/basic/terminal-util.c	2023-12-06 20:35:33.000000000 +0000
@@ -271,7 +271,7 @@
         termios.c_iflag |= ICRNL | IMAXBEL | IUTF8;
         termios.c_oflag |= ONLCR | OPOST;
         termios.c_cflag |= CREAD;
-        termios.c_lflag = ISIG | ICANON | IEXTEN | ECHO | ECHOE | ECHOK | ECHOCTL | ECHOPRT | ECHOKE;
+        termios.c_lflag = ISIG | ICANON | IEXTEN | ECHO | ECHOE | ECHOK | ECHOCTL | ECHOKE;
 
         termios.c_cc[VINTR]    =   03;  /* ^C */
         termios.c_cc[VQUIT]    =  034;  /* ^\ */
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/core/dbus-unit.c systemd-252.20/src/core/dbus-unit.c
--- systemd-252.19/src/core/dbus-unit.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/core/dbus-unit.c	2023-12-06 20:35:33.000000000 +0000
@@ -1067,7 +1067,7 @@
 
         r = unit_get_memory_current(u, &sz);
         if (r < 0 && r != -ENODATA)
-                log_unit_warning_errno(u, r, "Failed to get memory.usage_in_bytes attribute: %m");
+                log_unit_warning_errno(u, r, "Failed to get current memory usage from cgroup: %m");
 
         return sd_bus_message_append(reply, "t", sz);
 }
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/core/manager.c systemd-252.20/src/core/manager.c
--- systemd-252.19/src/core/manager.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/core/manager.c	2023-12-06 20:35:33.000000000 +0000
@@ -65,6 +65,7 @@
 #include "parse-util.h"
 #include "path-lookup.h"
 #include "path-util.h"
+#include "pretty-print.h"
 #include "process-util.h"
 #include "ratelimit.h"
 #include "rlimit-util.h"
@@ -164,42 +165,6 @@
         (void) sd_event_source_set_description(m->jobs_in_progress_event_source, "manager-jobs-in-progress");
 }
 
-#define CYLON_BUFFER_EXTRA (2*STRLEN(ANSI_RED) + STRLEN(ANSI_HIGHLIGHT_RED) + 2*STRLEN(ANSI_NORMAL))
-
-static void draw_cylon(char buffer[], size_t buflen, unsigned width, unsigned pos) {
-        char *p = buffer;
-
-        assert(buflen >= CYLON_BUFFER_EXTRA + width + 1);
-        assert(pos <= width+1); /* 0 or width+1 mean that the center light is behind the corner */
-
-        if (pos > 1) {
-                if (pos > 2)
-                        p = mempset(p, ' ', pos-2);
-                if (log_get_show_color())
-                        p = stpcpy(p, ANSI_RED);
-                *p++ = '*';
-        }
-
-        if (pos > 0 && pos <= width) {
-                if (log_get_show_color())
-                        p = stpcpy(p, ANSI_HIGHLIGHT_RED);
-                *p++ = '*';
-        }
-
-        if (log_get_show_color())
-                p = stpcpy(p, ANSI_NORMAL);
-
-        if (pos < width) {
-                if (log_get_show_color())
-                        p = stpcpy(p, ANSI_RED);
-                *p++ = '*';
-                if (pos < width-1)
-                        p = mempset(p, ' ', width-1-pos);
-                if (log_get_show_color())
-                        strcpy(p, ANSI_NORMAL);
-        }
-}
-
 static void manager_flip_auto_status(Manager *m, bool enable, const char *reason) {
         assert(m);
 
@@ -1792,7 +1757,8 @@
                 return;
 
         /* If this is the first boot, and we are in the host system, then preset everything */
-        UnitFilePresetMode mode = FIRST_BOOT_FULL_PRESET ? UNIT_FILE_PRESET_FULL : UNIT_FILE_PRESET_ENABLE_ONLY;
+        UnitFilePresetMode mode =
+                ENABLE_FIRST_BOOT_FULL_PRESET ? UNIT_FILE_PRESET_FULL : UNIT_FILE_PRESET_ENABLE_ONLY;
 
         r = unit_file_preset_all(LOOKUP_SCOPE_SYSTEM, 0, NULL, mode, NULL, 0);
         if (r < 0)
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/firstboot/firstboot.c systemd-252.20/src/firstboot/firstboot.c
--- systemd-252.19/src/firstboot/firstboot.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/firstboot/firstboot.c	2023-12-06 20:35:33.000000000 +0000
@@ -119,6 +119,8 @@
         pn = isempty(pretty_name) ? "Linux" : pretty_name;
         ac = isempty(ansi_color) ? "0" : ansi_color;
 
+        (void) reset_terminal_fd(STDIN_FILENO, /* switch_to_text= */ false);
+
         if (colors_enabled())
                 printf("\nWelcome to your new installation of \x1B[%sm%s\x1B[0m!\n", ac, pn);
         else
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/home/homed-home.c systemd-252.20/src/home/homed-home.c
--- systemd-252.19/src/home/homed-home.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/home/homed-home.c	2023-12-06 20:35:33.000000000 +0000
@@ -3156,7 +3156,7 @@
         r = wait_for_terminate_with_timeout(h->worker_pid, 30 * USEC_PER_SEC);
         if (r == -ETIMEDOUT)
                 log_warning_errno(r, "Waiting for worker process for home %s timed out. Ignoring.", h->user_name);
-        else
+        else if (r < 0)
                 log_warning_errno(r, "Failed to wait for worker process for home %s. Ignoring.", h->user_name);
 
         (void) hashmap_remove_value(h->manager->homes_by_worker_pid, PID_TO_PTR(h->worker_pid), h);
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/journal/journald-server.c systemd-252.20/src/journal/journald-server.c
--- systemd-252.19/src/journal/journald-server.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/journal/journald-server.c	2023-12-06 20:35:33.000000000 +0000
@@ -1776,6 +1776,12 @@
                 return 0;
         }
 
+        if (!s->event || sd_event_get_state(s->event) == SD_EVENT_FINISHED) {
+                /* Shutting down the server? Let's sync immediately. */
+                server_sync(s);
+                return 0;
+        }
+
         if (s->sync_scheduled)
                 return 0;
 
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/journal/journald-stream.c systemd-252.20/src/journal/journald-stream.c
--- systemd-252.19/src/journal/journald-stream.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/journal/journald-stream.c	2023-12-06 20:35:33.000000000 +0000
@@ -488,19 +488,21 @@
                 LineBreak force_flush,
                 size_t *ret_consumed) {
 
-        size_t consumed = 0, line_max;
+        size_t consumed = 0;
         int r;
 
         assert(s);
         assert(p);
 
-        line_max = stdout_stream_line_max(s);
 
         for (;;) {
                 LineBreak line_break;
                 size_t skip, found;
                 char *end1, *end2;
-                size_t tmp_remaining = MIN(remaining, line_max);
+                size_t tmp_remaining, line_max;
+
+                line_max = stdout_stream_line_max(s);
+                tmp_remaining = MIN(remaining, line_max);
 
                 end1 = memchr(p, '\n', tmp_remaining);
                 end2 = memchr(p, 0, end1 ? (size_t) (end1 - p) : tmp_remaining);
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/libsystemd/sd-bus/bus-convenience.c systemd-252.20/src/libsystemd/sd-bus/bus-convenience.c
--- systemd-252.19/src/libsystemd/sd-bus/bus-convenience.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/libsystemd/sd-bus/bus-convenience.c	2023-12-06 20:35:33.000000000 +0000
@@ -626,7 +626,7 @@
         c = sd_bus_message_get_creds(call);
 
         /* All data we need? */
-        if (c && (mask & ~c->mask) == 0) {
+        if (c && (mask & ~SD_BUS_CREDS_AUGMENT & ~c->mask) == 0) {
                 *ret = sd_bus_creds_ref(c);
                 return 0;
         }
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/libsystemd/sd-bus/sd-bus.c systemd-252.20/src/libsystemd/sd-bus/sd-bus.c
--- systemd-252.19/src/libsystemd/sd-bus/sd-bus.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/libsystemd/sd-bus/sd-bus.c	2023-12-06 20:35:33.000000000 +0000
@@ -1688,8 +1688,8 @@
         r = user_and_machine_valid(user_and_machine);
         if (r < 0)
                 return r;
-
-        assert_return(r > 0, -EINVAL);
+        if (r == 0)
+                return -EINVAL;
 
         r = sd_bus_new(&b);
         if (r < 0)
@@ -1724,8 +1724,8 @@
         r = user_and_machine_valid(user_and_machine);
         if (r < 0)
                 return r;
-
-        assert_return(r > 0, -EINVAL);
+        if (r == 0)
+                return -EINVAL;
 
         r = sd_bus_new(&b);
         if (r < 0)
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/libsystemd/sd-bus/test-bus-chat.c systemd-252.20/src/libsystemd/sd-bus/test-bus-chat.c
--- systemd-252.19/src/libsystemd/sd-bus/test-bus-chat.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/libsystemd/sd-bus/test-bus-chat.c	2023-12-06 20:35:33.000000000 +0000
@@ -117,6 +117,7 @@
 
         while (!client1_gone || !client2_gone) {
                 _cleanup_(sd_bus_message_unrefp) sd_bus_message *m = NULL;
+                _cleanup_(sd_bus_creds_unrefp) sd_bus_creds *creds = NULL;
                 pid_t pid = 0;
                 const char *label = NULL;
 
@@ -139,8 +140,17 @@
                 if (!m)
                         continue;
 
-                sd_bus_creds_get_pid(sd_bus_message_get_creds(m), &pid);
-                sd_bus_creds_get_selinux_context(sd_bus_message_get_creds(m), &label);
+                r = sd_bus_query_sender_creds(m, SD_BUS_CREDS_AUGMENT | SD_BUS_CREDS_PID | SD_BUS_CREDS_SELINUX_CONTEXT, &creds);
+                if (r < 0)
+                        log_debug_errno(r, "Failed to query sender credentials, ignoring: %m");
+                else {
+                        r = sd_bus_creds_get_pid(creds, &pid);
+                        if (r < 0)
+                                return log_error_errno(r, "Failed to get sender pid: %m");
+
+                        (void) sd_bus_creds_get_selinux_context(creds, &label);
+                }
+
                 log_info("Got message! member=%s pid="PID_FMT" label=%s",
                          strna(sd_bus_message_get_member(m)),
                          pid,
@@ -441,9 +451,12 @@
 
         r = sd_bus_call(bus, m, 200 * USEC_PER_MSEC, &error, &reply);
         if (r < 0)
-                log_info("Failed to issue method call: %s", bus_error_message(&error, r));
-        else
-                log_info("Slow call succeed.");
+                log_debug("Failed to issue method call: %s", bus_error_message(&error, r));
+        else {
+                log_error("Slow call unexpectedly succeed.");
+                r = -ENOANO;
+                goto finish;
+        }
 
         m = sd_bus_message_unref(m);
 
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/libsystemd/sd-device/sd-device.c systemd-252.20/src/libsystemd/sd-device/sd-device.c
--- systemd-252.19/src/libsystemd/sd-device/sd-device.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/libsystemd/sd-device/sd-device.c	2023-12-06 20:35:33.000000000 +0000
@@ -421,8 +421,13 @@
         int r;
 
         assert_return(ret, -EINVAL);
-        assert_return(path_is_normalized(subsystem), -EINVAL);
-        assert_return(path_is_normalized(sysname), -EINVAL);
+        assert_return(subsystem, -EINVAL);
+        assert_return(sysname, -EINVAL);
+
+        if (!path_is_normalized(subsystem))
+                return -EINVAL;
+        if (!path_is_normalized(sysname))
+                return -EINVAL;
 
         /* translate sysname back to sysfs filename */
         name = strdupa_safe(sysname);
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/libsystemd/sd-journal/journal-file.c systemd-252.20/src/libsystemd/sd-journal/journal-file.c
--- systemd-252.19/src/libsystemd/sd-journal/journal-file.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/libsystemd/sd-journal/journal-file.c	2023-12-06 20:35:33.000000000 +0000
@@ -3048,10 +3048,8 @@
         assert(f);
 
         r = find_data_object_by_boot_id(f, boot_id, &o, NULL);
-        if (r < 0)
+        if (r <= 0)
                 return r;
-        if (r == 0)
-                return -ENOENT;
 
         return generic_array_bisect_plus_one(
                         f,
@@ -3289,10 +3287,8 @@
 
         /* First, seek by time */
         r = find_data_object_by_boot_id(f, boot_id, &o, &b);
-        if (r < 0)
+        if (r <= 0)
                 return r;
-        if (r == 0)
-                return -ENOENT;
 
         r = generic_array_bisect_plus_one(f,
                                           le64toh(o->data.entry_offset),
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/libsystemd/sd-journal/sd-journal.c systemd-252.20/src/libsystemd/sd-journal/sd-journal.c
--- systemd-252.19/src/libsystemd/sd-journal/sd-journal.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/libsystemd/sd-journal/sd-journal.c	2023-12-06 20:35:33.000000000 +0000
@@ -237,7 +237,8 @@
         if (size == 0)
                 size = strlen(data);
 
-        assert_return(match_is_valid(data, size), -EINVAL);
+        if (!match_is_valid(data, size))
+                return -EINVAL;
 
         /* level 0: AND term
          * level 1: OR terms
@@ -611,7 +612,7 @@
                         return journal_file_move_to_entry_by_seqnum_for_data(f, d, j->current_location.seqnum, direction, ret, offset);
                 if (j->current_location.monotonic_set) {
                         r = journal_file_move_to_entry_by_monotonic_for_data(f, d, j->current_location.boot_id, j->current_location.monotonic, direction, ret, offset);
-                        if (r != -ENOENT)
+                        if (r != 0)
                                 return r;
 
                         /* The data object might have been invalidated. */
@@ -706,7 +707,7 @@
                         return journal_file_move_to_entry_by_seqnum(f, j->current_location.seqnum, direction, ret, offset);
                 if (j->current_location.monotonic_set) {
                         r = journal_file_move_to_entry_by_monotonic(f, j->current_location.boot_id, j->current_location.monotonic, direction, ret, offset);
-                        if (r != -ENOENT)
+                        if (r != 0)
                                 return r;
                 }
                 if (j->current_location.realtime_set)
@@ -2792,7 +2793,9 @@
         assert_return(j, -EINVAL);
         assert_return(!journal_pid_changed(j), -ECHILD);
         assert_return(!isempty(field), -EINVAL);
-        assert_return(field_is_valid(field), -EINVAL);
+
+        if (!field_is_valid(field))
+                return -EINVAL;
 
         r = free_and_strdup(&j->unique_field, field);
         if (r < 0)
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/libsystemd-network/sd-dhcp6-client.c systemd-252.20/src/libsystemd-network/sd-dhcp6-client.c
--- systemd-252.19/src/libsystemd-network/sd-dhcp6-client.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/libsystemd-network/sd-dhcp6-client.c	2023-12-06 20:35:33.000000000 +0000
@@ -252,7 +252,7 @@
         int r;
 
         assert_return(client, -EINVAL);
-        assert_return(client->duid_len > 0, -ENODATA);
+        assert_return(client->duid_len > offsetof(struct duid, raw.data), -ENODATA);
         assert_return(duid, -EINVAL);
 
         v = duid_type_to_string(be16toh(client->duid.type));
@@ -266,7 +266,7 @@
                         return -ENOMEM;
         }
 
-        t = hexmem(&client->duid.raw.data, client->duid_len);
+        t = hexmem(client->duid.raw.data, client->duid_len - offsetof(struct duid, raw.data));
         if (!t)
                 return -ENOMEM;
 
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/libsystemd-network/sd-dhcp-lease.c systemd-252.20/src/libsystemd-network/sd-dhcp-lease.c
--- systemd-252.19/src/libsystemd-network/sd-dhcp-lease.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/libsystemd-network/sd-dhcp-lease.c	2023-12-06 20:35:33.000000000 +0000
@@ -831,7 +831,10 @@
         int r;
 
         assert(domains);
-        assert_return(option && len > 0, -ENODATA);
+        assert(option || len == 0);
+
+        if (len == 0)
+                return -EBADMSG;
 
         while (pos < len) {
                 _cleanup_free_ char *name = NULL;
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/libsystemd-network/test-sd-dhcp-lease.c systemd-252.20/src/libsystemd-network/test-sd-dhcp-lease.c
--- systemd-252.19/src/libsystemd-network/test-sd-dhcp-lease.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/libsystemd-network/test-sd-dhcp-lease.c	2023-12-06 20:35:33.000000000 +0000
@@ -60,8 +60,8 @@
         _cleanup_strv_free_ char **domains = NULL;
         static const uint8_t optionbuf[3] = {0, 0, 0};
 
-        assert_se(dhcp_lease_parse_search_domains(NULL, 0, &domains) == -ENODATA);
-        assert_se(dhcp_lease_parse_search_domains(optionbuf, 0, &domains) == -ENODATA);
+        assert_se(dhcp_lease_parse_search_domains(NULL, 0, &domains) == -EBADMSG);
+        assert_se(dhcp_lease_parse_search_domains(optionbuf, 0, &domains) == -EBADMSG);
 }
 
 TEST(dhcp_lease_parse_search_domains_loops) {
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/login/logind-dbus.c systemd-252.20/src/login/logind-dbus.c
--- systemd-252.19/src/login/logind-dbus.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/login/logind-dbus.c	2023-12-06 20:35:33.000000000 +0000
@@ -2143,7 +2143,6 @@
         m->scheduled_shutdown_timeout = USEC_INFINITY;
         m->scheduled_shutdown_uid = UID_INVALID;
         m->scheduled_shutdown_tty = mfree(m->scheduled_shutdown_tty);
-        m->wall_message = mfree(m->wall_message);
         m->shutdown_dry_run = false;
 
         if (m->unlink_nologin) {
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/login/logind-session-dbus.c systemd-252.20/src/login/logind-session-dbus.c
--- systemd-252.19/src/login/logind-session-dbus.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/login/logind-session-dbus.c	2023-12-06 20:35:33.000000000 +0000
@@ -837,7 +837,7 @@
         SD_BUS_PROPERTY("VTNr", "u", NULL, offsetof(Session, vtnr), SD_BUS_VTABLE_PROPERTY_CONST),
         SD_BUS_PROPERTY("Seat", "(so)", property_get_seat, 0, SD_BUS_VTABLE_PROPERTY_CONST),
         SD_BUS_PROPERTY("TTY", "s", NULL, offsetof(Session, tty), SD_BUS_VTABLE_PROPERTY_CONST),
-        SD_BUS_PROPERTY("Display", "s", NULL, offsetof(Session, display), SD_BUS_VTABLE_PROPERTY_CONST),
+        SD_BUS_PROPERTY("Display", "s", NULL, offsetof(Session, display), SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE),
         SD_BUS_PROPERTY("Remote", "b", bus_property_get_bool, offsetof(Session, remote), SD_BUS_VTABLE_PROPERTY_CONST),
         SD_BUS_PROPERTY("RemoteHost", "s", NULL, offsetof(Session, remote_host), SD_BUS_VTABLE_PROPERTY_CONST),
         SD_BUS_PROPERTY("RemoteUser", "s", NULL, offsetof(Session, remote_user), SD_BUS_VTABLE_PROPERTY_CONST),
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/network/networkd-dhcp-common.c systemd-252.20/src/network/networkd-dhcp-common.c
--- systemd-252.19/src/network/networkd-dhcp-common.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/network/networkd-dhcp-common.c	2023-12-06 20:35:33.000000000 +0000
@@ -839,9 +839,11 @@
         }
         case DHCP_OPTION_DATA_STRING:
                 sz = cunescape(p, UNESCAPE_ACCEPT_NUL, &q);
-                if (sz < 0)
+                if (sz < 0) {
                         log_syntax(unit, LOG_WARNING, filename, line, sz,
                                    "Failed to decode DHCP option data, ignoring assignment: %s", p);
+                        return 0;
+                }
 
                 udata = q;
                 break;
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/network/networkd-dhcp-prefix-delegation.c systemd-252.20/src/network/networkd-dhcp-prefix-delegation.c
--- systemd-252.19/src/network/networkd-dhcp-prefix-delegation.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/network/networkd-dhcp-prefix-delegation.c	2023-12-06 20:35:33.000000000 +0000
@@ -688,7 +688,8 @@
                 NetworkConfigSource source,
                 const union in_addr_union *server_address,
                 unsigned *counter,
-                route_netlink_handler_t callback) {
+                route_netlink_handler_t callback,
+                bool *configured) {
 
         _cleanup_(route_freep) Route *route = NULL;
         Route *existing;
@@ -700,6 +701,7 @@
         assert(server_address);
         assert(counter);
         assert(callback);
+        assert(configured);
 
         if (prefixlen >= 64) {
                 log_link_debug(link, "Not adding a blocking route for DHCP delegated prefix %s since the prefix has length >= 64.",
@@ -722,7 +724,7 @@
         route->lifetime_usec = lifetime_usec;
 
         if (route_get(link->manager, NULL, route, &existing) < 0)
-                link->dhcp6_configured = false;
+                *configured = false;
         else
                 route_unmark(existing);
 
@@ -743,7 +745,8 @@
 
         return dhcp_request_unreachable_route(link, addr, prefixlen, lifetime_usec,
                                               NETWORK_CONFIG_SOURCE_DHCP4, server_address,
-                                              &link->dhcp4_messages, dhcp4_unreachable_route_handler);
+                                              &link->dhcp4_messages, dhcp4_unreachable_route_handler,
+                                              &link->dhcp4_configured);
 }
 
 static int dhcp6_request_unreachable_route(
@@ -755,7 +758,8 @@
 
         return dhcp_request_unreachable_route(link, addr, prefixlen, lifetime_usec,
                                               NETWORK_CONFIG_SOURCE_DHCP6, server_address,
-                                              &link->dhcp6_messages, dhcp6_unreachable_route_handler);
+                                              &link->dhcp6_messages, dhcp6_unreachable_route_handler,
+                                              &link->dhcp6_configured);
 }
 
 static int dhcp_pd_prefix_add(Link *link, const struct in6_addr *prefix, uint8_t prefixlen) {
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/network/networkd-link.h systemd-252.20/src/network/networkd-link.h
--- systemd-252.19/src/network/networkd-link.h	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/network/networkd-link.h	2023-12-06 20:35:33.000000000 +0000
@@ -123,7 +123,7 @@
         sd_dhcp_lease *dhcp_lease;
         char *lease_file;
         unsigned dhcp4_messages;
-        bool dhcp4_configured:1;
+        bool dhcp4_configured;
         char *dhcp4_6rd_tunnel_name;
 
         sd_ipv4ll *ipv4ll;
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/portable/portablectl.c systemd-252.20/src/portable/portablectl.c
--- systemd-252.19/src/portable/portablectl.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/portable/portablectl.c	2023-12-06 20:35:33.000000000 +0000
@@ -107,7 +107,10 @@
         STRV_FOREACH(p, extensions) {
                 _cleanup_free_ char *resolved_extension_image = NULL;
 
-                r = determine_image(*p, false, &resolved_extension_image);
+                r = determine_image(
+                                *p,
+                                startswith(method, "Get") || startswith(method, "Detach"),
+                                &resolved_extension_image);
                 if (r < 0)
                         return r;
 
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/resolve/resolved-dns-cache.c systemd-252.20/src/resolve/resolved-dns-cache.c
--- systemd-252.19/src/resolve/resolved-dns-cache.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/resolve/resolved-dns-cache.c	2023-12-06 20:35:33.000000000 +0000
@@ -1271,6 +1271,19 @@
                         if (usec_sub_unsigned(j->until, ts) < j->rr->ttl * USEC_PER_SEC / 2)
                                 continue;
 
+                        if (max_rr > 0 && ancount >= max_rr) {
+                                DNS_PACKET_HEADER(p)->ancount = htobe16(ancount);
+                                ancount = 0;
+
+                                r = dns_packet_new_query(&p->more, p->protocol, 0, true);
+                                if (r < 0)
+                                        return r;
+
+                                p = p->more;
+
+                                max_rr = UINT_MAX;
+                        }
+
                         r = dns_packet_append_rr(p, j->rr, 0, NULL, NULL);
                         if (r == -EMSGSIZE) {
                                 if (max_rr == 0)
@@ -1296,18 +1309,6 @@
                                 return r;
 
                         ancount++;
-                        if (max_rr > 0 && ancount >= max_rr) {
-                                DNS_PACKET_HEADER(p)->ancount = htobe16(ancount);
-                                ancount = 0;
-
-                                r = dns_packet_new_query(&p->more, p->protocol, 0, true);
-                                if (r < 0)
-                                        return r;
-
-                                p = p->more;
-
-                                max_rr = UINT_MAX;
-                        }
                 }
 
 finalize:
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/resolve/resolved-dns-packet.c systemd-252.20/src/resolve/resolved-dns-packet.c
--- systemd-252.19/src/resolve/resolved-dns-packet.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/resolve/resolved-dns-packet.c	2023-12-06 20:35:33.000000000 +0000
@@ -308,13 +308,13 @@
         if (DNS_PACKET_OPCODE(p) != 0)
                 return -EBADMSG;
 
-        if (DNS_PACKET_TC(p))
-                return -EBADMSG;
-
         switch (p->protocol) {
 
         case DNS_PROTOCOL_LLMNR:
         case DNS_PROTOCOL_DNS:
+                if (DNS_PACKET_TC(p)) /* mDNS query may have truncation flag. */
+                        return -EBADMSG;
+
                 /* RFC 4795, Section 2.1.1. says to discard all queries with QDCOUNT != 1 */
                 if (DNS_PACKET_QDCOUNT(p) != 1)
                         return -EBADMSG;
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/resolve/resolved-dns-transaction.c systemd-252.20/src/resolve/resolved-dns-transaction.c
--- systemd-252.19/src/resolve/resolved-dns-transaction.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/resolve/resolved-dns-transaction.c	2023-12-06 20:35:33.000000000 +0000
@@ -1795,21 +1795,20 @@
         return dns_packet_append_answer(p, answer, nscount);
 }
 
-static int dns_transaction_make_packet_mdns(DnsTransaction *t) {
+static int mdns_make_dummy_packet(DnsTransaction *t, DnsPacket **ret_packet, Set **ret_keys) {
         _cleanup_(dns_packet_unrefp) DnsPacket *p = NULL;
         _cleanup_set_free_ Set *keys = NULL;
-        unsigned qdcount, ancount = 0 /* avoid false maybe-uninitialized warning */, nscount;
         bool add_known_answers = false;
+        unsigned qdcount;
         usec_t ts;
         int r;
 
         assert(t);
+        assert(t->scope);
         assert(t->scope->protocol == DNS_PROTOCOL_MDNS);
+        assert(ret_packet);
+        assert(ret_keys);
 
-        /* Discard any previously prepared packet, so we can start over and coalesce again */
-        t->sent = dns_packet_unref(t->sent);
-
-        /* First, create a dummy packet to calculate packet size. */
         r = dns_packet_new_query(&p, t->scope->protocol, 0, false);
         if (r < 0)
                 return r;
@@ -1832,120 +1831,139 @@
         if (r < 0)
                 return r;
 
-        /*
-         * For mDNS, we want to coalesce as many open queries in pending transactions into one single
-         * query packet on the wire as possible. To achieve that, we iterate through all pending transactions
-         * in our current scope, and see whether their timing constraints allow them to be sent.
-         */
-
         assert_se(sd_event_now(t->scope->manager->event, CLOCK_BOOTTIME, &ts) >= 0);
 
-        for (bool restart = true; restart;) {
-                restart = false;
-                LIST_FOREACH(transactions_by_scope, other, t->scope->transactions) {
-                        size_t saved_packet_size;
-                        bool append = false;
+        LIST_FOREACH(transactions_by_scope, other, t->scope->transactions) {
 
-                        /* Skip ourselves */
-                        if (other == t)
-                                continue;
-
-                        if (other->state != DNS_TRANSACTION_PENDING)
-                                continue;
-
-                        if (other->next_attempt_after > ts)
-                                continue;
-
-                        if (!set_contains(keys, dns_transaction_key(other))) {
-                                r = dns_packet_append_key(p, dns_transaction_key(other), 0, &saved_packet_size);
-                                /* If we can't stuff more questions into the packet, just give up.
-                                 * One of the 'other' transactions will fire later and take care of the rest. */
-                                if (r == -EMSGSIZE)
-                                        break;
-                                if (r < 0)
-                                        return r;
-
-                                r = dns_packet_append_zone(p, t, dns_transaction_key(other), NULL);
-                                if (r == -EMSGSIZE)
-                                        break;
-                                if (r < 0)
-                                        return r;
+                /* Skip ourselves */
+                if (other == t)
+                        continue;
 
-                                append = true;
-                        }
+                if (other->state != DNS_TRANSACTION_PENDING)
+                        continue;
+
+                if (other->next_attempt_after > ts)
+                        continue;
+
+                if (!set_contains(keys, dns_transaction_key(other))) {
+                        size_t saved_packet_size;
 
-                        r = dns_transaction_prepare(other, ts);
+                        r = dns_packet_append_key(p, dns_transaction_key(other), 0, &saved_packet_size);
+                        /* If we can't stuff more questions into the packet, just give up.
+                         * One of the 'other' transactions will fire later and take care of the rest. */
+                        if (r == -EMSGSIZE)
+                                break;
                         if (r < 0)
                                 return r;
-                        if (r == 0) {
-                                if (append)
-                                        dns_packet_truncate(p, saved_packet_size);
-
-                                /* In this case, not only this transaction, but multiple transactions may be
-                                 * freed. Hence, we need to restart the loop. */
-                                restart = true;
+
+                        r = dns_packet_append_zone(p, t, dns_transaction_key(other), NULL);
+                        if (r == -EMSGSIZE) {
+                                dns_packet_truncate(p, saved_packet_size);
                                 break;
                         }
+                        if (r < 0)
+                                return r;
 
-                        usec_t timeout = transaction_get_resend_timeout(other);
-                        r = dns_transaction_setup_timeout(other, timeout, usec_add(ts, timeout));
+                        r = set_ensure_put(&keys, &dns_resource_key_hash_ops, dns_transaction_key(other));
                         if (r < 0)
                                 return r;
+                }
 
-                        if (dns_key_is_shared(dns_transaction_key(other)))
-                                add_known_answers = true;
+                r = dns_transaction_prepare(other, ts);
+                if (r < 0)
+                        return r;
+                if (r == 0)
+                        /* In this case, not only this transaction, but multiple transactions may be
+                         * freed. Hence, we need to restart the loop. */
+                        return -EAGAIN;
 
-                        if (append) {
-                                r = set_ensure_put(&keys, &dns_resource_key_hash_ops, dns_transaction_key(other));
-                                if (r < 0)
-                                        return r;
-                        }
+                usec_t timeout = transaction_get_resend_timeout(other);
+                r = dns_transaction_setup_timeout(other, timeout, usec_add(ts, timeout));
+                if (r < 0)
+                        return r;
 
-                        qdcount++;
-                        if (qdcount >= UINT16_MAX)
-                                break;
-                }
+                if (dns_key_is_shared(dns_transaction_key(other)))
+                        add_known_answers = true;
+
+                qdcount++;
+                if (qdcount >= UINT16_MAX)
+                        break;
         }
 
-        /* Append known answer section if we're asking for any shared record */
+        DNS_PACKET_HEADER(p)->qdcount = htobe16(qdcount);
+
+        /* Append known answers section if we're asking for any shared record */
         if (add_known_answers) {
                 r = dns_cache_export_shared_to_packet(&t->scope->cache, p, ts, 0);
                 if (r < 0)
                         return r;
+        }
+
+        *ret_packet = TAKE_PTR(p);
+        *ret_keys = TAKE_PTR(keys);
+        return add_known_answers;
+}
+
+static int dns_transaction_make_packet_mdns(DnsTransaction *t) {
+        _cleanup_(dns_packet_unrefp) DnsPacket *p = NULL, *dummy = NULL;
+        _cleanup_set_free_ Set *keys = NULL;
+        bool add_known_answers;
+        DnsResourceKey *k;
+        unsigned c;
+        int r;
 
-                ancount = be16toh(DNS_PACKET_HEADER(p)->ancount);
+        assert(t);
+        assert(t->scope->protocol == DNS_PROTOCOL_MDNS);
+
+        /* Discard any previously prepared packet, so we can start over and coalesce again */
+        t->sent = dns_packet_unref(t->sent);
+
+        /* First, create a dummy packet to calculate the number of known answers to be appended in the first packet. */
+        for (;;) {
+                r = mdns_make_dummy_packet(t, &dummy, &keys);
+                if (r == -EAGAIN)
+                        continue;
+                if (r < 0)
+                        return r;
+
+                add_known_answers = r;
+                break;
         }
 
         /* Then, create actual packet. */
-        p = dns_packet_unref(p);
         r = dns_packet_new_query(&p, t->scope->protocol, 0, false);
         if (r < 0)
                 return r;
 
         /* Questions */
-        DnsResourceKey *k;
+        c = 0;
         SET_FOREACH(k, keys) {
                 r = dns_packet_append_key(p, k, 0, NULL);
                 if (r < 0)
                         return r;
+                c++;
         }
-        DNS_PACKET_HEADER(p)->qdcount = htobe16(qdcount);
+        DNS_PACKET_HEADER(p)->qdcount = htobe16(c);
 
         /* Known answers */
         if (add_known_answers) {
-                r = dns_cache_export_shared_to_packet(&t->scope->cache, p, ts, ancount);
+                usec_t ts;
+
+                assert_se(sd_event_now(t->scope->manager->event, CLOCK_BOOTTIME, &ts) >= 0);
+
+                r = dns_cache_export_shared_to_packet(&t->scope->cache, p, ts, be16toh(DNS_PACKET_HEADER(dummy)->ancount));
                 if (r < 0)
                         return r;
         }
 
         /* Authorities */
-        nscount = 0;
+        c = 0;
         SET_FOREACH(k, keys) {
-                r = dns_packet_append_zone(p, t, k, &nscount);
+                r = dns_packet_append_zone(p, t, k, &c);
                 if (r < 0)
                         return r;
         }
-        DNS_PACKET_HEADER(p)->nscount = htobe16(nscount);
+        DNS_PACKET_HEADER(p)->nscount = htobe16(c);
 
         t->sent = TAKE_PTR(p);
         return 0;
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/resolve/resolved-manager.c systemd-252.20/src/resolve/resolved-manager.c
--- systemd-252.19/src/resolve/resolved-manager.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/resolve/resolved-manager.c	2023-12-06 20:35:33.000000000 +0000
@@ -1163,8 +1163,11 @@
         assert(port > 0);
         assert(p);
 
+        /* For mDNS, it is natural that the packet have truncated flag when we have many known answers. */
+        bool truncated = DNS_PACKET_TC(p) && (p->protocol != DNS_PROTOCOL_MDNS || !p->more);
+
         log_debug("Sending %s%s packet with id %" PRIu16 " on interface %i/%s of size %zu.",
-                  DNS_PACKET_TC(p) ? "truncated (!) " : "",
+                  truncated ? "truncated (!) " : "",
                   DNS_PACKET_QR(p) ? "response" : "query",
                   DNS_PACKET_ID(p),
                   ifindex, af_to_name(family),
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/resolve/resolved-mdns.c systemd-252.20/src/resolve/resolved-mdns.c
--- systemd-252.19/src/resolve/resolved-mdns.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/resolve/resolved-mdns.c	2023-12-06 20:35:33.000000000 +0000
@@ -254,8 +254,9 @@
         if (r < 0)
                 return log_debug_errno(r, "Failed to extract resource records from incoming packet: %m");
 
+        /* TODO: Support Known-Answers only packets gracefully. */
         if (dns_question_size(p->question) <= 0)
-                return log_debug_errno(SYNTHETIC_ERRNO(EBADMSG), "Received mDNS query without question, ignoring.");
+                return 0;
 
         unicast_reply = mdns_should_reply_using_unicast(p);
         if (unicast_reply && !sender_on_local_subnet(s, p)) {
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/shared/conf-parser.h systemd-252.20/src/shared/conf-parser.h
--- systemd-252.19/src/shared/conf-parser.h	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/shared/conf-parser.h	2023-12-06 20:35:33.000000000 +0000
@@ -62,7 +62,7 @@
 } ConfigPerfItem;
 
 /* Prototype for a low-level gperf lookup function */
-typedef const ConfigPerfItem* (*ConfigPerfItemLookup)(const char *section_and_lvalue, unsigned length);
+typedef const ConfigPerfItem* (*ConfigPerfItemLookup)(const char *section_and_lvalue, GPERF_LEN_TYPE length);
 
 /* Prototype for a generic high-level lookup function */
 typedef int (*ConfigItemLookup)(
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/shared/loop-util.c systemd-252.20/src/shared/loop-util.c
--- systemd-252.19/src/shared/loop-util.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/shared/loop-util.c	2023-12-06 20:35:33.000000000 +0000
@@ -108,9 +108,16 @@
                  * check here if enabling direct IO worked, to make this easily debuggable however.
                  *
                  * (Should anyone really care and actually wants direct IO on old kernels: it might be worth
-                 * enabling direct IO with iteratively larger block sizes until it eventually works.) */
+                 * enabling direct IO with iteratively larger block sizes until it eventually works.)
+                 *
+                 * On older kernels (e.g.: 5.10) when this is attempted on a file stored on a dm-crypt
+                 * backed partition the kernel will start returning I/O errors when accessing the mounted
+                 * loop device, so return a recognizable error that causes the operation to be started
+                 * from scratch without the LO_FLAGS_DIRECT_IO flag. */
                 if (!FLAGS_SET(info.lo_flags, LO_FLAGS_DIRECT_IO))
-                        log_debug("Could not enable direct IO mode, proceeding in buffered IO mode.");
+                        return log_debug_errno(
+                                        SYNTHETIC_ERRNO(ENOANO),
+                                        "Could not enable direct IO mode, retrying in buffered IO mode.");
         }
 
         return 0;
@@ -408,7 +415,7 @@
                 LoopDevice **ret) {
 
         _cleanup_(loop_device_unrefp) LoopDevice *d = NULL;
-        _cleanup_close_ int direct_io_fd = -1, control = -1;
+        _cleanup_close_ int reopened_fd = -1, control = -1;
         _cleanup_free_ char *backing_file = NULL;
         struct loop_config config;
         int r, f_flags;
@@ -457,16 +464,16 @@
                  * Our intention here is that LO_FLAGS_DIRECT_IO is the primary knob, and O_DIRECT derived
                  * from that automatically. */
 
-                direct_io_fd = fd_reopen(fd, (FLAGS_SET(loop_flags, LO_FLAGS_DIRECT_IO) ? O_DIRECT : 0)|O_CLOEXEC|O_NONBLOCK|open_flags);
-                if (direct_io_fd < 0) {
+                reopened_fd = fd_reopen(fd, (FLAGS_SET(loop_flags, LO_FLAGS_DIRECT_IO) ? O_DIRECT : 0)|O_CLOEXEC|O_NONBLOCK|open_flags);
+                if (reopened_fd < 0) {
                         if (!FLAGS_SET(loop_flags, LO_FLAGS_DIRECT_IO))
-                                return log_debug_errno(errno, "Failed to reopen file descriptor without O_DIRECT: %m");
+                                return log_debug_errno(reopened_fd, "Failed to reopen file descriptor without O_DIRECT: %m");
 
                         /* Some file systems might not support O_DIRECT, let's gracefully continue without it then. */
-                        log_debug_errno(errno, "Failed to enable O_DIRECT for backing file descriptor for loopback device. Continuing without.");
+                        log_debug_errno(reopened_fd, "Failed to enable O_DIRECT for backing file descriptor for loopback device. Continuing without.");
                         loop_flags &= ~LO_FLAGS_DIRECT_IO;
                 } else
-                        fd = direct_io_fd; /* From now on, operate on our new O_DIRECT fd */
+                        fd = reopened_fd; /* From now on, operate on our new O_DIRECT fd */
         }
 
         control = open("/dev/loop-control", O_RDWR|O_CLOEXEC|O_NOCTTY|O_NONBLOCK);
@@ -514,8 +521,9 @@
                 /* -ENODEV or friends: Somebody might've gotten the same number from the kernel, used the
                  * device, and called LOOP_CTL_REMOVE on it. Let's retry with a new number.
                  * -EBUSY: a file descriptor is already bound to the loopback block device.
-                 * -EUCLEAN: some left-over partition devices that were cleaned up. */
-                if (!ERRNO_IS_DEVICE_ABSENT(r) && !IN_SET(r, -EBUSY, -EUCLEAN))
+                 * -EUCLEAN: some left-over partition devices that were cleaned up.
+                 * -ENOANO: we tried to use LO_FLAGS_DIRECT_IO but the kernel rejected it. */
+                if (!ERRNO_IS_DEVICE_ABSENT(r) && !IN_SET(r, -EBUSY, -EUCLEAN, -ENOANO))
                         return r;
 
                 /* OK, this didn't work, let's try again a bit later, but first release the lock on the
@@ -526,6 +534,23 @@
                 if (++n_attempts >= 64) /* Give up eventually */
                         return -EBUSY;
 
+                /* If we failed to enable direct IO mode, let's retry without it. We restart the process as
+                 * on some combination of kernel version and storage filesystem, the kernel is very unhappy
+                 * about a failed DIRECT_IO enablement and throws I/O errors. */
+                if (r == -ENOANO && FLAGS_SET(config.info.lo_flags, LO_FLAGS_DIRECT_IO)) {
+                        config.info.lo_flags &= ~LO_FLAGS_DIRECT_IO;
+                        open_flags &= ~O_DIRECT;
+
+                        int non_direct_io_fd = fd_reopen(config.fd, O_CLOEXEC|O_NONBLOCK|open_flags);
+                        if (non_direct_io_fd < 0)
+                                return log_debug_errno(
+                                                non_direct_io_fd,
+                                                "Failed to reopen file descriptor without O_DIRECT: %m");
+
+                        safe_close(reopened_fd);
+                        fd = config.fd = /* For cleanups */ reopened_fd = non_direct_io_fd;
+                }
+
                 /* Wait some random time, to make collision less likely. Let's pick a random time in the
                  * range 0ms…250ms, linearly scaled by the number of failed attempts. */
                 (void) usleep(random_u64_range(UINT64_C(10) * USEC_PER_MSEC +
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/shared/pam-util.c systemd-252.20/src/shared/pam-util.c
--- systemd-252.19/src/shared/pam-util.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/shared/pam-util.c	2023-12-06 20:35:33.000000000 +0000
@@ -37,7 +37,8 @@
                         pamerr = "n/a";  /* We cannot have any formatting chars */
 
                 char buf[p - format + strlen(pamerr) + 1];
-                xsprintf(buf, "%*s%s", (int)(p - format), format, pamerr);
+                xsprintf(buf, "%.*s%s", (int)(p - format), format, pamerr);
+
                 DISABLE_WARNING_FORMAT_NONLITERAL;
                 pam_vsyslog(handle, level, buf, ap);
                 REENABLE_WARNING;
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/shared/pretty-print.c systemd-252.20/src/shared/pretty-print.c
--- systemd-252.19/src/shared/pretty-print.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/shared/pretty-print.c	2023-12-06 20:35:33.000000000 +0000
@@ -18,6 +18,42 @@
 #include "terminal-util.h"
 #include "util.h"
 
+void draw_cylon(char buffer[], size_t buflen, unsigned width, unsigned pos) {
+        char *p = buffer;
+
+        assert(buflen >= CYLON_BUFFER_EXTRA + width + 1);
+        assert(pos <= width+1); /* 0 or width+1 mean that the center light is behind the corner */
+
+        if (pos > 1) {
+                if (pos > 2)
+                        p = mempset(p, ' ', pos-2);
+                if (log_get_show_color())
+                        p = stpcpy(p, ANSI_RED);
+                *p++ = '*';
+        }
+
+        if (pos > 0 && pos <= width) {
+                if (log_get_show_color())
+                        p = stpcpy(p, ANSI_HIGHLIGHT_RED);
+                *p++ = '*';
+        }
+
+        if (log_get_show_color())
+                p = stpcpy(p, ANSI_NORMAL);
+
+        if (pos < width) {
+                if (log_get_show_color())
+                        p = stpcpy(p, ANSI_RED);
+                *p++ = '*';
+                if (pos < width-1)
+                        p = mempset(p, ' ', width-1-pos);
+                if (log_get_show_color())
+                        p = stpcpy(p, ANSI_NORMAL);
+        }
+
+        *p = '\0';
+}
+
 bool urlify_enabled(void) {
 #if ENABLE_URLIFY
         static int cached_urlify_enabled = -1;
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/shared/pretty-print.h systemd-252.20/src/shared/pretty-print.h
--- systemd-252.19/src/shared/pretty-print.h	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/shared/pretty-print.h	2023-12-06 20:35:33.000000000 +0000
@@ -4,6 +4,10 @@
 #include "glyph-util.h"
 #include "terminal-util.h"
 
+#define CYLON_BUFFER_EXTRA (2*STRLEN(ANSI_RED) + STRLEN(ANSI_HIGHLIGHT_RED) + 2*STRLEN(ANSI_NORMAL))
+
+void draw_cylon(char buffer[], size_t buflen, unsigned width, unsigned pos);
+
 void print_separator(void);
 
 int file_url_from_path(const char *path, char **ret);
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/shared/sleep-config.c systemd-252.20/src/shared/sleep-config.c
--- systemd-252.19/src/shared/sleep-config.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/shared/sleep-config.c	2023-12-06 20:35:33.000000000 +0000
@@ -536,6 +536,7 @@
 int battery_trip_point_alarm_exists(void) {
         _cleanup_(sd_device_enumerator_unrefp) sd_device_enumerator *e = NULL;
         sd_device *dev;
+        bool has_battery = false;
         int r;
 
         r = battery_enumerator_new(&e);
@@ -543,21 +544,25 @@
                 return log_debug_errno(r, "Failed to initialize battery enumerator: %m");
 
         FOREACH_DEVICE(e, dev) {
-                int battery_alarm;
-                const char *s;
+                const char *alarm_attr;
+                int has_alarm;
 
-                r = sd_device_get_sysattr_value(dev, "alarm", &s);
+                has_battery = true;
+
+                r = sd_device_get_sysattr_value(dev, "alarm", &alarm_attr);
                 if (r < 0)
-                        return log_device_debug_errno(dev, r, "Failed to read battery alarm: %m");
+                        return log_device_debug_errno(dev, r, "Failed to read battery alarm attribute: %m");
 
-                r = safe_atoi(s, &battery_alarm);
+                r = safe_atoi(alarm_attr, &has_alarm);
                 if (r < 0)
-                        return log_device_debug_errno(dev, r, "Failed to parse battery alarm: %m");
-                if (battery_alarm <= 0)
+                        return log_device_debug_errno(dev, r,
+                                                      "Failed to parse battery alarm attribute '%s': %m",
+                                                      alarm_attr);
+                if (has_alarm <= 0)
                         return false;
         }
 
-        return true;
+        return has_battery;
 }
 
 /* Return true if wakeup type is APM timer */
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/shared/utmp-wtmp.c systemd-252.20/src/shared/utmp-wtmp.c
--- systemd-252.19/src/shared/utmp-wtmp.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/shared/utmp-wtmp.c	2023-12-06 20:35:33.000000000 +0000
@@ -225,7 +225,7 @@
         utmpx = utxent_start();
 
         /* Copy the whole string if it fits, or just the suffix without the terminating NUL. */
-        copy_suffix(store.ut_id, sizeof(store.ut_id), id);
+        copy_suffix(lookup.ut_id, sizeof(lookup.ut_id), id);
 
         found = getutxid(&lookup);
         if (!found)
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/stdio-bridge/stdio-bridge.c systemd-252.20/src/stdio-bridge/stdio-bridge.c
--- systemd-252.19/src/stdio-bridge/stdio-bridge.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/stdio-bridge/stdio-bridge.c	2023-12-06 20:35:33.000000000 +0000
@@ -183,10 +183,16 @@
                 assert_cc(sizeof(usec_t) == sizeof(uint64_t));
 
                 r = sd_bus_process(a, &m);
-                if (r < 0)
-                        return log_error_errno(r, "Failed to process bus a: %m");
+                if (r < 0) {
+                        if (ERRNO_IS_DISCONNECT(r)) /* Treat 'connection reset by peer' as clean exit condition */
+                                break;
 
+                        return log_error_errno(r, "Failed to process bus a: %m");
+                }
                 if (m) {
+                        if (sd_bus_message_is_signal(m, "org.freedesktop.DBus.Local", "Disconnected"))
+                                break;
+
                         r = sd_bus_send(b, m, NULL);
                         if (r < 0)
                                 return log_error_errno(r, "Failed to send message: %m");
@@ -199,12 +205,14 @@
                 if (r < 0) {
                         /* treat 'connection reset by peer' as clean exit condition */
                         if (ERRNO_IS_DISCONNECT(r))
-                                return 0;
+                                break;
 
                         return log_error_errno(r, "Failed to process bus: %m");
                 }
-
                 if (m) {
+                        if (sd_bus_message_is_signal(m, "org.freedesktop.DBus.Local", "Disconnected"))
+                                break;
+
                         r = sd_bus_send(a, m, NULL);
                         if (r < 0)
                                 return log_error_errno(r, "Failed to send message: %m");
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/systemctl/systemctl-daemon-reload.c systemd-252.20/src/systemctl/systemctl-daemon-reload.c
--- systemd-252.19/src/systemctl/systemctl-daemon-reload.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/systemctl/systemctl-daemon-reload.c	2023-12-06 20:35:33.000000000 +0000
@@ -45,11 +45,13 @@
                 return 1;
         if (r < 0) {
                 if (graceful) { /* If graceful mode is selected, debug log, but don't fail */
-                        log_debug_errno(r, "Failed to reload daemon via the bus, ignoring: %s", bus_error_message(&error, r));
+                        log_debug_errno(r, "%s daemon failed via the bus, ignoring: %s",
+                                        method, bus_error_message(&error, r));
                         return 0;
                 }
 
-                return log_error_errno(r, "Failed to reload daemon: %s", bus_error_message(&error, r));
+                return log_error_errno(r, "%s daemon failed: %s",
+                                       method, bus_error_message(&error, r));
         }
 
         return 1;
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/systemctl/systemctl-enable.c systemd-252.20/src/systemctl/systemctl-enable.c
--- systemd-252.19/src/systemctl/systemctl-enable.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/systemctl/systemctl-enable.c	2023-12-06 20:35:33.000000000 +0000
@@ -249,7 +249,7 @@
                            " \n" /* trick: the space is needed so that the line does not get stripped from output */
                            "Possible reasons for having this kind of units are:\n"
                            "%1$s A unit may be statically enabled by being symlinked from another unit's\n"
-                           "  .wants/, .requires/, or .upholds/ directory.\n"
+                           "  .wants/ or .requires/ directory.\n"
                            "%1$s A unit's purpose may be to act as a helper for some other unit which has\n"
                            "  a requirement dependency on it.\n"
                            "%1$s A unit may be started when needed via activation (socket, path, timer,\n"
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/systemctl/systemctl-show.c systemd-252.20/src/systemctl/systemctl-show.c
--- systemd-252.19/src/systemctl/systemctl-show.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/systemctl/systemctl-show.c	2023-12-06 20:35:33.000000000 +0000
@@ -1867,6 +1867,7 @@
                 bool *ellipsized) {
 
         static const struct bus_properties_map property_map[] = {
+                { "Id",                             "s",               NULL,           offsetof(UnitStatusInfo, id)                                },
                 { "LoadState",                      "s",               NULL,           offsetof(UnitStatusInfo, load_state)                        },
                 { "ActiveState",                    "s",               NULL,           offsetof(UnitStatusInfo, active_state)                      },
                 { "FreezerState",                   "s",               NULL,           offsetof(UnitStatusInfo, freezer_state)                     },
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/test/test-condition.c systemd-252.20/src/test/test-condition.c
--- systemd-252.19/src/test/test-condition.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/test/test-condition.c	2023-12-06 20:35:33.000000000 +0000
@@ -961,6 +961,8 @@
 
         max_gid = getgid();
         for (i = 0; i < ngroups; i++) {
+                _cleanup_free_ char *name = NULL;
+
                 assert_se(0 < asprintf(&gid, "%u", gids[i]));
                 condition = condition_new(CONDITION_GROUP, gid, false, false);
                 assert_se(condition);
@@ -971,15 +973,16 @@
                 free(gid);
                 max_gid = gids[i] > max_gid ? gids[i] : max_gid;
 
-                groupname = gid_to_name(gids[i]);
-                assert_se(groupname);
-                condition = condition_new(CONDITION_GROUP, groupname, false, false);
+                name = gid_to_name(gids[i]);
+                assert_se(name);
+                if (STR_IN_SET(name, "sbuild", "buildd"))
+                        return; /* Debian package build in chroot, groupnames won't match, skip */
+                condition = condition_new(CONDITION_GROUP, name, false, false);
                 assert_se(condition);
                 r = condition_test(condition, environ);
-                log_info("ConditionGroup=%s → %i", groupname, r);
+                log_info("ConditionGroup=%s → %i", name, r);
                 assert_se(r > 0);
                 condition_free(condition);
-                free(groupname);
                 max_gid = gids[i] > max_gid ? gids[i] : max_gid;
         }
 
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/test/test-load-fragment.c systemd-252.20/src/test/test-load-fragment.c
--- systemd-252.19/src/test/test-load-fragment.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/test/test-load-fragment.c	2023-12-06 20:35:33.000000000 +0000
@@ -35,6 +35,9 @@
 
 STATIC_DESTRUCTOR_REGISTER(runtime_dir, rm_rf_physical_and_freep);
 
+/* For testing type compatibility. */
+_unused_ ConfigPerfItemLookup unused_lookup = load_fragment_gperf_lookup;
+
 TEST_RET(unit_file_get_set) {
         int r;
         Hashmap *h;
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/test/test-path-util.c systemd-252.20/src/test/test-path-util.c
--- systemd-252.19/src/test/test-path-util.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/test/test-path-util.c	2023-12-06 20:35:33.000000000 +0000
@@ -537,8 +537,8 @@
         /* Ensure we use a sane default for PATH. */
         assert_se(unsetenv("PATH") == 0);
 
-        /* fsck.minix is provided by util-linux and will probably exist. */
-        assert_se(fsck_exists_for_fstype("minix") == 1);
+        /* We might or might not find one of these, so keep the test lax. */
+        assert_se(fsck_exists_for_fstype("minix") >= 0);
 
         assert_se(fsck_exists_for_fstype("AbCdE") == 0);
         assert_se(fsck_exists_for_fstype("/../bin/") == 0);
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/test/test-pretty-print.c systemd-252.20/src/test/test-pretty-print.c
--- systemd-252.19/src/test/test-pretty-print.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/test/test-pretty-print.c	2023-12-06 20:35:33.000000000 +0000
@@ -11,6 +11,34 @@
 #include "strv.h"
 #include "tests.h"
 
+#define CYLON_WIDTH 6
+
+static void test_draw_cylon_one(unsigned pos) {
+        char buf[CYLON_WIDTH + CYLON_BUFFER_EXTRA + 1];
+
+        log_debug("/* %s(%u) */", __func__, pos);
+
+        assert(pos <= CYLON_WIDTH + 1);
+
+        memset(buf, 0xff, sizeof(buf));
+        draw_cylon(buf, sizeof(buf), CYLON_WIDTH, pos);
+        assert_se(strlen(buf) < sizeof(buf));
+}
+
+TEST(draw_cylon) {
+        bool saved = log_get_show_color();
+
+        log_show_color(false);
+        for (unsigned i = 0; i <= CYLON_WIDTH + 1; i++)
+                test_draw_cylon_one(i);
+
+        log_show_color(true);
+        for (unsigned i = 0; i <= CYLON_WIDTH + 1; i++)
+                test_draw_cylon_one(i);
+
+        log_show_color(saved);
+}
+
 TEST(terminal_urlify) {
         _cleanup_free_ char *formatted = NULL;
 
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/test/test-user-util.c systemd-252.20/src/test/test-user-util.c
--- systemd-252.19/src/test/test-user-util.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/test/test-user-util.c	2023-12-06 20:35:33.000000000 +0000
@@ -342,7 +342,6 @@
         assert_se(ruid == uid);
         assert_se(rgid == gid);
         assert_se(path_equal(rhome, home));
-        assert_se(path_equal(rshell, shell));
 }
 
 TEST(get_user_creds) {
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/src/udev/udevadm-monitor.c systemd-252.20/src/udev/udevadm-monitor.c
--- systemd-252.19/src/udev/udevadm-monitor.c	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/src/udev/udevadm-monitor.c	2023-12-06 20:35:33.000000000 +0000
@@ -210,7 +210,7 @@
                 goto finalize;
         }
 
-        assert_se(sigprocmask_many(SIG_UNBLOCK, NULL, SIGTERM, SIGINT, -1) >= 0);
+        assert_se(sigprocmask_many(SIG_BLOCK, NULL, SIGTERM, SIGINT, -1) >= 0);
         (void) sd_event_add_signal(event, NULL, SIGTERM, NULL, NULL);
         (void) sd_event_add_signal(event, NULL, SIGINT, NULL, NULL);
 
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/test/fuzz/fuzz-network-parser/dhcp-option systemd-252.20/test/fuzz/fuzz-network-parser/dhcp-option
--- systemd-252.19/test/fuzz/fuzz-network-parser/dhcp-option	1970-01-01 01:00:00.000000000 +0100
+++ systemd-252.20/test/fuzz/fuzz-network-parser/dhcp-option	2023-12-06 20:35:33.000000000 +0000
@@ -0,0 +1,5 @@
+[DHCPv6]
+SendOption=1:string:\U
+SendVendorOption=123:1:string:\U
+[DHCPv4]
+SendOption=1:string:\U
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/test/fuzz/fuzz-udev-rules/99-systemd.rules systemd-252.20/test/fuzz/fuzz-udev-rules/99-systemd.rules
--- systemd-252.19/test/fuzz/fuzz-udev-rules/99-systemd.rules	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/test/fuzz/fuzz-udev-rules/99-systemd.rules	2023-12-06 20:35:33.000000000 +0000
@@ -17,7 +17,9 @@
 SUBSYSTEM=="block", TAG+="systemd"
 
 # We can't make any conclusions about suspended DM devices so let's just import previous SYSTEMD_READY state and skip other rules
-SUBSYSTEM=="block", ENV{DM_SUSPENDED}=="1", IMPORT{db}="SYSTEMD_READY", GOTO="systemd_end"
+SUBSYSTEM=="block", ENV{DM_SUSPENDED}=="1", IMPORT{db}="SYSTEMD_READY"
+SUBSYSTEM=="block", ENV{DM_SUSPENDED}=="1", GOTO="systemd_end"
+
 SUBSYSTEM=="block", ACTION=="add", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}=="1", ENV{SYSTEMD_READY}="0"
 
 # Ignore encrypted devices with no identified superblock on it, since
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/test/units/testsuite-29.sh systemd-252.20/test/units/testsuite-29.sh
--- systemd-252.19/test/units/testsuite-29.sh	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/test/units/testsuite-29.sh	2023-12-06 20:35:33.000000000 +0000
@@ -181,7 +181,11 @@
 
 portablectl inspect --force --cat --extension /tmp/app10.raw /usr/share/minimal_0.raw app0 | grep -q -F "Extension Release: /tmp/app10.raw"
 
-portablectl detach --force --now --runtime --extension /tmp/app10.raw /usr/share/minimal_0.raw app0
+# Ensure that we can detach even when an image has been deleted already (stop the unit manually as
+# portablectl won't find it)
+rm -f /tmp/app10.raw
+systemctl stop app0.service
+portablectl detach --force --runtime --extension /tmp/app10.raw /usr/share/minimal_0.raw app0
 
 # portablectl also works with directory paths rather than images
 
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/test/units/testsuite-44.service systemd-252.20/test/units/testsuite-44.service
--- systemd-252.19/test/units/testsuite-44.service	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/test/units/testsuite-44.service	2023-12-06 20:35:33.000000000 +0000
@@ -10,4 +10,3 @@
 ExecStartPre=rm -f /failed /testok
 ExecStart=/usr/lib/systemd/tests/testdata/units/%N.sh
 Type=oneshot
-LogTarget=foobar
diff -Nru --exclude pnp_id_registry.html --exclude acpi_id_registry.html --exclude parse_hwdb.py --exclude acpi_id_registry.csv --exclude pnp_id_registry.csv --exclude usb.ids --exclude pci.ids --exclude ma-large.txt --exclude ma-medium.txt --exclude ma-small.txt --exclude '*hwdb.patch' --exclude '*hwdb' systemd-252.19/test/units/testsuite-64.sh systemd-252.20/test/units/testsuite-64.sh
--- systemd-252.19/test/units/testsuite-64.sh	2023-11-10 00:22:41.000000000 +0000
+++ systemd-252.20/test/units/testsuite-64.sh	2023-12-06 20:35:33.000000000 +0000
@@ -583,7 +583,7 @@
         udevadm wait --settle --timeout=30 "/dev/disk/by-uuid/deadbeef-dead-dead-beef-11111111111$i" "/dev/disk/by-label/encdisk$i"
         # Add the device into /etc/crypttab, reload systemd, and then activate
         # the device so we can create a filesystem on it later
-        echo "encbtrfs$i UUID=deadbeef-dead-dead-beef-11111111111$i /etc/btrfs_keyfile luks,noearly" >>/etc/crypttab
+        echo "encbtrfs$i UUID=deadbeef-dead-dead-beef-11111111111$i /etc/btrfs_keyfile luks" >>/etc/crypttab
         systemctl daemon-reload
         systemctl start "systemd-cryptsetup@encbtrfs$i"
     done

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: