chiark / gitweb /
libudev: list - use binary search for list lookup
[elogind.git] / udev / udev-event.c
index 832abbbfce097007e8e2116054b562d5b5b58e58..823768a3e2977df6e4a6059d9afcb695c39da229 100644 (file)
 
 struct udev_event *udev_event_new(struct udev_device *dev)
 {
+       struct udev *udev = udev_device_get_udev(dev);
        struct udev_event *event;
 
        event = calloc(1, sizeof(struct udev_event));
        if (event == NULL)
                return NULL;
        event->dev = dev;
-       event->udev = udev_device_get_udev(dev);
-       udev_list_init(&event->run_list);
+       event->udev = udev;
+       udev_list_init(udev, &event->run_list, false);
        event->fd_signal = -1;
        event->birth_usec = now_usec();
        event->timeout_usec = 60 * 1000 * 1000;
@@ -57,7 +58,7 @@ void udev_event_unref(struct udev_event *event)
 {
        if (event == NULL)
                return;
-       udev_list_cleanup_entries(event->udev, &event->run_list);
+       udev_list_cleanup(&event->run_list);
        free(event->tmp_node);
        free(event->program_result);
        free(event->name);
@@ -957,10 +958,6 @@ int udev_event_execute_rules(struct udev_event *event, struct udev_rules *rules,
                        if (err == 0) {
                                info(event->udev, "renamed netif to '%s'\n", event->name);
 
-                               /* delete stale db file */
-                               udev_device_delete_db(dev);
-                               udev_device_tag_index(dev, NULL, false);
-
                                /* remember old name */
                                udev_device_add_property(dev, "INTERFACE_OLD", udev_device_get_sysname(dev));