Debrand for AlmaLinux

This commit is contained in:
Andrew Lukoshko 2026-07-09 04:06:07 +00:00 committed by root
commit 069534c073
7 changed files with 279 additions and 2 deletions

View File

@ -0,0 +1,56 @@
From 21b5276e02b981a4c2626ada991ac8c695f656ed Mon Sep 17 00:00:00 2001
From: Yu Watanabe <watanabe.yu+github@gmail.com>
Date: Thu, 12 Mar 2026 07:16:46 +0900
Subject: [PATCH] udev: drop redundant checks
This partially reverts 16325b35fa6ecb25f66534a562583ce3b96d52f3,
as bad characters are already filtered.
(cherry picked from commit c5a04f59d912fb2c3451994279dea3ae3064f6c7)
Resolves: RHEL-180923
---
src/udev/udev-builtin-net_id.c | 9 ---------
1 file changed, 9 deletions(-)
diff --git a/src/udev/udev-builtin-net_id.c b/src/udev/udev-builtin-net_id.c
index 0d3c62f4b5..96e792bcde 100644
--- a/src/udev/udev-builtin-net_id.c
+++ b/src/udev/udev-builtin-net_id.c
@@ -40,7 +40,6 @@
#include "strv.h"
#include "strxcpyx.h"
#include "udev-builtin.h"
-#include "utf8.h"
#define ONBOARD_14BIT_INDEX_MAX ((1U << 14) - 1)
#define ONBOARD_16BIT_INDEX_MAX ((1U << 16) - 1)
@@ -237,9 +236,6 @@ static int get_port_specifier(sd_device *dev, bool fallback_to_dev_id, char **re
}
}
- if (!utf8_is_valid(phys_port_name) || string_has_cc(phys_port_name, /* ok= */ NULL))
- return log_device_debug_errno(dev, SYNTHETIC_ERRNO(EINVAL), "Invalid phys_port_name");
-
/* Otherwise, use phys_port_name as is. */
buf = strjoin("n", phys_port_name);
if (!buf)
@@ -344,9 +340,6 @@ static int names_pci_onboard_label(UdevEvent *event, sd_device *pci_dev, const c
if (r < 0)
return log_device_debug_errno(pci_dev, r, "Failed to get PCI onboard label: %m");
- if (!utf8_is_valid(label) || string_has_cc(label, /* ok= */ NULL))
- return log_device_debug_errno(dev, SYNTHETIC_ERRNO(EINVAL), "Invalid label");
-
char str[ALTIFNAMSIZ];
if (snprintf_ok(str, sizeof str, "%s%s",
naming_scheme_has(NAMING_LABEL_NOPREFIX) ? "" : prefix,
@@ -1264,8 +1257,6 @@ static int names_netdevsim(UdevEvent *event, const char *prefix) {
if (isempty(phys_port_name))
return log_device_debug_errno(dev, SYNTHETIC_ERRNO(EOPNOTSUPP),
"The 'phys_port_name' attribute is empty.");
- if (!utf8_is_valid(phys_port_name) || string_has_cc(phys_port_name, /* ok= */ NULL))
- return log_device_debug_errno(dev, SYNTHETIC_ERRNO(EINVAL), "Invalid phys_port_name");
char str[ALTIFNAMSIZ];
if (snprintf_ok(str, sizeof str, "%si%un%s", prefix, addr, phys_port_name))

View File

@ -0,0 +1,40 @@
From b01cc566e8b5ae794b08def0eaeec62b1f471fa2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Wed, 30 Jul 2025 01:25:28 +0200
Subject: [PATCH] TEST-71-HOSTNAME: specify job mode for the stop job (#38413)
The CI run is failing in the stop command:
```
[ 4841.936906] TEST-71-HOSTNAME.sh[140]: + stop_hostnamed
[ 4841.936906] TEST-71-HOSTNAME.sh[140]: + systemctl stop systemd-hostnamed.service
[ 4845.959747] TEST-71-HOSTNAME.sh[226]: Job for systemd-hostnamed.service canceled.
[ 4846.013286] systemd[1]: TEST-71-HOSTNAME.service: Main process exited, code=exited, status=1/FAILURE
[ 4846.013792] systemd[1]: TEST-71-HOSTNAME.service: Failed with result 'exit-code'.
[ 4846.021821] systemd[1]: Failed to start TEST-71-HOSTNAME.service - TEST-71-HOSTNAME.
```
This happens when we create the stop job, but while we're waiting for
it to finish, something triggers a start of the unit and we lose to competing
start job.
Hopefully fixes #36089.
(cherry picked from commit 57fbe401f5ef03af503a10e9c3339d646fb84dd3)
Related: RHEL-180923
---
test/units/TEST-71-HOSTNAME.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/test/units/TEST-71-HOSTNAME.sh b/test/units/TEST-71-HOSTNAME.sh
index dc3f587ea3..4cd197fc2e 100755
--- a/test/units/TEST-71-HOSTNAME.sh
+++ b/test/units/TEST-71-HOSTNAME.sh
@@ -62,7 +62,7 @@ get_chassis() (
)
stop_hostnamed() {
- systemctl stop systemd-hostnamed.service
+ systemctl stop --job-mode=replace-irreversibly systemd-hostnamed.service
# Reset trigger limit. This might fail if the unit was unloaded already, so ignore any errors.
systemctl reset-failed systemd-hostnamed || :
}

View File

@ -0,0 +1,37 @@
From 5f934babc0352136845ee52498cf0561883145ee Mon Sep 17 00:00:00 2001
From: Luca Boccassi <luca.boccassi@gmail.com>
Date: Fri, 30 May 2025 22:08:39 +0100
Subject: [PATCH] test: wait for coredump to appear before parsing
A new core was added to the test, but the loop counter was not increased
to wait for it, so the test races against systemd-coredump's processing.
This failed at least once in debci:
8015s [ 32.227813] TEST-87-AUX-UTILS-VM.sh[1038]: + coredumpctl info COREDUMP_TIMESTAMP=1679509902000000
8015s [ 32.228684] TEST-87-AUX-UTILS-VM.sh[1723]: No coredumps found.
Follow-up for 0c49e0049b7665bb7769a13ef346fef92e1ad4d6
Fixes https://github.com/systemd/systemd/issues/37666
(cherry picked from commit 703fbb0bba7f1a1b46342d6efedda30e51d46135)
Related: RHEL-155454
---
test/units/TEST-87-AUX-UTILS-VM.coredump.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/test/units/TEST-87-AUX-UTILS-VM.coredump.sh b/test/units/TEST-87-AUX-UTILS-VM.coredump.sh
index 0d7bed5609..be7f6c8722 100755
--- a/test/units/TEST-87-AUX-UTILS-VM.coredump.sh
+++ b/test/units/TEST-87-AUX-UTILS-VM.coredump.sh
@@ -199,7 +199,7 @@ journalctl -b -n 1 --output=export --output-fields=MESSAGE,COREDUMP COREDUMP_EXE
journalctl -b -n 1 --output=export --output-fields=MESSAGE,COREDUMP COREDUMP_EXE="/usr/bin/test-dump" |
/usr/lib/systemd/systemd-coredump --backtrace $$ 0 0 6 1679509902 12345 youmachine 1
# Wait a bit for the coredumps to get processed
-timeout 30 bash -c "while [[ \$(coredumpctl list -q --no-legend $$ | wc -l) -lt 2 ]]; do sleep 1; done"
+timeout 30 bash -c "while [[ \$(coredumpctl list -q --no-legend $$ | wc -l) -lt 3 ]]; do sleep 1; done"
coredumpctl info $$
coredumpctl info COREDUMP_TIMESTAMP=1679509900000000
coredumpctl info COREDUMP_TIMESTAMP=1679509901000000

View File

@ -0,0 +1,54 @@
From 0b43a14217a52f7774b823aca49d8443863fdc36 Mon Sep 17 00:00:00 2001
From: Yu Watanabe <watanabe.yu+github@gmail.com>
Date: Mon, 28 Jul 2025 16:40:27 +0900
Subject: [PATCH] TEST-87-AUX-UTILS-VM: make coredumps stored in archived
journal file
Fixes the following race:
```
TEST-87-AUX-UTILS-VM.sh[839]: + coredumpctl -1
TEST-87-AUX-UTILS-VM.sh[1169]: TIME PID UID GID SIG COREFILE EXE SIZE
TEST-87-AUX-UTILS-VM.sh[1169]: Sun 2025-07-27 23:22:02 UTC 885 0 0 SIGABRT present /tmp/test-dump 19.9K
TEST-87-AUX-UTILS-VM.sh[839]: + coredumpctl -n 1
TEST-87-AUX-UTILS-VM.sh[1172]: Journal file /var/log/journal/a8285330872602d1377cbaaf68869946/system.journal is truncated, ignoring file.
TEST-87-AUX-UTILS-VM.sh[1172]: No coredumps found.
```
(cherry picked from commit ab56a96194d102cb4ec279fc4eb181d16c1251ea)
Related: RHEL-155454
---
test/units/TEST-87-AUX-UTILS-VM.coredump.sh | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/test/units/TEST-87-AUX-UTILS-VM.coredump.sh b/test/units/TEST-87-AUX-UTILS-VM.coredump.sh
index be7f6c8722..476b8f1e83 100755
--- a/test/units/TEST-87-AUX-UTILS-VM.coredump.sh
+++ b/test/units/TEST-87-AUX-UTILS-VM.coredump.sh
@@ -21,7 +21,8 @@ at_exit() {
trap at_exit EXIT
-# To make all coredump entries stored in system.journal.
+# Sync and rotate journal to make all coredump entries stored in system.journal.
+journalctl --sync
journalctl --rotate
# Check that we're the ones to receive coredumps
@@ -107,6 +108,16 @@ EOF
unset CONTAINER
fi
+# Sync and rotate journals (again) to make coredumps stored in archived journal. Otherwise, the main active
+# journal file may be already mostly filled with the coredumps, and may trigger rotation during the sanity
+# checks below. If coredumpctl accesses the main journal currently rotationg, then it warns the following and
+# skips reading the main journal, and cannot find the recent coredumps:
+# TEST-87-AUX-UTILS-VM.sh[839]: + coredumpctl -n 1
+# TEST-87-AUX-UTILS-VM.sh[1172]: Journal file /var/log/journal/a8285330872602d1377cbaaf68869946/system.journal is truncated, ignoring file.
+# TEST-87-AUX-UTILS-VM.sh[1172]: No coredumps found.
+journalctl --sync
+journalctl --rotate
+
coredumpctl
SYSTEMD_LOG_LEVEL=debug coredumpctl
coredumpctl --help

View File

@ -0,0 +1,45 @@
From fe781e5198242baa8888619ab7f139e0e91f224c Mon Sep 17 00:00:00 2001
From: Yu Watanabe <watanabe.yu+github@gmail.com>
Date: Thu, 4 Sep 2025 14:19:40 +0900
Subject: [PATCH] TEST-87-AUX-UTILS-VM: rotate journal at one more place
Follow-ups for ab56a96194d102cb4ec279fc4eb181d16c1251ea.
Fixes the following failure:
```
TEST-87-AUX-UTILS-VM.sh[1196]: + systemd-run --user --wait --pipe -M testuser@.host -- coredumpctl
TEST-87-AUX-UTILS-VM.sh[1840]: Running as unit: run-p1840-i1841.service; invocation ID: 325a026377aa4cffb046c5a63a8906ab
TEST-87-AUX-UTILS-VM.sh[1853]: Hint: You are currently not seeing messages from other users and the system.
TEST-87-AUX-UTILS-VM.sh[1853]: Users in groups 'adm', 'systemd-journal', 'wheel' can see all messages.
TEST-87-AUX-UTILS-VM.sh[1853]: Pass -q to turn off this notice.
TEST-87-AUX-UTILS-VM.sh[1853]: Journal file /var/log/journal/6835d335b6684b6197bf071ad66f2678/user-4711.journal is truncated, ignoring file.
TEST-87-AUX-UTILS-VM.sh[1853]: No coredumps found.
TEST-87-AUX-UTILS-VM.sh[1840]: Finished with result: exit-code
TEST-87-AUX-UTILS-VM.sh[1840]: Main processes terminated with: code=exited, status=1/FAILURE
TEST-87-AUX-UTILS-VM.sh[1840]: Service runtime: 154ms
TEST-87-AUX-UTILS-VM.sh[1840]: CPU time consumed: 78ms
TEST-87-AUX-UTILS-VM.sh[1840]: Memory peak: 21.9M (swap: 0B)
```
(cherry picked from commit c02f570260869eb98c448ad1d3b659a173145c03)
Related: RHEL-155454
---
test/units/TEST-87-AUX-UTILS-VM.coredump.sh | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/test/units/TEST-87-AUX-UTILS-VM.coredump.sh b/test/units/TEST-87-AUX-UTILS-VM.coredump.sh
index 476b8f1e83..53cdcd8533 100755
--- a/test/units/TEST-87-AUX-UTILS-VM.coredump.sh
+++ b/test/units/TEST-87-AUX-UTILS-VM.coredump.sh
@@ -175,6 +175,10 @@ rm -fv /run/systemd/coredump.conf.d/99-external.conf
# Wait a bit for the coredumps to get processed
timeout 30 bash -c "while [[ \$(coredumpctl list -q --no-legend $CORE_TEST_UNPRIV_BIN | wc -l) -lt 4 ]]; do sleep 1; done"
+# Sync and rotate journal again to make the coredump stored in an archived journal.
+journalctl --sync
+journalctl --rotate
+
# root should see coredumps from both binaries
coredumpctl info "$CORE_TEST_UNPRIV_BIN"
coredumpctl info "${CORE_TEST_UNPRIV_BIN##*/}"

View File

@ -0,0 +1,31 @@
From 80d830fcaf09942a30782f2e5114455f0dbb6f94 Mon Sep 17 00:00:00 2001
From: Yu Watanabe <watanabe.yu+github@gmail.com>
Date: Sat, 9 Aug 2025 09:07:35 +0900
Subject: [PATCH] udev-rules: add missing device name prefix in log message
Otherwise, it is hard to find the dump in journal. With this change,
we can find the entry by e.g.
journalctl -b -u systemd-udevd.service DEVICE=eth0
Follow-up for b4ffb776696bdd3a7345f73956ce7551f6b449ff.
(cherry picked from commit d858b1b10ad85fc96ff86989297a2abc6205a343)
Resolves: RHEL-180929
---
src/udev/udev-rules.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c
index 4d9fbd39a5..e51b21f3cc 100644
--- a/src/udev/udev-rules.c
+++ b/src/udev/udev-rules.c
@@ -2586,7 +2586,7 @@ static int udev_rule_apply_token_to_event(
if (r < 0)
log_event_warning_errno(event, token, r, "Failed to finalize memory stream, ignoring: %m");
else
- log_info("%s", buf);
+ log_device_info(dev, "%s", buf);
} else {
puts("============================");
dump_event(event, NULL);

View File

@ -48,7 +48,7 @@ Url: https://systemd.io
# Allow users to specify the version and release when building the rpm by
# setting the %%version_override and %%release_override macros.
Version: %{?version_override}%{!?version_override:257}
Release: 28%{?dist}.alma.1
Release: 29%{?dist}.alma.1
%global stable %(c="%version"; [ "$c" = "${c#*.*}" ]; echo $?)
@ -801,6 +801,12 @@ Patch0688: 0688-Revert-pid1-enable-usrquota-support-on-dev-shm.patch
Patch0689: 0689-Revert-udev-builtin-net-id-print-cescaped-bad-attrib.patch
Patch0690: 0690-homectl-apply-all-member-of-groups-from-a-comma-sepa.patch
Patch0691: 0691-udevadm-gracefully-handle-when-a-maked-file-is-speci.patch
Patch0692: 0692-udev-drop-redundant-checks.patch
Patch0693: 0693-TEST-71-HOSTNAME-specify-job-mode-for-the-stop-job-3.patch
Patch0694: 0694-test-wait-for-coredump-to-appear-before-parsing.patch
Patch0695: 0695-TEST-87-AUX-UTILS-VM-make-coredumps-stored-in-archiv.patch
Patch0696: 0696-TEST-87-AUX-UTILS-VM-rotate-journal-at-one-more-plac.patch
Patch0697: 0697-udev-rules-add-missing-device-name-prefix-in-log-mes.patch
# Downstream-only patches (90009999)
%endif
@ -1752,9 +1758,17 @@ rm -f .file-list-*
rm -f %{name}.lang
%changelog
* Thu Jul 02 2026 Andrew Lukoshko <alukoshko@almalinux.org> - 257-28.alma.1
* Thu Jul 09 2026 Andrew Lukoshko <alukoshko@almalinux.org> - 257-29.alma.1
- Debrand for AlmaLinux
* Tue Jul 07 2026 systemd maintenance team <systemd-maint@redhat.com> - 257-29
- udev: drop redundant checks (RHEL-180923)
- TEST-71-HOSTNAME: specify job mode for the stop job (#38413) (RHEL-180923)
- test: wait for coredump to appear before parsing (RHEL-155454)
- TEST-87-AUX-UTILS-VM: make coredumps stored in archived journal file (RHEL-155454)
- TEST-87-AUX-UTILS-VM: rotate journal at one more place (RHEL-155454)
- udev-rules: add missing device name prefix in log message (RHEL-180929)
* Wed Jul 01 2026 systemd maintenance team <systemd-maint@redhat.com> - 257-28
- man: reword the description of "secure pager" handling (RHEL-102939)
- pager: also check for $SUDO_UID (RHEL-102939)