]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
condition: debug log if F_OK check on /run/systemd/first-boot fails unexpectedly
authorLennart Poettering <lennart@poettering.net>
Thu, 14 May 2020 08:07:34 +0000 (10:07 +0200)
committerLennart Poettering <lennart@poettering.net>
Mon, 18 May 2020 18:20:50 +0000 (20:20 +0200)
src/shared/condition.c

index b25e4f12b14e4e53ab39a24de3fe0ae84a433cc4..b17403855a4b68ef886fbb5b928b4f17089390ee 100644 (file)
@@ -626,7 +626,7 @@ static int condition_test_needs_update(Condition *c, char **env) {
 }
 
 static int condition_test_first_boot(Condition *c, char **env) {
-        int r;
+        int r, q;
 
         assert(c);
         assert(c->parameter);
@@ -636,7 +636,11 @@ static int condition_test_first_boot(Condition *c, char **env) {
         if (r < 0)
                 return r;
 
-        return (access("/run/systemd/first-boot", F_OK) >= 0) == !!r;
+        q = access("/run/systemd/first-boot", F_OK);
+        if (q < 0 && errno != ENOENT)
+                log_debug_errno(errno, "Failed to check if /run/systemd/first-boot exists, ignoring: %m");
+
+        return (q >= 0) == !!r;
 }
 
 static int condition_test_environment(Condition *c, char **env) {