From: Lennart Poettering Date: Wed, 2 Jun 2021 13:31:50 +0000 (+0200) Subject: pid1: properly propagate errors from device_setup_unit() X-Git-Tag: v249-rc1~103^2~4 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=9951c8df1e8c10fb97e3509f3adafaf5585c9fcb;p=thirdparty%2Fsystemd.git pid1: properly propagate errors from device_setup_unit() We want to propagate errors here, since we want to make dependent on the success of creating the main device unit the creation of the auxiliary device units. Thus if we suppress errors here we might end up in exotic corner cases in a situation were we create the auxiliary ("following") device units without the primary one. --- diff --git a/src/core/device.c b/src/core/device.c index 03a2a9f22a2..62a987dea7a 100644 --- a/src/core/device.c +++ b/src/core/device.c @@ -493,10 +493,8 @@ static int device_setup_unit(Manager *m, sd_device *dev, const char *path, bool if (dev) { r = sd_device_get_syspath(dev, &sysfs); - if (r < 0) { - log_device_debug_errno(dev, r, "Couldn't get syspath from device, ignoring: %m"); - return 0; - } + if (r < 0) + return log_device_debug_errno(dev, r, "Couldn't get syspath from device, ignoring: %m"); } r = unit_name_from_path(path, ".device", &e);