From 0cf84eb00c1bea2b7072fa553c343990a6245b0b Mon Sep 17 00:00:00 2001 From: Juan RP Date: Tue, 23 Jul 2013 07:19:06 +0200 Subject: [PATCH] systemd: update to 206. --- srcpkgs/libudev/template | 6 +- ...9bcc27e2c6c1aa731053e45882686e9babab.patch | 68 ------------------- ...a3008cac9e625b8bb774e9b44ceec8465980.patch | 48 ------------- srcpkgs/systemd/template | 6 +- 4 files changed, 6 insertions(+), 122 deletions(-) delete mode 100644 srcpkgs/systemd/patches/ad929bcc27e2c6c1aa731053e45882686e9babab.patch delete mode 100644 srcpkgs/systemd/patches/c1eba3008cac9e625b8bb774e9b44ceec8465980.patch diff --git a/srcpkgs/libudev/template b/srcpkgs/libudev/template index 4ade9dd4eea..99375ee918b 100644 --- a/srcpkgs/libudev/template +++ b/srcpkgs/libudev/template @@ -1,7 +1,7 @@ # Template file for 'libudev' pkgname=libudev -version=205 -revision=2 +version=206 +revision=1 wrksrc="systemd-${version}" build_style=gnu-configure configure_args="--libexecdir=/usr/lib --disable-selinux @@ -20,7 +20,7 @@ maintainer="Juan RP " homepage="http://www.freedesktop.org/wiki/Software/systemd" license="LGPL-2.1, GPL-2, MIT" distfiles="http://www.freedesktop.org/software/systemd/systemd-${version}.tar.xz" -checksum=54d6d3e1e9e66b6a484f68a3323cb489f0a8f50bdeb1d5465c3a48c6fc1e0058 +checksum=4c993de071118ea1df7ffc4be26ef0b0d78354ef15b2743a2783d20edfcde9de hostmakedepends="pkg-config intltool gperf libxslt docbook-xsl libtool automake gettext-devel" diff --git a/srcpkgs/systemd/patches/ad929bcc27e2c6c1aa731053e45882686e9babab.patch b/srcpkgs/systemd/patches/ad929bcc27e2c6c1aa731053e45882686e9babab.patch deleted file mode 100644 index 80df6c800ab..00000000000 --- a/srcpkgs/systemd/patches/ad929bcc27e2c6c1aa731053e45882686e9babab.patch +++ /dev/null @@ -1,68 +0,0 @@ -From ad929bcc27e2c6c1aa731053e45882686e9babab Mon Sep 17 00:00:00 2001 -From: Kay Sievers -Date: Thu, 04 Jul 2013 18:31:18 +0000 -Subject: disable the cgroups release agent when shutting down - -During shutdown, when we try to clean up all remaining processes, the -kernel will fork new agents every time a cgroup runs empty. These -new processes cause delays in the final SIGTERM, SIGKILL logic. - -Apart from that, this should also avoid that the kernel-forked binaries -cause unpredictably timed access to the filesystem which we might need to -unmount. ---- -diff --git a/src/core/main.c b/src/core/main.c -index 8b8e110..ada0f9d 100644 ---- src/core/main.c -+++ src/core/main.c -@@ -1942,6 +1942,10 @@ finish: - watchdog_close(true); - } - -+ /* avoid the creation of new processes forked by the kernel; at this -+ * point, we will not listen to the signals anyway */ -+ cg_uninstall_release_agent(SYSTEMD_CGROUP_CONTROLLER); -+ - execve(SYSTEMD_SHUTDOWN_BINARY_PATH, (char **) command_line, env_block); - free(env_block); - log_error("Failed to execute shutdown binary, freezing: %m"); -diff --git a/src/shared/cgroup-util.c b/src/shared/cgroup-util.c -index 390259e..73013d1 100644 ---- src/shared/cgroup-util.c -+++ src/shared/cgroup-util.c -@@ -790,6 +790,21 @@ int cg_install_release_agent(const char *controller, const char *agent) { - return 0; - } - -+int cg_uninstall_release_agent(const char *controller) { -+ _cleanup_free_ char *fs = NULL; -+ int r; -+ -+ r = cg_get_path(controller, NULL, "release_agent", &fs); -+ if (r < 0) -+ return r; -+ -+ r = write_string_file(fs, ""); -+ if (r < 0) -+ return r; -+ -+ return 0; -+} -+ - int cg_is_empty(const char *controller, const char *path, bool ignore_self) { - _cleanup_fclose_ FILE *f = NULL; - pid_t pid = 0, self_pid; -diff --git a/src/shared/cgroup-util.h b/src/shared/cgroup-util.h -index c781aab..0fc93c1 100644 ---- src/shared/cgroup-util.h -+++ src/shared/cgroup-util.h -@@ -89,6 +89,7 @@ int cg_set_group_access(const char *controller, const char *path, mode_t mode, u - int cg_set_task_access(const char *controller, const char *path, mode_t mode, uid_t uid, gid_t gid); - - int cg_install_release_agent(const char *controller, const char *agent); -+int cg_uninstall_release_agent(const char *controller); - - int cg_is_empty(const char *controller, const char *path, bool ignore_self); - int cg_is_empty_by_spec(const char *spec, bool ignore_self); --- -cgit v0.9.0.2-2-gbebe diff --git a/srcpkgs/systemd/patches/c1eba3008cac9e625b8bb774e9b44ceec8465980.patch b/srcpkgs/systemd/patches/c1eba3008cac9e625b8bb774e9b44ceec8465980.patch deleted file mode 100644 index 90547e94312..00000000000 --- a/srcpkgs/systemd/patches/c1eba3008cac9e625b8bb774e9b44ceec8465980.patch +++ /dev/null @@ -1,48 +0,0 @@ -From c1eba3008cac9e625b8bb774e9b44ceec8465980 Mon Sep 17 00:00:00 2001 -From: Kay Sievers -Date: Thu, 04 Jul 2013 18:54:40 +0000 -Subject: cgroups-agent: remove ancient fallback code; turn connection error into warning - -During re-execution and shutdown cgroups agents might not be able -to connect to systemd's private D-Bus socket, the printed error to -the console is misleding in that case, so turn it into a warning. ---- -diff --git a/src/cgroups-agent/cgroups-agent.c b/src/cgroups-agent/cgroups-agent.c -index 0e3d2b7..a47949a 100644 ---- src/cgroups-agent/cgroups-agent.c -+++ src/cgroups-agent/cgroups-agent.c -@@ -48,26 +48,19 @@ int main(int argc, char *argv[]) { - * this to avoid an activation loop when we start dbus when we - * are called when the dbus service is shut down. */ - -- if (!(bus = dbus_connection_open_private("unix:path=/run/systemd/private", &error))) { --#ifndef NOLEGACY -- dbus_error_free(&error); -- -- /* Retry with the pre v21 socket name, to ease upgrades */ -- if (!(bus = dbus_connection_open_private("unix:abstract=/org/freedesktop/systemd1/private", &error))) { --#endif -- log_error("Failed to get D-Bus connection: %s", bus_error_message(&error)); -- goto finish; -- } --#ifndef NOLEGACY -+ bus = dbus_connection_open_private("unix:path=/run/systemd/private", &error); -+ if (!bus) { -+ log_warning("Failed to get D-Bus connection: %s", bus_error_message(&error)); -+ goto finish; - } --#endif - - if (bus_check_peercred(bus) < 0) { - log_error("Bus owner not root."); - goto finish; - } - -- if (!(m = dbus_message_new_signal("/org/freedesktop/systemd1/agent", "org.freedesktop.systemd1.Agent", "Released"))) { -+ m = dbus_message_new_signal("/org/freedesktop/systemd1/agent", "org.freedesktop.systemd1.Agent", "Released"); -+ if (!m) { - log_error("Could not allocate signal message."); - goto finish; - } --- -cgit v0.9.0.2-2-gbebe diff --git a/srcpkgs/systemd/template b/srcpkgs/systemd/template index efeec5d0169..eb7b5bec7c6 100644 --- a/srcpkgs/systemd/template +++ b/srcpkgs/systemd/template @@ -1,13 +1,13 @@ # Template file for 'systemd' pkgname=systemd -version=205 -revision=2 +version=206 +revision=1 short_desc="A system and service manager for Linux" maintainer="Juan RP " homepage="http://www.freedesktop.org/wiki/Software/systemd" license="LGPL-2.1, GPL-2, MIT" distfiles="http://www.freedesktop.org/software/$pkgname/$pkgname-$version.tar.xz" -checksum=54d6d3e1e9e66b6a484f68a3323cb489f0a8f50bdeb1d5465c3a48c6fc1e0058 +checksum=4c993de071118ea1df7ffc4be26ef0b0d78354ef15b2743a2783d20edfcde9de build_style=gnu-configure configure_args="--libexecdir=/usr/lib --with-rootprefix=/usr