summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKairui Song <kasong@redhat.com>2021-01-14 01:25:20 +0800
committerKairui Song <kasong@redhat.com>2021-01-14 21:51:12 +0800
commitb562b9c68c5249be49f140210c1295f0e6182358 (patch)
treeb45a1c6225bdbbd1bcf5053ea000741ccf2634bb
parent3b9b91696844a27419b98bedd3cd09d13f745a23 (diff)
downloadsystemd-b562b9c68c5249be49f140210c1295f0e6182358.tar.gz
initrd: do a debug log if /etc/initrd-release doesn't take effect
Signed-off-by: Kairui Song <kasong@redhat.com>
-rw-r--r--src/basic/util.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/basic/util.c b/src/basic/util.c
index 2e6820a63b..d24d52190c 100644
--- a/src/basic/util.c
+++ b/src/basic/util.c
@@ -96,8 +96,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;
}