Commit 3de79dba authored by Michael Biebl's avatar Michael Biebl
Browse files

Updated upstream v208-stable patch series to 53b1b6c

parent 954ec0a7
......@@ -19,6 +19,7 @@ systemd (208-8) UNRELEASED; urgency=medium
* Add Breaks: systemd (<< 208) to udev to avoid partial upgrades. Newer udev
versions rely on kmod-static-nodes.service being provided by systemd.
(Closes: #757777)
* Updated upstream v208-stable patch series to 53b1b6c.
-- Martin Pitt <mpitt@debian.org> Thu, 07 Aug 2014 08:31:38 +0200
......
......@@ -11,10 +11,10 @@ as PID 1.
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
index 78bdeb2..a78881b 100644
index 21a99bc..c2f7bbc 100644
--- a/src/systemctl/systemctl.c
+++ b/src/systemctl/systemctl.c
@@ -5732,19 +5732,24 @@ static int talk_initctl(void) {
@@ -5729,19 +5729,24 @@ static int talk_initctl(void) {
request.cmd = INIT_CMD_RUNLVL;
request.runlevel = rl;
......
......@@ -11,10 +11,10 @@ Subject: Add targets for compatibility with Debian insserv system facilities
create mode 100644 units/x-display-manager.target
diff --git a/Makefile.am b/Makefile.am
index 1bd4e99..78ae428 100644
index cdd412e..0bbd79a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -457,6 +457,12 @@ nodist_systemunit_DATA = \
@@ -465,6 +465,12 @@ nodist_systemunit_DATA = \
units/initrd-switch-root.service \
units/systemd-nspawn@.service
......
......@@ -9,10 +9,10 @@ enable rsyslog.service)
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
index f3be0f1..ea36b48 100644
index 9c9f0ac..ab92fc7 100644
--- a/src/systemctl/systemctl.c
+++ b/src/systemctl/systemctl.c
@@ -4255,9 +4255,6 @@ static int enable_sysv_units(char **args) {
@@ -4257,9 +4257,6 @@ static int enable_sysv_units(const char *verb, char **args) {
name = args[f];
......@@ -22,7 +22,7 @@ index f3be0f1..ea36b48 100644
if (path_is_absolute(name))
continue;
@@ -4289,7 +4286,8 @@ static int enable_sysv_units(char **args) {
@@ -4291,7 +4288,8 @@ static int enable_sysv_units(const char *verb, char **args) {
goto finish;
}
......
......@@ -9,10 +9,10 @@ Closes: #624599
1 file changed, 15 insertions(+)
diff --git a/src/core/manager.c b/src/core/manager.c
index c573a72..c56027f 100644
index c47dd44..a228287 100644
--- a/src/core/manager.c
+++ b/src/core/manager.c
@@ -976,6 +976,21 @@ int manager_add_job(Manager *m, JobType type, Unit *unit, JobMode mode, bool ove
@@ -974,6 +974,21 @@ int manager_add_job(Manager *m, JobType type, Unit *unit, JobMode mode, bool ove
dbus_set_error(e, BUS_ERROR_INVALID_JOB_MODE, "final.target is queued, ignoring %s request for unit %s", job_type_to_string(type), unit->id);
return -EINVAL;
}
......
......@@ -9,10 +9,10 @@ for the patch. Closes: #624599.
1 file changed, 25 insertions(+)
diff --git a/src/core/manager.c b/src/core/manager.c
index 58dacdc..c573a72 100644
index e75550b..c47dd44 100644
--- a/src/core/manager.c
+++ b/src/core/manager.c
@@ -943,6 +943,8 @@ int manager_startup(Manager *m, FILE *serialization, FDSet *fds) {
@@ -941,6 +941,8 @@ int manager_startup(Manager *m, FILE *serialization, FDSet *fds) {
int manager_add_job(Manager *m, JobType type, Unit *unit, JobMode mode, bool override, DBusError *e, Job **_ret) {
int r;
Transaction *tr;
......@@ -21,7 +21,7 @@ index 58dacdc..c573a72 100644
assert(m);
assert(type < _JOB_TYPE_MAX);
@@ -954,6 +956,29 @@ int manager_add_job(Manager *m, JobType type, Unit *unit, JobMode mode, bool ove
@@ -952,6 +954,29 @@ int manager_add_job(Manager *m, JobType type, Unit *unit, JobMode mode, bool ove
return -EINVAL;
}
......
......@@ -11,12 +11,12 @@ will fail, so add a condition to check if the binary is available.
1 file changed, 1 insertion(+)
diff --git a/units/kmod-static-nodes.service.in b/units/kmod-static-nodes.service.in
index ff4017b..718d77b 100644
index 0934a87..076e316 100644
--- a/units/kmod-static-nodes.service.in
+++ b/units/kmod-static-nodes.service.in
@@ -11,6 +11,7 @@ DefaultDependencies=no
Before=sysinit.target systemd-tmpfiles-setup-dev.service
ConditionCapability=CAP_MKNOD
ConditionCapability=CAP_SYS_MODULE
ConditionPathExists=/lib/modules/%v/modules.devname
+ConditionFileIsExecutable=@KMOD@
......
......@@ -18,10 +18,10 @@ anymore afterwards).
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 8d9c587..7d1f408 100644
index 205ea50..41b89b2 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -4413,8 +4413,7 @@ SYSINIT_TARGET_WANTS += \
@@ -4437,8 +4437,7 @@ SYSINIT_TARGET_WANTS += \
systemd-update-utmp.service
LOCAL_FS_TARGET_WANTS += \
systemd-remount-fs.service \
......@@ -32,10 +32,10 @@ index 8d9c587..7d1f408 100644
getty.target \
systemd-ask-password-wall.path
diff --git a/units/tmp.mount b/units/tmp.mount
index 99a3ba3..3b4d6f8 100644
index 00a0d28..8777171 100644
--- a/units/tmp.mount
+++ b/units/tmp.mount
@@ -18,3 +18,6 @@ What=tmpfs
@@ -19,3 +19,6 @@ What=tmpfs
Where=/tmp
Type=tmpfs
Options=mode=1777,strictatime
......
......@@ -13,10 +13,10 @@ generator for that, as this would be cleaner. But for now that will do.
1 file changed, 18 insertions(+), 4 deletions(-)
diff --git a/src/core/service.c b/src/core/service.c
index 47587d0..e11c413 100644
index 2a6c3c8..f8a0201 100644
--- a/src/core/service.c
+++ b/src/core/service.c
@@ -51,7 +51,8 @@
@@ -52,7 +52,8 @@
typedef enum RunlevelType {
RUNLEVEL_UP,
......@@ -26,7 +26,7 @@ index 47587d0..e11c413 100644
} RunlevelType;
static const struct {
@@ -66,6 +67,9 @@ static const struct {
@@ -67,6 +68,9 @@ static const struct {
{ "rc4.d", SPECIAL_RUNLEVEL4_TARGET, RUNLEVEL_UP },
{ "rc5.d", SPECIAL_RUNLEVEL5_TARGET, RUNLEVEL_UP },
......@@ -36,7 +36,7 @@ index 47587d0..e11c413 100644
/* Standard SysV runlevels for shutdown */
{ "rc0.d", SPECIAL_POWEROFF_TARGET, RUNLEVEL_DOWN },
{ "rc6.d", SPECIAL_REBOOT_TARGET, RUNLEVEL_DOWN }
@@ -74,10 +78,12 @@ static const struct {
@@ -75,10 +79,12 @@ static const struct {
directories in this order, and we want to make sure that
sysv_start_priority is known when we first load the
unit. And that value we only know from S links. Hence
......@@ -50,7 +50,7 @@ index 47587d0..e11c413 100644
#endif
static const UnitActiveState state_translation_table[_SERVICE_STATE_MAX] = {
@@ -915,6 +921,13 @@ static int service_load_sysv_path(Service *s, const char *path) {
@@ -917,6 +923,13 @@ static int service_load_sysv_path(Service *s, const char *path) {
if ((r = sysv_exec_commands(s, supports_reload)) < 0)
goto finish;
......@@ -64,7 +64,7 @@ index 47587d0..e11c413 100644
if (s->sysv_runlevels && !chars_intersect(RUNLEVELS_UP, s->sysv_runlevels)) {
/* If there a runlevels configured for this service
@@ -3541,7 +3554,7 @@ static int service_enumerate(Manager *m) {
@@ -3614,7 +3627,7 @@ static int service_enumerate(Manager *m) {
if (de->d_name[0] == 'S') {
......@@ -73,7 +73,7 @@ index 47587d0..e11c413 100644
SERVICE(service)->sysv_start_priority_from_rcnd =
MAX(a*10 + b, SERVICE(service)->sysv_start_priority_from_rcnd);
@@ -3558,7 +3571,8 @@ static int service_enumerate(Manager *m) {
@@ -3631,7 +3644,8 @@ static int service_enumerate(Manager *m) {
goto finish;
} else if (de->d_name[0] == 'K' &&
......
......@@ -16,10 +16,10 @@ this old hack to make the renaming less likely to fail.
1 file changed, 41 insertions(+), 3 deletions(-)
diff --git a/src/udev/udev-event.c b/src/udev/udev-event.c
index 3db2cb7..c768d12 100644
index 37b545b..18f66ec 100644
--- a/src/udev/udev-event.c
+++ b/src/udev/udev-event.c
@@ -750,6 +750,7 @@ static int rename_netif(struct udev_event *event)
@@ -752,6 +752,7 @@ static int rename_netif(struct udev_event *event)
struct udev_device *dev = event->dev;
int sk;
struct ifreq ifr;
......@@ -27,7 +27,7 @@ index 3db2cb7..c768d12 100644
int err;
log_debug("changing net interface name from '%s' to '%s'\n",
@@ -766,12 +767,49 @@ static int rename_netif(struct udev_event *event)
@@ -768,12 +769,49 @@ static int rename_netif(struct udev_event *event)
strscpy(ifr.ifr_name, IFNAMSIZ, udev_device_get_sysname(dev));
strscpy(ifr.ifr_newname, IFNAMSIZ, event->name);
err = ioctl(sk, SIOCSIFNAME, &ifr);
......
......@@ -8,11 +8,11 @@ to access logind via D-Bus will start it on demand.
src/login/pam-module.c | 7 ++-----
1 file changed, 2 insertions(+), 5 deletions(-)
Index: systemd/src/login/pam-module.c
===================================================================
--- systemd.orig/src/login/pam-module.c
+++ systemd/src/login/pam-module.c
@@ -191,10 +191,6 @@ _public_ PAM_EXTERN int pam_sm_open_sess
diff --git a/src/login/pam-module.c b/src/login/pam-module.c
index fe3ddd4..b5085ff 100644
--- a/src/login/pam-module.c
+++ b/src/login/pam-module.c
@@ -191,10 +191,6 @@ _public_ PAM_EXTERN int pam_sm_open_session(
dbus_error_init(&error);
......@@ -23,7 +23,7 @@ Index: systemd/src/login/pam-module.c
if (parse_argv(handle,
argc, argv,
&class_pam,
@@ -254,7 +250,8 @@ _public_ PAM_EXTERN int pam_sm_open_sess
@@ -254,7 +250,8 @@ _public_ PAM_EXTERN int pam_sm_open_session(
bus = dbus_bus_get_private(DBUS_BUS_SYSTEM, &error);
if (!bus) {
......
......@@ -13,10 +13,10 @@ again.
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/man/systemd.mount.xml b/man/systemd.mount.xml
index 48af1ca..66be987 100644
index cadf950..517731b 100644
--- a/man/systemd.mount.xml
+++ b/man/systemd.mount.xml
@@ -145,12 +145,12 @@
@@ -148,12 +148,12 @@
<filename>local-fs.target</filename> or
<filename>remote-fs.target</filename>, depending
whether the file system is local or remote. If
......
......@@ -12,7 +12,7 @@ paths. Closes: #721347
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/configure.ac b/configure.ac
index 9605b38..b7f8a74 100644
index 4b0b45b..e3df24c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -67,16 +67,16 @@ AC_PROG_GCC_TRADITIONAL
......@@ -38,7 +38,7 @@ index 9605b38..b7f8a74 100644
AS_IF([! ln --relative --help > /dev/null 2>&1], [AC_MSG_ERROR([*** ln doesn't support --relative ***])])
@@ -792,13 +792,13 @@ AC_ARG_WITH(kbd-loadkeys,
@@ -742,13 +742,13 @@ AC_ARG_WITH(kbd-loadkeys,
AS_HELP_STRING([--with-kbd-loadkeys=PATH],
[Path to loadkeys]),
[KBD_LOADKEYS="$withval"],
......
From: Bastien Nocera <hadess@hadess.net>
Date: Tue, 8 Jul 2014 18:29:06 +0200
Subject: accelerometer: Don't wait for new data from the sensor
Instead of waiting for new data from the sensor, which might be
a long time coming, depending on the sensor device, ask the kernel
for the last state for that particular input device.
(cherry picked from commit a545c6e1aa31b4d7e80c9d3609d9fc4fc9921498)
(cherry picked from commit e27bfc22bba932950a398b32bf57be6f825438ee)
---
src/udev/accelerometer/accelerometer.c | 33 ++++++---------------------------
1 file changed, 6 insertions(+), 27 deletions(-)
diff --git a/src/udev/accelerometer/accelerometer.c b/src/udev/accelerometer/accelerometer.c
index 9610d7c..d192e57 100644
--- a/src/udev/accelerometer/accelerometer.c
+++ b/src/udev/accelerometer/accelerometer.c
@@ -179,7 +179,7 @@ get_prev_orientation(struct udev_device *dev)
return string_to_orientation(value);
}
-#define SET_AXIS(axis, code_) if (ev[i].code == code_) { if (got_##axis == 0) { axis = ev[i].value; got_##axis = true; } }
+#define READ_AXIS(axis, var) { memzero(&abs_info, sizeof(abs_info)); r = ioctl(fd, EVIOCGABS(axis), &abs_info); if (r < 0) return; var = abs_info.value; }
/* accelerometers */
static void test_orientation(struct udev *udev,
@@ -188,10 +188,9 @@ static void test_orientation(struct udev *udev,
{
OrientationUp old, new;
_cleanup_close_ int fd = -1;
- struct input_event ev[64];
- bool got_syn = false;
- bool got_x = false, got_y = false, got_z = false;
+ struct input_absinfo abs_info;
int x = 0, y = 0, z = 0;
+ int r;
char text[64];
old = get_prev_orientation(dev);
@@ -200,30 +199,10 @@ static void test_orientation(struct udev *udev,
if (fd < 0)
return;
- while (1) {
- int i, r;
-
- r = read(fd, ev, sizeof(struct input_event) * 64);
-
- if (r < (int) sizeof(struct input_event))
- return;
-
- for (i = 0; i < r / (int) sizeof(struct input_event); i++) {
- if (got_syn) {
- if (ev[i].type == EV_ABS) {
- SET_AXIS(x, ABS_X);
- SET_AXIS(y, ABS_Y);
- SET_AXIS(z, ABS_Z);
- }
- }
- if (ev[i].type == EV_SYN && ev[i].code == SYN_REPORT)
- got_syn = true;
- if (got_x && got_y && got_z)
- goto read_dev;
- }
- }
+ READ_AXIS(ABS_X, x);
+ READ_AXIS(ABS_Y, y);
+ READ_AXIS(ABS_Z, z);
-read_dev:
new = orientation_calc(old, x, y, z);
snprintf(text, sizeof(text),
"ID_INPUT_ACCELEROMETER_ORIENTATION=%s", orientation_to_string(new));
From: =?utf-8?q?Zbigniew_J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Sat, 9 Aug 2014 09:53:34 -0400
Subject: analyze: fix crash on invalid commandline
https://bugzilla.redhat.com/show_bug.cgi?id=1128360
---
src/analyze/systemd-analyze.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/analyze/systemd-analyze.c b/src/analyze/systemd-analyze.c
index 25f8ad6..db5d6e6 100644
--- a/src/analyze/systemd-analyze.c
+++ b/src/analyze/systemd-analyze.c
@@ -1236,13 +1236,14 @@ static int set_log_level(DBusConnection *bus, char **args) {
assert(bus);
assert(args);
+ dbus_error_init(&error);
+
if (strv_length(args) != 1) {
log_error("This command expects one argument only.");
return -E2BIG;
}
value = args[0];
- dbus_error_init(&error);
m = dbus_message_new_method_call("org.freedesktop.systemd1",
"/org/freedesktop/systemd1",
From: Michael Biebl <biebl@debian.org>
Date: Wed, 17 Jul 2013 18:27:39 +0200
Subject: Don't move libgudev to /lib
Date: Wed, 16 Jul 2014 12:09:47 +0200
Subject: build-sys: don't move libgudev to /lib
libgobject and libgmodule are currently installed in /usr/lib.
It depends on libgobject and libgmodule which are installed in /usr/lib.
(cherry picked from commit 5c059d2ead0787a90732d27ed1b485d236abf641)
(cherry picked from commit c46cee9156e8785fc70e8528d6deb402bef06ca0)
---
Makefile.am | 9 ---------
1 file changed, 9 deletions(-)
Makefile.am | 10 ----------
1 file changed, 10 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 631bfde..43f1ec6 100644
index d57d890..205ea50 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -2654,15 +2654,6 @@ typelibs_DATA = \
@@ -2682,16 +2682,6 @@ typelibs_DATA = \
CLEANFILES += $(gir_DATA) $(typelibs_DATA)
endif # HAVE_INTROSPECTION
-
-# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
-libgudev-install-hook:
- libname=libgudev-1.0.so && $(move-to-rootlibdir)
......
From bc3d33edd2b227c17ae338bf147067bdfafe299c Mon Sep 17 00:00:00 2001
From: Kay Sievers <kay@vrfy.org>
Date: Wed, 28 May 2014 17:36:40 +0800
Subject: [PATCH] build-sys: use glibc's xattr support instead of requiring
libattr
Subject: build-sys: use glibc's xattr support instead of requiring libattr
(cherry picked from commit d2edfae0f9bdbecf6a8518e2a5bcf06f470e0d9e)
---
......@@ -90,7 +88,7 @@ index 9605b38..4b0b45b 100644
QRENCODE: ${have_qrencode}
MICROHTTPD: ${have_microhttpd}
diff --git a/src/core/mount-setup.c b/src/core/mount-setup.c
index cff83d3..12b7ed3 100644
index 5c6edfd..6843183 100644
--- a/src/core/mount-setup.c
+++ b/src/core/mount-setup.c
@@ -87,10 +87,8 @@ static const MountPoint mount_table[] = {
......@@ -105,7 +103,7 @@ index cff83d3..12b7ed3 100644
NULL, MNT_IN_CONTAINER },
{ "pstore", "/sys/fs/pstore", "pstore", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
diff --git a/src/core/socket.c b/src/core/socket.c
index 8e02c03..3bd4532 100644
index 1bf1f05..66af49d 100644
--- a/src/core/socket.c
+++ b/src/core/socket.c
@@ -28,9 +28,7 @@
......@@ -120,7 +118,7 @@ index 8e02c03..3bd4532 100644
#include "unit.h"
#include "socket.h"
diff --git a/src/journal/journal-file.c b/src/journal/journal-file.c
index 2d2d289..010dda1 100644
index 2d79dce..dd63803 100644
--- a/src/journal/journal-file.c
+++ b/src/journal/journal-file.c
@@ -26,10 +26,7 @@
......@@ -135,7 +133,7 @@ index 2d2d289..010dda1 100644
#include "journal-def.h"
#include "journal-file.h"
@@ -2513,7 +2510,6 @@ int journal_file_open(
@@ -2507,7 +2504,6 @@ int journal_file_open(
}
if (f->last_stat.st_size == 0 && f->writable) {
......@@ -143,7 +141,7 @@ index 2d2d289..010dda1 100644
uint64_t crtime;
/* Let's attach the creation time to the journal file,
@@ -2528,7 +2524,6 @@ int journal_file_open(
@@ -2522,7 +2518,6 @@ int journal_file_open(
crtime = htole64((uint64_t) now(CLOCK_REALTIME));
fsetxattr(f->fd, "user.crtime_usec", &crtime, sizeof(crtime), XATTR_CREATE);
......@@ -195,6 +193,3 @@ index 695e518..442120a 100644
}
static int journal_file_empty(int dir_fd, const char *name) {
--
2.0.1
......@@ -7,10 +7,10 @@ Subject: change the log_info() line in systemctl to reflect reality
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
index a5624a8..f3be0f1 100644
index 2a69c65..9c9f0ac 100644
--- a/src/systemctl/systemctl.c
+++ b/src/systemctl/systemctl.c
@@ -4298,7 +4298,7 @@ static int enable_sysv_units(char **args) {
@@ -4300,7 +4300,7 @@ static int enable_sysv_units(const char *verb, char **args) {
/* Mark this entry, so that we don't try enabling it as native unit */
args[f] = (char*) "";
......
From: Ronan Le Martret <ronan@fridu.net>
Date: Tue, 22 Apr 2014 10:33:25 +0200
Subject: core: You can not put the cached result of use_smack fct,
as we are not sure the "/sys" is mounted. So we should mount "sys"
before "/proc"
https://bugs.freedesktop.org/show_bug.cgi?id=77646
(cherry picked from commit d1d8e5d49f3149d03ceb94d1d2f6c14e7abccb6f)
---
src/core/mount-setup.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/core/mount-setup.c b/src/core/mount-setup.c
index cff83d3..5c6edfd 100644
--- a/src/core/mount-setup.c
+++ b/src/core/mount-setup.c
@@ -69,10 +69,10 @@ typedef struct MountPoint {
#define N_EARLY_MOUNT 5
static const MountPoint mount_table[] = {
- { "proc", "/proc", "proc", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
- NULL, MNT_FATAL|MNT_IN_CONTAINER },
{ "sysfs", "/sys", "sysfs", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
NULL, MNT_FATAL|MNT_IN_CONTAINER },
+ { "proc", "/proc", "proc", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
+ NULL, MNT_FATAL|MNT_IN_CONTAINER },
{ "devtmpfs", "/dev", "devtmpfs", "mode=755", MS_NOSUID|MS_STRICTATIME,
NULL, MNT_FATAL|MNT_IN_CONTAINER },
{ "securityfs", "/sys/kernel/security", "securityfs", NULL, MS_NOSUID|MS_NOEXEC|MS_NODEV,
From: =?utf-8?q?Zbigniew_J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Wed, 16 Jul 2014 22:52:53 -0400
Subject: core: nicer message when inotify watches are exhausted
inotify_add_watch returns ENOSPC, which translates to
"No space left on device", which is misleading.
https://bugs.freedesktop.org/show_bug.cgi?id=73628
(cherry picked from commit 18abe7bd3e13525b257da69ac49ff7841c289567)
(cherry picked from commit fe85271fb6090e58b36e182ce3e20a388f0ca006)
---
src/core/path.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/core/path.c b/src/core/path.c
index 5e4f6d5..538c1ea 100644
--- a/src/core/path.c
+++ b/src/core/path.c
@@ -95,7 +95,8 @@ int path_spec_watch(PathSpec *s, Unit *u) {
break;
}
- log_warning("Failed to add watch on %s: %m", s->path);
+ log_warning("Failed to add watch on %s: %s", s->path,
+ errno == ENOSPC ? "too many watches" : strerror(-r));
r = -errno;
if (cut)
*cut = tmp;
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment