Lines Matching refs:kobj

568 	ret = sysfs_create_link(&link->link_dev.kobj, &sup->kobj, "supplier");  in devlink_add_symlinks()
572 ret = sysfs_create_link(&link->link_dev.kobj, &con->kobj, "consumer"); in devlink_add_symlinks()
582 ret = sysfs_create_link(&sup->kobj, &link->link_dev.kobj, buf_con); in devlink_add_symlinks()
592 ret = sysfs_create_link(&con->kobj, &link->link_dev.kobj, buf_sup); in devlink_add_symlinks()
599 sysfs_remove_link(&sup->kobj, buf_con); in devlink_add_symlinks()
601 sysfs_remove_link(&link->link_dev.kobj, "consumer"); in devlink_add_symlinks()
603 sysfs_remove_link(&link->link_dev.kobj, "supplier"); in devlink_add_symlinks()
615 sysfs_remove_link(&link->link_dev.kobj, "consumer"); in devlink_remove_symlinks()
616 sysfs_remove_link(&link->link_dev.kobj, "supplier"); in devlink_remove_symlinks()
622 sysfs_remove_link(&con->kobj, buf_sup); in devlink_remove_symlinks()
628 sysfs_remove_link(&sup->kobj, buf_con); in devlink_remove_symlinks()
2413 static ssize_t dev_attr_show(struct kobject *kobj, struct attribute *attr, in dev_attr_show() argument
2417 struct device *dev = kobj_to_dev(kobj); in dev_attr_show()
2429 static ssize_t dev_attr_store(struct kobject *kobj, struct attribute *attr, in dev_attr_store() argument
2433 struct device *dev = kobj_to_dev(kobj); in dev_attr_store()
2542 static void device_release(struct kobject *kobj) in device_release() argument
2544 struct device *dev = kobj_to_dev(kobj); in device_release()
2572 static const void *device_namespace(const struct kobject *kobj) in device_namespace() argument
2574 const struct device *dev = kobj_to_dev(kobj); in device_namespace()
2583 static void device_get_ownership(const struct kobject *kobj, kuid_t *uid, kgid_t *gid) in device_get_ownership() argument
2585 const struct device *dev = kobj_to_dev(kobj); in device_get_ownership()
2599 static int dev_uevent_filter(const struct kobject *kobj) in dev_uevent_filter() argument
2601 const struct kobj_type *ktype = get_ktype(kobj); in dev_uevent_filter()
2604 const struct device *dev = kobj_to_dev(kobj); in dev_uevent_filter()
2613 static const char *dev_uevent_name(const struct kobject *kobj) in dev_uevent_name() argument
2615 const struct device *dev = kobj_to_dev(kobj); in dev_uevent_name()
2653 static int dev_uevent(const struct kobject *kobj, struct kobj_uevent_env *env) in dev_uevent() argument
2655 const struct device *dev = kobj_to_dev(kobj); in dev_uevent()
2736 top_kobj = &dev->kobj; in uevent_show()
2748 if (!kset->uevent_ops->filter(&dev->kobj)) in uevent_show()
2756 retval = kset->uevent_ops->uevent(&dev->kobj, env); in uevent_show()
2773 rc = kobject_synth_uevent(&dev->kobj, buf, count); in uevent_store()
2836 return sysfs_create_groups(&dev->kobj, groups); in device_add_groups()
2843 sysfs_remove_groups(&dev->kobj, groups); in device_remove_groups()
2858 sysfs_remove_group(&dev->kobj, group); in devm_attr_group_remove()
2881 error = sysfs_create_group(&dev->kobj, grp); in devm_device_add_group()
3004 list_move_tail(&deva->kobj.entry, &devb->kobj.entry); in devices_kset_move_before()
3020 list_move(&deva->kobj.entry, &devb->kobj.entry); in devices_kset_move_after()
3034 list_move_tail(&dev->kobj.entry, &devices_kset->list); in devices_kset_move_last()
3055 error = sysfs_create_file(&dev->kobj, &attr->attr); in device_create_file()
3071 sysfs_remove_file(&dev->kobj, &attr->attr); in device_remove_file()
3086 return sysfs_remove_file_self(&dev->kobj, &attr->attr); in device_remove_file_self()
3102 error = sysfs_create_bin_file(&dev->kobj, attr); in device_create_bin_file()
3116 sysfs_remove_bin_file(&dev->kobj, attr); in device_remove_bin_file()
3158 dev->kobj.kset = devices_kset; in device_initialize()
3159 kobject_init(&dev->kobj, &device_ktype); in device_initialize()
3186 &devices_kset->kobj); in virtual_device_parent()
3192 struct kobject kobj; member
3196 #define to_class_dir(obj) container_of(obj, struct class_dir, kobj)
3198 static void class_dir_release(struct kobject *kobj) in class_dir_release() argument
3200 struct class_dir *dir = to_class_dir(kobj); in class_dir_release()
3205 struct kobj_ns_type_operations *class_dir_child_ns_type(const struct kobject *kobj) in class_dir_child_ns_type() argument
3207 const struct class_dir *dir = to_class_dir(kobj); in class_dir_child_ns_type()
3228 kobject_init(&dir->kobj, &class_dir_ktype); in class_dir_create_and_add()
3230 dir->kobj.kset = &sp->glue_dirs; in class_dir_create_and_add()
3232 retval = kobject_add(&dir->kobj, parent_kobj, "%s", sp->class->name); in class_dir_create_and_add()
3234 kobject_put(&dir->kobj); in class_dir_create_and_add()
3237 return &dir->kobj; in class_dir_create_and_add()
3246 struct kobject *kobj = NULL; in get_device_parent() local
3261 return &parent->kobj; in get_device_parent()
3263 parent_kobj = &parent->kobj; in get_device_parent()
3272 kobj = kobject_get(k); in get_device_parent()
3276 if (kobj) { in get_device_parent()
3279 return kobj; in get_device_parent()
3295 kobj = &dev_root->kobj; in get_device_parent()
3297 return kobj; in get_device_parent()
3302 return &parent->kobj; in get_device_parent()
3306 static inline bool live_in_glue_dir(struct kobject *kobj, in live_in_glue_dir() argument
3312 if (!kobj || !dev->class) in live_in_glue_dir()
3319 if (kobj->kset == &sp->glue_dirs) in live_in_glue_dir()
3330 return dev->kobj.parent; in get_glue_dir()
3343 static inline bool kobject_has_children(struct kobject *kobj) in kobject_has_children() argument
3345 WARN_ON_ONCE(kref_read(&kobj->kref) == 0); in kobject_has_children()
3347 return kobj->sd && kobj->sd->dir.subdirs; in kobject_has_children()
3426 error = sysfs_create_link(&dev->kobj, of_node_kobj(of_node), "of_node"); in device_add_class_symlinks()
3436 error = sysfs_create_link(&dev->kobj, &sp->subsys.kobj, "subsystem"); in device_add_class_symlinks()
3441 error = sysfs_create_link(&dev->kobj, &dev->parent->kobj, in device_add_class_symlinks()
3448 error = sysfs_create_link(&sp->subsys.kobj, &dev->kobj, dev_name(dev)); in device_add_class_symlinks()
3454 sysfs_remove_link(&dev->kobj, "device"); in device_add_class_symlinks()
3456 sysfs_remove_link(&dev->kobj, "subsystem"); in device_add_class_symlinks()
3458 sysfs_remove_link(&dev->kobj, "of_node"); in device_add_class_symlinks()
3469 sysfs_remove_link(&dev->kobj, "of_node"); in device_remove_class_symlinks()
3475 sysfs_remove_link(&dev->kobj, "device"); in device_remove_class_symlinks()
3476 sysfs_remove_link(&dev->kobj, "subsystem"); in device_remove_class_symlinks()
3477 sysfs_delete_link(&sp->subsys.kobj, &dev->kobj, dev_name(dev)); in device_remove_class_symlinks()
3492 err = kobject_set_name_vargs(&dev->kobj, fmt, vargs); in dev_set_name()
3509 struct kobject *kobj = device_to_dev_kobj(dev); in device_create_sys_dev_entry() local
3513 if (kobj) { in device_create_sys_dev_entry()
3515 error = sysfs_create_link(kobj, &dev->kobj, devt_str); in device_create_sys_dev_entry()
3523 struct kobject *kobj = device_to_dev_kobj(dev); in device_remove_sys_dev_entry() local
3526 if (kobj) { in device_remove_sys_dev_entry()
3528 sysfs_remove_link(kobj, devt_str); in device_remove_sys_dev_entry()
3575 struct kobject *kobj; in device_add() local
3613 kobj = get_device_parent(dev, parent); in device_add()
3614 if (IS_ERR(kobj)) { in device_add()
3615 error = PTR_ERR(kobj); in device_add()
3618 if (kobj) in device_add()
3619 dev->kobj.parent = kobj; in device_add()
3627 error = kobject_add(&dev->kobj, dev->kobj.parent, NULL); in device_add()
3629 glue_dir = kobj; in device_add()
3670 kobject_uevent(&dev->kobj, KOBJ_ADD); in device_add()
3736 kobject_uevent(&dev->kobj, KOBJ_REMOVE); in device_add()
3738 kobject_del(&dev->kobj); in device_add()
3785 return dev ? kobj_to_dev(kobject_get(&dev->kobj)) : NULL; in get_device()
3797 kobject_put(&dev->kobj); in put_device()
3896 kobject_uevent(&dev->kobj, KOBJ_REMOVE); in device_del()
3898 kobject_del(&dev->kobj); in device_del()
4198 kobject_uevent(&dev->kobj, KOBJ_OFFLINE); in device_offline()
4227 kobject_uevent(&dev->kobj, KOBJ_ONLINE); in device_online()
4303 err = sysfs_create_link(&root->dev.kobj, &mk->kobj, "module"); in __root_device_register()
4328 sysfs_remove_link(&root->dev.kobj, "module"); in root_device_unregister()
4367 retval = kobject_set_name_vargs(&dev->kobj, fmt, args); in device_create_groups_vargs()
4516 struct kobject *kobj = &dev->kobj; in device_rename() local
4541 error = sysfs_rename_link_ns(&sp->subsys.kobj, kobj, old_device_name, in device_rename()
4542 new_name, kobject_namespace(kobj)); in device_rename()
4549 error = kobject_rename(kobj, new_name); in device_rename()
4552 sysfs_rename_link_ns(&sp->subsys.kobj, kobj, new_name, in device_rename()
4553 old_device_name, kobject_namespace(kobj)); in device_rename()
4571 sysfs_remove_link(&dev->kobj, "device"); in device_move_class_links()
4573 error = sysfs_create_link(&dev->kobj, &new_parent->kobj, in device_move_class_links()
4606 error = kobject_move(&dev->kobj, new_parent_kobj); in device_move()
4627 if (!kobject_move(&dev->kobj, &old_parent->kobj)) { in device_move()
4670 struct kobject *kobj = &dev->kobj; in device_attrs_change_owner() local
4680 error = sysfs_groups_change_owner(kobj, class->dev_groups, kuid, in device_attrs_change_owner()
4691 error = sysfs_groups_change_owner(kobj, type->groups, kuid, in device_attrs_change_owner()
4698 error = sysfs_groups_change_owner(kobj, dev->groups, kuid, kgid); in device_attrs_change_owner()
4704 error = sysfs_file_change_owner(kobj, dev_attr_online.attr.name, in device_attrs_change_owner()
4728 struct kobject *kobj = &dev->kobj; in device_change_owner() local
4739 error = sysfs_change_owner(kobj, kuid, kgid); in device_change_owner()
4748 error = sysfs_file_change_owner(kobj, dev_attr_uevent.attr.name, kuid, in device_change_owner()
4777 error = sysfs_link_change_owner(&sp->subsys.kobj, &dev->kobj, dev_name(dev), kuid, kgid); in device_change_owner()
4806 kobj.entry); in device_shutdown()
4819 list_del_init(&dev->kobj.entry); in device_shutdown()