SHA256
1
0
forked from pool/systemd
systemd/0001-Let-some-boolean-survive-a-daemon-reload.patch
Dominique Leuenberger acb10341e6 Accepting request 311646 from Base:System
- Remove libudev0 from baselibs.conf 

- Drop 1055-let-9719859c07aa13539ed2cd4b31972cd30f678543-apply.patch
  as now upstream code 
- Add 0001-Let-some-boolean-survive-a-daemon-reload.patch to fix
  bsc#933365 and boo#934077

- Add 1098-systemd-networkd-alias-network-service.patch to alias
  network.service the same way NetworkManager and wicked does.
  This is needed by yast2 and other parts of the system. boo#933092

- Modify patch 1021-udev-re-add-persistent-net-rules.patch to use
  the new return values of proc_cmdline() in enable_name_policy()
  this should fix boo#931165

- Drop 1021-udev-re-add-persistent-net-rules.patch,
  1036-rules-disable-usage-of-dev_id-in-persistent-rules.patch,
  1040-re-enable-dev_id-conditionally-in-persistent-rules.patch,
  1046-fix-duplicated-rules-with-layer3-interfaces.patch,
  1050-only-rename-SRIOV-VF-devices-when-name-starts-with-eth.patch,
  1051-check-if-NAME-has-a-value.patch,
  1053-better-checks-in-write_net_rules.patch,
  1088-drop-renaming-of-virtual-interfaces-in-guest.patch.
  1021 originally broke parsing of net.ifnames=0 [bnc#931165],
  and given that neither the kernel command line needs to be
  touched nor the source be patched to reach the unpredictable
  naming setup for SLE, all these parts are moved to a separate
  package.

OBS-URL: https://build.opensuse.org/request/show/311646
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/systemd?expand=0&rev=221
2015-06-12 18:24:37 +00:00

70 lines
2.8 KiB
Diff

Based on deff2d3e18e831d63bf98dd4114e4e35e41966e8 Mon Sep 17 00:00:00 2001
From: Werner Fink <werner@suse.de>
Date: Wed, 10 Jun 2015 10:47:13 +0200
Subject: [PATCH] Let some boolean survive a daemon-reload
Without the boolean bus_name_good services as well as cgroup_realized
for units a unit of Type=dbus and ExecReload sending SIGHUP to $MAINPID
will be terminated if systemd will be daemon reloaded.
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=746151
https://bugs.freedesktop.org/show_bug.cgi?id=78311
https://bugzilla.opensuse.org/show_bug.cgi?id=934077
---
src/core/service.c | 9 +++++++++
src/core/unit.c | 11 +++++++++++
2 files changed, 20 insertions(+)
--- systemd-219/src/core/service.c
+++ systemd-219/src/core/service.c 2015-06-11 12:24:36.769519910 +0000
@@ -1920,6 +1920,7 @@ static int service_serialize(Unit *u, FI
unit_serialize_item_format(u, f, "main-pid", PID_FMT, s->main_pid);
unit_serialize_item(u, f, "main-pid-known", yes_no(s->main_pid_known));
+ unit_serialize_item(u, f, "bus-name-good", yes_no(s->bus_name_good));
if (s->status_text)
unit_serialize_item(u, f, "status-text", s->status_text);
@@ -2044,6 +2045,14 @@ static int service_deserialize_item(Unit
log_unit_debug(u->id, "Failed to parse main-pid-known value %s", value);
else
s->main_pid_known = b;
+ } else if (streq(key, "bus-name-good")) {
+ int b;
+
+ b = parse_boolean(value);
+ if (b < 0)
+ log_unit_debug(u->id, "Failed to parse bus-name-good value %s", value);
+ else
+ s->bus_name_good = b;
} else if (streq(key, "status-text")) {
char *t;
--- systemd-219/src/core/unit.c
+++ systemd-219/src/core/unit.c 2015-06-11 12:30:56.805519155 +0000
@@ -2612,6 +2612,7 @@ int unit_serialize(Unit *u, FILE *f, FDS
if (u->cgroup_path)
unit_serialize_item(u, f, "cgroup", u->cgroup_path);
+ unit_serialize_item(u, f, "cgroup-realized", yes_no(u->cgroup_realized));
if (serialize_jobs) {
if (u->job) {
@@ -2803,6 +2804,16 @@ int unit_deserialize(Unit *u, FILE *f, F
assert(hashmap_put(u->manager->cgroup_unit, s, u) == 1);
continue;
+ } else if (streq(l, "cgroup-realized")) {
+ int b;
+
+ b = parse_boolean(v);
+ if (b < 0)
+ log_debug("Failed to parse cgroup-realized bool %s", v);
+ else
+ u->cgroup_realized = b;
+
+ continue;
}
if (unit_can_serialize(u)) {