strcpy(alias->name, name);
alias->dev.set_state = alias_device_set_state;
alias->dev.hidden = true;
- device_init_virtual(&alias->dev, devtype, NULL);
+ if (device_init_virtual(&alias->dev, devtype, NULL) < 0) {
+ free(alias);
+ return NULL;
+ }
+
alias->avl.key = alias->name;
avl_insert(&aliases, &alias->avl);
alias->dep.alias = true;
{
struct alias_device *alias;
- device_lock();
-
alias = avl_find_element(&aliases, name, alias, avl);
if (alias)
alias_set_device(alias, dev);
-
- device_unlock();
}
struct device *