- struct alias_device *alias;
-
- device_lock();
-
- alias = avl_find_element(&aliases, name, alias, avl);
- if (!alias)
- return;
-
- alias->cleanup = !dev;
- if (dev) {
- if (dev != alias->dep.dev) {
- device_remove_user(&alias->dep);
- strcpy(alias->dev.ifname, dev->ifname);
- device_add_user(&alias->dep, dev);
- }
- }
-
- device_set_present(&alias->dev, !!dev);
-
- if (!dev && alias->dep.dev && !alias->dep.dev->active)
- device_remove_user(&alias->dep);
-
- device_unlock();
-}
-
-static int set_device_state(struct device *dev, bool state)
-{
- if (state)
- system_if_up(dev);
- else
- system_if_down(dev);
-
- return 0;
+ __device_broadcast_event(&dev->aliases, ev);
+ __device_broadcast_event(&dev->users, ev);