From a1417c121d19272b1389098648132106a5ffc661 Mon Sep 17 00:00:00 2001 From: Kairui Song Date: Thu, 14 Jan 2021 01:25:20 +0800 Subject: [PATCH] initrd: do a debug log if /etc/initrd-release doesn't take effect Signed-off-by: Kairui Song (cherry picked from commit 4a60d8cbcae574896a28f9f1f6204a1bddca8e99) Related: #1959339 --- src/basic/util.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/basic/util.c b/src/basic/util.c index fef52ad5ff..609f8c2f33 100644 --- a/src/basic/util.c +++ b/src/basic/util.c @@ -174,8 +174,17 @@ bool in_initrd(void) { saved_in_initrd = r > 0; } - if (saved_in_initrd != 0) - saved_in_initrd = access("/etc/initrd-release", F_OK) >= 0; + r = access("/etc/initrd-release", F_OK); + if (r >= 0) { + if (saved_in_initrd == 0) + log_debug("/etc/initrd-release exists, but it's not an initrd."); + else + saved_in_initrd = 1; + } else { + if (errno != ENOENT) + log_debug_errno(errno, "Failed to test if /etc/initrd-release exists: %m"); + saved_in_initrd = 0; + } return saved_in_initrd; }