summaryrefslogtreecommitdiffstats
path: root/src/core/device.h
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2018-06-20 22:54:55 +0200
committerLennart Poettering <lennart@poettering.net>2018-06-20 23:59:29 +0200
commit88116909ec60724ddce47feb2cc40c52bdb81bdf (patch)
tree781ae1c925f8ef9da4d634bf9ab60401948cce42 /src/core/device.h
parentanalyze: use _cleanup_ for freeing the manager object (diff)
downloadsystemd-88116909ec60724ddce47feb2cc40c52bdb81bdf.tar.xz
systemd-88116909ec60724ddce47feb2cc40c52bdb81bdf.zip
core: explicitly trigger changing udev SYSTEMD_WANTS properties
This compensates for the unsynchronized reload cycles of systemd and udev: we manually trigger the deps listed in SYSTEMD_WANTS properties if they change for device units that are already up. That way all deps defined that way will be triggered at least once: the first time the unit goes up by the usual dependency logic, and if it already is up by the device.c specific logic. Fixes: #9323
Diffstat (limited to 'src/core/device.h')
-rw-r--r--src/core/device.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/core/device.h b/src/core/device.h
index a5f9bbe58c..a119b33e57 100644
--- a/src/core/device.h
+++ b/src/core/device.h
@@ -30,6 +30,9 @@ struct Device {
DeviceFound found, deserialized_found, enumerated_found;
bool bind_mounts;
+
+ /* The SYSTEMD_WANTS udev property for this device the last time we saw it */
+ char **wants_property;
};
extern const UnitVTable device_vtable;