From b75befc3c98bcfa57ab801a24234ecab1c0b34a9 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Sat, 30 Nov 2024 04:06:24 +0900 Subject: [PATCH 1/2] mkosi: extend DefaultTimeoutStopSec= when running on sanitizers Hopefully fixes #35335. --- .../etc/systemd/system.conf.d/10-default-timeout.conf | 6 ++++++ test/TEST-73-LOCALE/meson.build | 2 -- 2 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 mkosi.sanitizers/mkosi.extra/etc/systemd/system.conf.d/10-default-timeout.conf diff --git a/mkosi.sanitizers/mkosi.extra/etc/systemd/system.conf.d/10-default-timeout.conf b/mkosi.sanitizers/mkosi.extra/etc/systemd/system.conf.d/10-default-timeout.conf new file mode 100644 index 0000000000..28dbdb29a2 --- /dev/null +++ b/mkosi.sanitizers/mkosi.extra/etc/systemd/system.conf.d/10-default-timeout.conf @@ -0,0 +1,6 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +[Manager] +# Sanitizers may make exit() extremely slower. +# Let's extend the timeout. See issue #35335. +DefaultTimeoutStopSec=2min diff --git a/test/TEST-73-LOCALE/meson.build b/test/TEST-73-LOCALE/meson.build index e5b9f19015..4f50d66e55 100644 --- a/test/TEST-73-LOCALE/meson.build +++ b/test/TEST-73-LOCALE/meson.build @@ -4,7 +4,5 @@ integration_tests += [ integration_test_template + { 'name' : fs.name(meson.current_source_dir()), 'priority' : 10, - # TODO: Remove when https://github.com/systemd/systemd/issues/35335 is fixed. - 'coredump-exclude-regex' : '/systemd-localed', }, ] From 9c4670db3cb1635a5e171060371e04bf0686c5d6 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Sat, 30 Nov 2024 04:31:45 +0900 Subject: [PATCH 2/2] mkosi: move setting for journald to mkosi.extra --- .../systemd-journald.service.d/10-stdout-tty.conf | 8 ++++++++ mkosi.sanitizers/mkosi.postinst | 11 ----------- 2 files changed, 8 insertions(+), 11 deletions(-) create mode 100644 mkosi.sanitizers/mkosi.extra/etc/systemd/system/systemd-journald.service.d/10-stdout-tty.conf diff --git a/mkosi.sanitizers/mkosi.extra/etc/systemd/system/systemd-journald.service.d/10-stdout-tty.conf b/mkosi.sanitizers/mkosi.extra/etc/systemd/system/systemd-journald.service.d/10-stdout-tty.conf new file mode 100644 index 0000000000..c6a2681e3f --- /dev/null +++ b/mkosi.sanitizers/mkosi.extra/etc/systemd/system/systemd-journald.service.d/10-stdout-tty.conf @@ -0,0 +1,8 @@ +# SPDX-License-Identifier: LGPL-2.1-or-later + +[Service] +# Sanitizers log to stderr by default. However, journald's stderr is connected +# to /dev/null, so we lose all the sanitizer logs. To rectify that, let's +# connect journald's stdout to kmsg so that the sanitizer failures end up in the +# journal. +StandardOutput=kmsg diff --git a/mkosi.sanitizers/mkosi.postinst b/mkosi.sanitizers/mkosi.postinst index a6b529a4d6..e83d05c6bc 100755 --- a/mkosi.sanitizers/mkosi.postinst +++ b/mkosi.sanitizers/mkosi.postinst @@ -9,17 +9,6 @@ if [[ ! -f "$BUILDROOT/$LIBSYSTEMD" ]]; then exit 0 fi -# Sanitizers log to stderr by default. However, journald's stderr is connected to /dev/null, so we lose -# all the sanitizer logs. To rectify that, let's connect journald's stdout to kmsg so that the sanitizer -# failures end up in the journal. -if [[ -f "$BUILDROOT"/usr/lib/systemd/system/systemd-journald.service ]]; then - mkdir -p "$BUILDROOT"/etc/systemd/system/systemd-journald.service.d - cat >"$BUILDROOT"/etc/systemd/system/systemd-journald.service.d/10-stdout-tty.conf <