chiark / gitweb /
service: don't print a warning if we are in autorestart state, and can't start a...
authorLennart Poettering <lennart@poettering.net>
Wed, 18 Jul 2012 00:42:43 +0000 (02:42 +0200)
committerLennart Poettering <lennart@poettering.net>
Wed, 18 Jul 2012 00:42:43 +0000 (02:42 +0200)
src/core/service.c

index cf480ab..5dc06b3 100644 (file)
@@ -2476,11 +2476,12 @@ static int service_start(Unit *u) {
         /* A service that will be restarted must be stopped first to
          * trigger BindsTo and/or OnFailure dependencies. If a user
          * does not want to wait for the holdoff time to elapse, the
-         * service should be manually restarted, not started. */
-        if (s->state == SERVICE_AUTO_RESTART) {
-                log_warning("%s automatic restart is pending, must be stopped before issuing start request.", UNIT(s)->id);
+         * service should be manually restarted, not started. We
+         * simply return EAGAIN here, so that any start jobs stay
+         * queued, and assume that the auto restart timer will
+         * eventually trigger the restart. */
+        if (s->state == SERVICE_AUTO_RESTART)
                 return -EAGAIN;
-        }
 
         assert(s->state == SERVICE_DEAD || s->state == SERVICE_FAILED);