fix warning about missing install info during preset (boo#970293)
OBS-URL: https://build.opensuse.org/package/show/Base:System/systemd?expand=0&rev=939
This commit is contained in:
parent
146e0b4e78
commit
76aee2af96
121
0001-systemctl-pid1-do-not-warn-about-missing-install-inf.patch
Normal file
121
0001-systemctl-pid1-do-not-warn-about-missing-install-inf.patch
Normal file
@ -0,0 +1,121 @@
|
|||||||
|
From b8d6cc0513adadea9b5048fa320d7f49c10f004b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Thomas Blume <Thomas.Blume@suse.com>
|
||||||
|
Date: Wed, 4 May 2016 08:51:52 +0200
|
||||||
|
Subject: [PATCH] systemctl,pid1: do not warn about missing install info with
|
||||||
|
"preset"
|
||||||
|
|
||||||
|
When "preset" was executed for a unit without install info, we'd warn similarly
|
||||||
|
as for "enable" and "disable". But "preset" is usually called for all units,
|
||||||
|
because the preset files are provided by the distribution, and the units are under
|
||||||
|
control of individual programs, and it's reasonable to call "preset" for all units
|
||||||
|
rather then try to do it only for the ones that can be installed.
|
||||||
|
We also don't warn about missing info for "preset-all". Thus it seems reasonable
|
||||||
|
to silently ignore units w/o install info when presetting.
|
||||||
|
|
||||||
|
(In addition, when more than one unit was specified, we'd issue the warning
|
||||||
|
only if none of them had install info. But this is probably something to fix
|
||||||
|
for enable/disable too.)
|
||||||
|
---
|
||||||
|
man/systemctl.xml | 26 +++++++++++++-------------
|
||||||
|
src/systemctl/systemctl.c | 10 +++++-----
|
||||||
|
2 files changed, 18 insertions(+), 18 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/man/systemctl.xml b/man/systemctl.xml
|
||||||
|
index f342e26..1c2c919 100644
|
||||||
|
--- a/man/systemctl.xml
|
||||||
|
+++ b/man/systemctl.xml
|
||||||
|
@@ -1082,22 +1082,22 @@ kobject-uevent 1 systemd-udevd-kernel.socket systemd-udevd.service
|
||||||
|
<term><command>preset <replaceable>NAME</replaceable>...</command></term>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
- <para>Reset one or more unit files, as specified on the
|
||||||
|
- command line, to the defaults configured in the preset
|
||||||
|
- policy files. This has the same effect as
|
||||||
|
- <command>disable</command> or <command>enable</command>,
|
||||||
|
- depending how the unit is listed in the preset files.</para>
|
||||||
|
+ <para>Reset the enable/disable status one or more unit files, as specified on
|
||||||
|
+ the command line, to the defaults configured in the preset policy files. This
|
||||||
|
+ has the same effect as <command>disable</command> or
|
||||||
|
+ <command>enable</command>, depending how the unit is listed in the preset
|
||||||
|
+ files.</para>
|
||||||
|
|
||||||
|
- <para>Use <option>--preset-mode=</option> to control
|
||||||
|
- whether units shall be enabled and disabled, or only
|
||||||
|
- enabled, or only disabled.</para>
|
||||||
|
+ <para>Use <option>--preset-mode=</option> to control whether units shall be
|
||||||
|
+ enabled and disabled, or only enabled, or only disabled.</para>
|
||||||
|
+
|
||||||
|
+ <para>If the unit carries no install information, it will be silently ignored
|
||||||
|
+ by this command.</para>
|
||||||
|
|
||||||
|
- <para>For more information on the preset policy format,
|
||||||
|
- see
|
||||||
|
+ <para>For more information on the preset policy format, see
|
||||||
|
<citerefentry><refentrytitle>systemd.preset</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
||||||
|
- For more information on the concept of presets, please
|
||||||
|
- consult the <ulink
|
||||||
|
- url="http://freedesktop.org/wiki/Software/systemd/Preset">Preset</ulink>
|
||||||
|
+ For more information on the concept of presets, please consult the
|
||||||
|
+ <ulink url="http://freedesktop.org/wiki/Software/systemd/Preset">Preset</ulink>
|
||||||
|
document.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
|
||||||
|
index 1f42d1a..9dc5971 100644
|
||||||
|
--- a/src/systemctl/systemctl.c
|
||||||
|
+++ b/src/systemctl/systemctl.c
|
||||||
|
@@ -5399,6 +5399,7 @@ static int enable_unit(int argc, char *argv[], void *userdata) {
|
||||||
|
UnitFileChange *changes = NULL;
|
||||||
|
unsigned n_changes = 0;
|
||||||
|
int carries_install_info = -1;
|
||||||
|
+ bool ignore_carries_install_info = false;
|
||||||
|
int r;
|
||||||
|
|
||||||
|
if (!argv[1])
|
||||||
|
@@ -5412,8 +5413,7 @@ static int enable_unit(int argc, char *argv[], void *userdata) {
|
||||||
|
if (r < 0)
|
||||||
|
return r;
|
||||||
|
|
||||||
|
- /* If the operation was fully executed by the SysV compat,
|
||||||
|
- * let's finish early */
|
||||||
|
+ /* If the operation was fully executed by the SysV compat, let's finish early */
|
||||||
|
if (strv_isempty(names))
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
@@ -5430,7 +5430,6 @@ static int enable_unit(int argc, char *argv[], void *userdata) {
|
||||||
|
r = unit_file_link(arg_scope, arg_runtime, arg_root, names, arg_force, &changes, &n_changes);
|
||||||
|
else if (streq(verb, "preset")) {
|
||||||
|
r = unit_file_preset(arg_scope, arg_runtime, arg_root, names, arg_preset_mode, arg_force, &changes, &n_changes);
|
||||||
|
- carries_install_info = r;
|
||||||
|
} else if (streq(verb, "mask"))
|
||||||
|
r = unit_file_mask(arg_scope, arg_runtime, arg_root, names, arg_force, &changes, &n_changes);
|
||||||
|
else if (streq(verb, "unmask"))
|
||||||
|
@@ -5450,7 +5449,7 @@ static int enable_unit(int argc, char *argv[], void *userdata) {
|
||||||
|
} else {
|
||||||
|
_cleanup_bus_message_unref_ sd_bus_message *reply = NULL, *m = NULL;
|
||||||
|
_cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
|
||||||
|
- int expect_carries_install_info = false;
|
||||||
|
+ bool expect_carries_install_info = false;
|
||||||
|
bool send_force = true, send_preset_mode = false;
|
||||||
|
const char *method;
|
||||||
|
sd_bus *bus;
|
||||||
|
@@ -5481,6 +5480,7 @@ static int enable_unit(int argc, char *argv[], void *userdata) {
|
||||||
|
method = "PresetUnitFiles";
|
||||||
|
|
||||||
|
expect_carries_install_info = true;
|
||||||
|
+ ignore_carries_install_info = true;
|
||||||
|
} else if (streq(verb, "mask"))
|
||||||
|
method = "MaskUnitFiles";
|
||||||
|
else if (streq(verb, "unmask")) {
|
||||||
|
@@ -5540,7 +5540,7 @@ static int enable_unit(int argc, char *argv[], void *userdata) {
|
||||||
|
r = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (carries_install_info == 0)
|
||||||
|
+ if (carries_install_info == 0 && !ignore_carries_install_info)
|
||||||
|
log_warning("The unit files have no [Install] section. They are not meant to be enabled\n"
|
||||||
|
"using systemctl.\n"
|
||||||
|
"Possible reasons for having this kind of units are:\n"
|
||||||
|
--
|
||||||
|
2.6.6
|
||||||
|
|
@ -1,3 +1,9 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed May 4 06:37:51 UTC 2016 - Thomas.Blume@suse.com
|
||||||
|
|
||||||
|
- fix warning about missing install info during preset (boo#970293)
|
||||||
|
0001-systemctl-pid1-do-not-warn-about-missing-install-inf.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Apr 7 12:13:16 UTC 2016 - schwab@suse.de
|
Thu Apr 7 12:13:16 UTC 2016 - schwab@suse.de
|
||||||
|
|
||||||
|
@ -259,6 +259,8 @@ Patch526: systemd-228-nspawn-make-journal-linking-non-fatal-in-try-and-aut
|
|||||||
Patch527: 0001-core-fix-bus-name-synchronization-after-daemon-reloa.patch
|
Patch527: 0001-core-fix-bus-name-synchronization-after-daemon-reloa.patch
|
||||||
# PATCH-FIX-UPSTREAM -- fixed after 228
|
# PATCH-FIX-UPSTREAM -- fixed after 228
|
||||||
Patch528: 0001-core-re-sync-bus-name-list-after-deserializing-durin.patch
|
Patch528: 0001-core-re-sync-bus-name-list-after-deserializing-durin.patch
|
||||||
|
# PATCH-FIX-UPSTREAM -- fixed after 228
|
||||||
|
Patch529: 0001-systemctl-pid1-do-not-warn-about-missing-install-inf.patch
|
||||||
|
|
||||||
# UDEV PATCHES
|
# UDEV PATCHES
|
||||||
# ============
|
# ============
|
||||||
@ -606,6 +608,7 @@ cp %{SOURCE7} m4/
|
|||||||
%patch526 -p1
|
%patch526 -p1
|
||||||
%patch527 -p1
|
%patch527 -p1
|
||||||
%patch528 -p1
|
%patch528 -p1
|
||||||
|
%patch529 -p1
|
||||||
|
|
||||||
# udev patches
|
# udev patches
|
||||||
%patch1002 -p1
|
%patch1002 -p1
|
||||||
|
@ -1,3 +1,9 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed May 4 06:37:51 UTC 2016 - Thomas.Blume@suse.com
|
||||||
|
|
||||||
|
- fix warning about missing install info during preset (boo#970293)
|
||||||
|
0001-systemctl-pid1-do-not-warn-about-missing-install-inf.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Apr 7 12:13:16 UTC 2016 - schwab@suse.de
|
Thu Apr 7 12:13:16 UTC 2016 - schwab@suse.de
|
||||||
|
|
||||||
|
@ -254,6 +254,8 @@ Patch526: systemd-228-nspawn-make-journal-linking-non-fatal-in-try-and-aut
|
|||||||
Patch527: 0001-core-fix-bus-name-synchronization-after-daemon-reloa.patch
|
Patch527: 0001-core-fix-bus-name-synchronization-after-daemon-reloa.patch
|
||||||
# PATCH-FIX-UPSTREAM -- fixed after 228
|
# PATCH-FIX-UPSTREAM -- fixed after 228
|
||||||
Patch528: 0001-core-re-sync-bus-name-list-after-deserializing-durin.patch
|
Patch528: 0001-core-re-sync-bus-name-list-after-deserializing-durin.patch
|
||||||
|
# PATCH-FIX-UPSTREAM -- fixed after 228
|
||||||
|
Patch529: 0001-systemctl-pid1-do-not-warn-about-missing-install-inf.patch
|
||||||
|
|
||||||
# UDEV PATCHES
|
# UDEV PATCHES
|
||||||
# ============
|
# ============
|
||||||
@ -601,6 +603,7 @@ cp %{SOURCE7} m4/
|
|||||||
%patch526 -p1
|
%patch526 -p1
|
||||||
%patch527 -p1
|
%patch527 -p1
|
||||||
%patch528 -p1
|
%patch528 -p1
|
||||||
|
%patch529 -p1
|
||||||
|
|
||||||
# udev patches
|
# udev patches
|
||||||
%patch1002 -p1
|
%patch1002 -p1
|
||||||
|
Loading…
Reference in New Issue
Block a user