summaryrefslogtreecommitdiff
path: root/src/udev
diff options
context:
space:
mode:
Diffstat (limited to 'src/udev')
-rw-r--r--src/udev/udevd.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/udev/udevd.c b/src/udev/udevd.c
index 0a3ab687fd..834c7d9778 100644
--- a/src/udev/udevd.c
+++ b/src/udev/udevd.c
@@ -98,7 +98,9 @@ struct event {
dev_t devnum;
int ifindex;
bool is_block;
+#ifdef ENABLE_FIRMWARE
bool nodelay;
+#endif
};
static inline struct event *node_to_event(struct udev_list_node *node)
@@ -442,8 +444,10 @@ static int event_queue_insert(struct udev_device *dev)
event->devnum = udev_device_get_devnum(dev);
event->is_block = streq("block", udev_device_get_subsystem(dev));
event->ifindex = udev_device_get_ifindex(dev);
+#ifdef ENABLE_FIRMWARE
if (streq(udev_device_get_subsystem(dev), "firmware"))
event->nodelay = true;
+#endif
udev_queue_export_device_queued(udev_queue_export, dev);
log_debug("seq %llu queued, '%s' '%s'\n", udev_device_get_seqnum(dev),
@@ -523,9 +527,11 @@ static bool is_devpath_busy(struct event *event)
return true;
}
+#ifdef ENABLE_FIRMWARE
/* allow to bypass the dependency tracking */
if (event->nodelay)
continue;
+#endif
/* parent device event found */
if (event->devpath[common] == '/') {