Lines Matching refs:udev
50 #include "udev.h"
51 #include "udev-util.h"
88 struct udev *udev;
109 static void event_queue_cleanup(struct udev *udev, enum event_state type);
120 struct udev *udev;
152 udev_unref(worker->udev);
169 static int worker_new(struct worker **ret, struct udev *udev, struct udev_monitor *worker_monitor, pid_t pid) {
174 assert(udev);
183 worker->udev = udev_ref(udev);
224 struct udev *udev = event->udev;
229 worker_monitor = udev_monitor_new_from_netlink(udev, NULL);
250 event_queue_cleanup(udev, EVENT_UNDEF);
312 * cause udev to skip the event handling; in the case udev
314 * udev has finished its event handling.
349 udev_watch_begin(udev, dev);
417 udev_builtin_exit(udev);
418 udev_unref(udev);
431 r = worker_new(&worker, udev, worker_monitor, pid);
482 event->udev = udev_device_get_udev(dev);
587 static void event_queue_start(struct udev *udev) {
604 static void event_queue_cleanup(struct udev *udev, enum event_state match_type) {
687 r = touch("/data/service/el1/public/udev/queue");
689 log_warning_errno(r, "could not touch /run/udev/queue: %m");
691 r = unlink("/data/service/el1/public/udev/queue");
693 log_warning("could not unlink /run/udev/queue: %m");
797 struct udev *udev = udev_device_get_udev(dev);
819 e = udev_enumerate_new(udev);
838 d = udev_device_new_from_syspath(udev, udev_list_entry_get_name(item));
868 d = udev_device_new_from_syspath(udev, udev_list_entry_get_name(item));
891 static int handle_inotify(struct udev *udev) {
907 dev = udev_watch_lookup(udev, e->wd);
915 udev_watch_end(udev, dev);
923 static void handle_signal(struct udev *udev, int signo) {
985 * udev.log-priority=<level> syslog priority
986 * udev.children-max=<number of workers> events are fully serialized if set to 1
987 * udev.exec-delay=<number of seconds> delay execution of every executed program
988 * udev.event-timeout=<number of seconds> seconds to wait before terminating an event
1001 if (startswith(key, "udev."))
1002 key += strlen("udev.");
1014 log_warning("invalid udev.children-max ignored: %s", value);
1018 log_warning("invalid udev.exec-delay ignored: %s", value);
1022 log_warning("invalid udev.event-timeout ignored: %s", value);
1125 struct udev *udev;
1138 udev = udev_new();
1139 if (!udev) {
1140 r = log_error_errno(errno, "could not allocate udev context: %m");
1180 udev_list_init(udev, &properties_list, true);
1182 r = mkdir(UDEV_ROOT_RUN "/udev", 0755);
1184 r = log_error_errno(errno, "could not create " UDEV_ROOT_RUN "/udev: %m");
1208 udev_ctrl = udev_ctrl_new(udev);
1210 r = log_error_errno(EINVAL, "error initializing udev control socket");
1215 monitor = udev_monitor_new_from_netlink(udev, "kernel");
1228 r = log_error_errno(EINVAL, "error binding udev control socket");
1236 udev_builtin_init(udev);
1238 rules = udev_rules_new(udev, arg_resolve_names);
1300 fd_inotify = udev_watch_init(udev);
1311 if (access(UDEV_ROOT_RUN "/udev/rules.d", F_OK) < 0) {
1312 udev_mkdir_p(UDEV_ROOT_RUN "/udev/rules.d", 0755);
1314 inotify_add_watch(fd_inotify, UDEV_ROOT_RUN "/udev/rules.d",
1317 udev_watch_restore(udev);
1385 event_queue_cleanup(udev, EVENT_QUEUED);
1471 if (udev_builtin_validate(udev))
1481 udev_builtin_exit(udev);
1502 udev_builtin_init(udev);
1504 rules = udev_rules_new(udev, arg_resolve_names);
1506 event_queue_start(udev);
1515 handle_signal(udev, fdsi.ssi_signo);
1524 handle_inotify(udev);
1550 unlink(UDEV_ROOT_RUN "/udev/queue");
1555 event_queue_cleanup(udev, EVENT_UNDEF);
1557 udev_builtin_exit(udev);
1568 udev_unref(udev);