From cb4cc169656dee894058ce97909c5306e34d004a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 3 Nov 2026 18:18:56 +0100 Subject: [PATCH] sd-journal: log correct errors fd_nonblock() returns a negative errno; the message used errno, and the stale value was also recorded for the file and returned. Also 'r' was set in a roundabout way in a few cases, simplify those. --- src/libsystemd/sd-journal/sd-journal.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/libsystemd/sd-journal/sd-journal.c b/src/libsystemd/sd-journal/sd-journal.c index a1c83242511..55915cd0ed6 100644 --- a/src/libsystemd/sd-journal/sd-journal.c +++ b/src/libsystemd/sd-journal/sd-journal.c @@ -1662,21 +1662,22 @@ static int add_any_file( r = fd_nonblock(fd, /* nonblock= */ false); if (r < 0) { - r = log_debug_errno(errno, "Failed to turn off O_NONBLOCK for %s: %m", path); + log_debug_errno(r, "Failed to turn off O_NONBLOCK for %s: %m", path); goto error; } r = fd_get_path(fd, &resolved_path); if (r < 0) { - r = log_debug_errno(r, "Failed to resolve path '%s': %m", path); + log_debug_errno(r, "Failed to resolve path '%s': %m", path); goto error; } path = resolved_path; } - if (fstat(fd, &st) < 0) { - r = log_debug_errno(errno, "Failed to fstat %s: %m", path ?: "fd"); + r = RET_NERRNO(fstat(fd, &st)); + if (r < 0) { + log_debug_errno(r, "Failed to fstat %s: %m", path ?: "fd"); goto error; } @@ -1710,8 +1711,8 @@ static int add_any_file( } if (ordered_hashmap_size(j->files) >= JOURNAL_FILES_MAX) { - r = log_debug_errno(SYNTHETIC_ERRNO(ETOOMANYREFS), - "Too many open journal files, not adding %s.", path ?: "fd"); + log_debug("Too many open journal files, not adding %s.", path ?: "fd"); + r = -ETOOMANYREFS; goto error; }