[systemd-commits] 4 commits - .gitignore src/service.c src/socket.c src/socket.h src/umount.c TODO

Lennart Poettering lennart at kemper.freedesktop.org
Mon Mar 5 16:30:12 PST 2012


 .gitignore    |    2 ++
 TODO          |   11 ++++++-----
 src/service.c |    6 +++---
 src/socket.c  |   10 +++++-----
 src/socket.h  |    4 ++--
 src/umount.c  |    6 +++++-
 6 files changed, 23 insertions(+), 16 deletions(-)

New commits:
commit 4007e72e052c132c6944426340d79749b6d3e89f
Author: Lennart Poettering <lennart at poettering.net>
Date:   Tue Mar 6 01:30:00 2012 +0100

    update TODO

diff --git a/TODO b/TODO
index 9b6f526..32409b2 100644
--- a/TODO
+++ b/TODO
@@ -48,9 +48,6 @@ Features:
 * support units generated by a generator and placed in /run/systemd/system/; the directory is
   currently ignored because it is empty before the generatores are executed
 
-* let 'systemctl reboot' called as non-root talk to logind instead of systemd, to get polkit
-  system policy in the loop of privilege checking, so normal users can possibly use /sbin/reboot
-
 * Possibly, detect whether SysV init scripts can do reloading by looking for "echo Usage:" lines
 
 * figure out whether we should leave dbus around during shutdown

commit 6bda96a0234e2d3d61bc36de99c19a9293721fef
Author: Lennart Poettering <lennart at poettering.net>
Date:   Tue Mar 6 01:29:29 2012 +0100

    socket: rename 'broken' failure result to 'failed-permanent' on order not to introduce new terminology

diff --git a/src/service.c b/src/service.c
index 5764f5f..babd9cf 100644
--- a/src/service.c
+++ b/src/service.c
@@ -1436,7 +1436,7 @@ static int service_search_main_pid(Service *s) {
         return 0;
 }
 
-static void service_notify_sockets_dead(Service *s, bool broken) {
+static void service_notify_sockets_dead(Service *s, bool failed_permanent) {
         Iterator i;
         Unit *u;
 
@@ -1449,7 +1449,7 @@ static void service_notify_sockets_dead(Service *s, bool broken) {
 
         SET_FOREACH(u, UNIT(s)->dependencies[UNIT_TRIGGERED_BY], i)
                 if (u->type == UNIT_SOCKET)
-                        socket_notify_service_dead(SOCKET(u), broken);
+                        socket_notify_service_dead(SOCKET(u), failed_permanent);
 
         return;
 }
@@ -2359,7 +2359,7 @@ static int service_start_limit_test(Service *s) {
         }
 
         case SERVICE_START_LIMIT_REBOOT_FORCE:
-                log_warning("%s start request repeated too quickly, force rebooting.", UNIT(s)->id);
+                log_warning("%s start request repeated too quickly, forcibly rebooting.", UNIT(s)->id);
                 UNIT(s)->manager->exit_code = MANAGER_REBOOT;
                 break;
 
diff --git a/src/socket.c b/src/socket.c
index 6bcc129..aeedcbd 100644
--- a/src/socket.c
+++ b/src/socket.c
@@ -2038,7 +2038,7 @@ int socket_collect_fds(Socket *s, int **fds, unsigned *n_fds) {
         return 0;
 }
 
-void socket_notify_service_dead(Socket *s, bool broken) {
+void socket_notify_service_dead(Socket *s, bool failed_permanent) {
         assert(s);
 
         /* The service is dead. Dang!
@@ -2047,9 +2047,9 @@ void socket_notify_service_dead(Socket *s, bool broken) {
          * services. */
 
         if (s->state == SOCKET_RUNNING) {
-                log_debug("%s got notified about service death (broken: %s)", UNIT(s)->id, yes_no(broken));
-                if (broken)
-                        socket_enter_stop_pre(s, SOCKET_FAILURE_SERVICE_BROKEN);
+                log_debug("%s got notified about service death (failed permanently: %s)", UNIT(s)->id, yes_no(failed_permanent));
+                if (failed_permanent)
+                        socket_enter_stop_pre(s, SOCKET_FAILURE_SERVICE_FAILED_PERMANENT);
                 else
                         socket_enter_listening(s);
         }
@@ -2160,7 +2160,7 @@ static const char* const socket_result_table[_SOCKET_RESULT_MAX] = {
         [SOCKET_FAILURE_EXIT_CODE] = "exit-code",
         [SOCKET_FAILURE_SIGNAL] = "signal",
         [SOCKET_FAILURE_CORE_DUMP] = "core-dump",
-        [SOCKET_FAILURE_SERVICE_BROKEN] = "service-broken"
+        [SOCKET_FAILURE_SERVICE_FAILED_PERMANENT] = "service-failed-permanent"
 };
 
 DEFINE_STRING_TABLE_LOOKUP(socket_result, SocketResult);
diff --git a/src/socket.h b/src/socket.h
index 1f4f23c..6f2af7c 100644
--- a/src/socket.h
+++ b/src/socket.h
@@ -72,7 +72,7 @@ typedef enum SocketResult {
         SOCKET_FAILURE_EXIT_CODE,
         SOCKET_FAILURE_SIGNAL,
         SOCKET_FAILURE_CORE_DUMP,
-        SOCKET_FAILURE_SERVICE_BROKEN,
+        SOCKET_FAILURE_SERVICE_FAILED_PERMANENT,
         _SOCKET_RESULT_MAX,
         _SOCKET_RESULT_INVALID = -1
 } SocketResult;
@@ -149,7 +149,7 @@ struct Socket {
 int socket_collect_fds(Socket *s, int **fds, unsigned *n_fds);
 
 /* Called from the service when it shut down */
-void socket_notify_service_dead(Socket *s, bool broken);
+void socket_notify_service_dead(Socket *s, bool failed_permanent);
 
 /* Called from the mount code figure out if a mount is a dependency of
  * any of the sockets of this socket */

commit 9cacf564513b5fd6078cd418b104083aab8b9bd8
Author: Lennart Poettering <lennart at poettering.net>
Date:   Tue Mar 6 01:28:32 2012 +0100

    umount: don't try to umount /usr, if we are running from it

diff --git a/.gitignore b/.gitignore
index 3da7e66..3b69eb4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -103,4 +103,6 @@ stamp-*
 /Makefile
 ltmain.sh
 *.tar.xz
+*.tar.gz
+*.tar.bz2
 libtool
diff --git a/TODO b/TODO
index fbc494e..9b6f526 100644
--- a/TODO
+++ b/TODO
@@ -21,6 +21,8 @@ Bugfixes:
 
 Features:
 
+* prefer /etc over /run?
+
 * when dumping cgroup contents, include main/control PID of a service, explicitly
 
 * keep an eye on https://bugzilla.gnome.org/show_bug.cgi?id=670100
@@ -41,8 +43,6 @@ Features:
 
 * isolate for getty is still broken, due to logind
 
-* don't umount /usr
-
 * default unix qlen is too small (10). bump sysctl? add sockopt?
 
 * support units generated by a generator and placed in /run/systemd/system/; the directory is
diff --git a/src/umount.c b/src/umount.c
index 4e036d8..0a63d23 100644
--- a/src/umount.c
+++ b/src/umount.c
@@ -410,7 +410,11 @@ static int mount_points_list_umount(MountPoint **head, bool *changed, bool log_e
         assert(head);
 
         LIST_FOREACH_SAFE(mount_point, m, n, *head) {
-                if (streq(m->path, "/")) {
+                if (path_equal(m->path, "/")
+#ifndef HAVE_SPLIT_USR
+                    || path_equal(m->path, "/usr")
+#endif
+                ) {
                         n_failed++;
                         continue;
                 }

commit 7d900eb6f58ca76a0f742c6e1823aa7317d4471f
Author: Lennart Poettering <lennart at poettering.net>
Date:   Mon Mar 5 22:55:35 2012 +0100

    update TODO

diff --git a/TODO b/TODO
index d375bfb..fbc494e 100644
--- a/TODO
+++ b/TODO
@@ -21,6 +21,10 @@ Bugfixes:
 
 Features:
 
+* when dumping cgroup contents, include main/control PID of a service, explicitly
+
+* keep an eye on https://bugzilla.gnome.org/show_bug.cgi?id=670100
+
 * D-Bus: always pass cred data along each message
 
 * journal: work on https://fedoraproject.org/wiki/Features/systemd-journal



More information about the systemd-commits mailing list