diff options
author | Nicolás Reynolds <fauno@endefensadelsl.org> | 2013-12-27 23:55:53 +0000 |
---|---|---|
committer | Nicolás Reynolds <fauno@endefensadelsl.org> | 2013-12-27 23:55:53 +0000 |
commit | 65eeff79fff8a1bfdf67ca51d147384f46f4d5c0 (patch) | |
tree | fbfdff322b28d9a3c37e6e31c94caf1d8e48dac1 /core/systemd/0001-login-Don-t-stop-a-running-user-manager-from-garbage.patch | |
parent | d53c44f055929b18d7d1b25f8367ee5836c435fc (diff) |
Fri Dec 27 23:54:04 UTC 2013
Diffstat (limited to 'core/systemd/0001-login-Don-t-stop-a-running-user-manager-from-garbage.patch')
-rw-r--r-- | core/systemd/0001-login-Don-t-stop-a-running-user-manager-from-garbage.patch | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/core/systemd/0001-login-Don-t-stop-a-running-user-manager-from-garbage.patch b/core/systemd/0001-login-Don-t-stop-a-running-user-manager-from-garbage.patch new file mode 100644 index 000000000..9a92209e3 --- /dev/null +++ b/core/systemd/0001-login-Don-t-stop-a-running-user-manager-from-garbage.patch @@ -0,0 +1,36 @@ +From 95842c3f552072c9d153b3c0200f1bbb5bc3c2fb Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Thomas=20B=C3=A4chler?= <thomas@archlinux.org> +Date: Sun, 15 Dec 2013 12:18:00 +0100 +Subject: [PATCH] login: Don't stop a running user manager from + garbage-collecting the user. + +With the current logic, a user will never be garbage-collected, since its +manager will always be around. Change the logic such that a user is +garbage-collected when it has no sessions and linger is disabled. + +This is a backport from the master branch to 208 which also backports +the improved handling of running slice and service jobs. +--- + src/login/logind-user.c | 6 ------ + 1 file changed, 6 deletions(-) + +diff --git a/src/login/logind-user.c b/src/login/logind-user.c +index adbe638..e2fce5c 100644 +--- a/src/login/logind-user.c ++++ b/src/login/logind-user.c +@@ -629,12 +629,6 @@ int user_check_gc(User *u, bool drop_not_started) { + if (u->slice_job || u->service_job) + return 1; + +- if (u->slice && manager_unit_is_active(u->manager, u->slice) != 0) +- return 1; +- +- if (u->service && manager_unit_is_active(u->manager, u->service) != 0) +- return 1; +- + return 0; + } + +-- +1.8.5.1 + |