| /Linux-v6.6/Documentation/translations/zh_CN/core-api/ |
| D | kobject.rst | 39 - 一个kset是一组kobjects。这些kobjects可以是相同的ktype或者属于不同的 40 ktype。kset是kobjects集合的基本容器类型。Ksets包含它们自己的kobjects, 41 但你可以安全地忽略这个实现细节,因为kset的核心代码会自动处理这个kobject。 44 于同一个kset中的一个kobject。 120 这将正确设置kobject的父级和kobject的名称。如果该kobject要与一个特定的kset相关 121 联,在调用kobject_add()之前必须分配kobj->kset。如果kset与kobject相关联,则 122 kobject的父级可以在调用kobject_add()时被设置为NULL,则kobject的父级将是kset 283 一个kset仅仅是一个希望相互关联的kobjects的集合。没有限制它们必须是相 286 一个kset有以下功能: 288 - 它像是一个包含一组对象的袋子。一个kset可以被内核用来追踪“所有块 [all …]
|
| /Linux-v6.6/lib/ |
| D | kobject.c | 174 if (!kobj->kset) in kobj_kset_join() 177 kset_get(kobj->kset); in kobj_kset_join() 178 spin_lock(&kobj->kset->list_lock); in kobj_kset_join() 179 list_add_tail(&kobj->entry, &kobj->kset->list); in kobj_kset_join() 180 spin_unlock(&kobj->kset->list_lock); in kobj_kset_join() 186 if (!kobj->kset) in kobj_kset_leave() 189 spin_lock(&kobj->kset->list_lock); in kobj_kset_leave() 191 spin_unlock(&kobj->kset->list_lock); in kobj_kset_leave() 192 kset_put(kobj->kset); in kobj_kset_leave() 226 if (kobj->kset) { in kobject_add_internal() [all …]
|
| D | kobject_uevent.c | 393 if (!ops && kobj->kset) { in kobject_uevent_net_broadcast() 394 struct kobject *ksobj = &kobj->kset->kobj; in kobject_uevent_net_broadcast() 465 struct kset *kset; in kobject_uevent_env() local 482 while (!top_kobj->kset && top_kobj->parent) in kobject_uevent_env() 485 if (!top_kobj->kset) { in kobject_uevent_env() 492 kset = top_kobj->kset; in kobject_uevent_env() 493 uevent_ops = kset->uevent_ops; in kobject_uevent_env() 515 subsystem = kobject_name(&kset->kobj); in kobject_uevent_env()
|
| /Linux-v6.6/include/linux/ |
| D | kobject.h | 68 struct kset *kset; member 168 struct kset { struct 175 void kset_init(struct kset *kset); argument 176 int __must_check kset_register(struct kset *kset); 177 void kset_unregister(struct kset *kset); 178 struct kset * __must_check kset_create_and_add(const char *name, const struct kset_uevent_ops *u, 181 static inline struct kset *to_kset(struct kobject *kobj) in to_kset() 183 return kobj ? container_of(kobj, struct kset, kobj) : NULL; in to_kset() 186 static inline struct kset *kset_get(struct kset *k) in kset_get() 191 static inline void kset_put(struct kset *k) in kset_put() [all …]
|
| D | iscsi_boot_sysfs.h | 105 struct kset *kset; member
|
| /Linux-v6.6/Documentation/core-api/ |
| D | kobject.rst | 36 - A kset is a group of kobjects. These kobjects can be of the same ktype 37 or belong to different ktypes. The kset is the basic container type for 39 safely ignore that implementation detail as the kset core code handles 43 of those directories corresponds to a kobject in the same kset. 131 properly. If the kobject is to be associated with a specific kset, 132 kobj->kset must be assigned before calling kobject_add(). If a kset is 135 kset itself. 325 A kset is merely a collection of kobjects that want to be associated with 329 A kset serves these functions: 331 - It serves as a bag containing a group of objects. A kset can be used by [all …]
|
| /Linux-v6.6/fs/nfs/ |
| D | sysfs.c | 21 static struct kset *nfs_kset; 25 struct kset *kset = container_of(kobj, struct kset, kobj); in nfs_kset_release() local 26 kfree(kset); in nfs_kset_release() 57 nfs_kset->kobj.kset = NULL; in nfs_sysfs_init() 177 p->kobject.kset = nfs_kset; in nfs_netns_client_alloc() 178 p->nfs_net_kobj.kset = nfs_kset; in nfs_netns_client_alloc()
|
| /Linux-v6.6/drivers/base/ |
| D | base.h | 43 struct kset subsys; 44 struct kset *devices_kset; 48 struct kset *drivers_kset; 56 struct kset glue_dirs; 191 extern struct kset *devices_kset;
|
| D | bus.c | 26 static struct kset *system_kset; 29 static struct kset *bus_kset; 74 struct kset *kset = container_of(kobj, struct kset, kobj); in bus_to_subsys() local 76 sp = container_of_const(kset, struct subsys_private, subsys); in bus_to_subsys() 665 priv->kobj.kset = sp->drivers_kset; in bus_add_driver() 864 bus_kobj->kset = bus_kset; in bus_register() 991 struct kset *bus_get_kset(const struct bus_type *bus) in bus_get_kset() 994 struct kset *kset; in bus_get_kset() local 999 kset = &sp->subsys; in bus_get_kset() 1002 return kset; in bus_get_kset()
|
| D | class.c | 24 static struct kset *class_kset; 56 struct kset *kset = container_of(kobj, struct kset, kobj); in class_to_subsys() local 58 sp = container_of_const(kset, struct subsys_private, subsys); in class_to_subsys() 201 cp->subsys.kobj.kset = class_kset; in class_register()
|
| /Linux-v6.6/drivers/firmware/ |
| D | qemu_fw_cfg.c | 492 static int fw_cfg_build_symlink(struct kset *dir, in fw_cfg_build_symlink() 496 struct kset *subdir; in fw_cfg_build_symlink() 533 subdir = kzalloc(sizeof(struct kset), GFP_KERNEL); in fw_cfg_build_symlink() 538 subdir->kobj.kset = dir; in fw_cfg_build_symlink() 562 static void fw_cfg_kset_unregister_recursive(struct kset *kset) in fw_cfg_kset_unregister_recursive() argument 566 list_for_each_entry_safe(k, next, &kset->list, entry) in fw_cfg_kset_unregister_recursive() 568 if (k->ktype == kset->kobj.ktype) in fw_cfg_kset_unregister_recursive() 572 kset_unregister(kset); in fw_cfg_kset_unregister_recursive() 578 static struct kset *fw_cfg_fname_kset;
|
| /Linux-v6.6/drivers/dma-buf/ |
| D | dma-buf-sysfs-stats.c | 144 static struct kset *dma_buf_stats_kset; 145 static struct kset *dma_buf_per_buffer_stats_kset; 185 sysfs_entry->kobj.kset = dma_buf_per_buffer_stats_kset; in dma_buf_stats_setup()
|
| /Linux-v6.6/drivers/platform/x86/hp/hp-bioscfg/ |
| D | bioscfg.c | 538 static void destroy_attribute_objs(struct kset *kset) in destroy_attribute_objs() argument 542 list_for_each_entry_safe(pos, next, &kset->list, entry) in destroy_attribute_objs() 606 attr_name_kobj->kset = bioscfg_drv.authentication_dir_kset; in hp_add_other_attributes() 611 attr_name_kobj->kset = bioscfg_drv.main_dir_kset; in hp_add_other_attributes() 664 struct kset *temp_kset; in hp_init_bios_package_attribute() 722 attr_name_kobj->kset = temp_kset; in hp_init_bios_package_attribute() 775 struct kset *temp_kset; in hp_init_bios_buffer_attribute() 815 attr_name_kobj->kset = temp_kset; in hp_init_bios_buffer_attribute()
|
| /Linux-v6.6/net/sunrpc/ |
| D | sysfs.c | 25 static struct kset *rpc_sunrpc_kset; 46 struct kset *kset, in rpc_sysfs_object_alloc() argument 53 kobj->kset = kset; in rpc_sysfs_object_alloc() 467 p->kobject.kset = rpc_sunrpc_kset; in rpc_sysfs_client_alloc() 487 p->kobject.kset = rpc_sunrpc_kset; in rpc_sysfs_xprt_switch_alloc() 507 p->kobject.kset = rpc_sunrpc_kset; in rpc_sysfs_xprt_alloc()
|
| /Linux-v6.6/drivers/platform/x86/ |
| D | think-lmi.h | 92 struct kset *attribute_kset; 93 struct kset *authentication_kset;
|
| /Linux-v6.6/fs/ocfs2/cluster/ |
| D | masklog.c | 152 static struct kset mlog_kset = { 156 int mlog_sys_init(struct kset *o2cb_kset) in mlog_sys_init() 167 mlog_kset.kobj.kset = o2cb_kset; in mlog_sys_init()
|
| /Linux-v6.6/drivers/platform/x86/dell/dell-wmi-sysman/ |
| D | sysman.c | 349 static void destroy_attribute_objs(struct kset *kset) in destroy_attribute_objs() argument 353 list_for_each_entry_safe(pos, next, &kset->list, entry) { in destroy_attribute_objs() 397 struct kset *tmp_set; in init_bios_attributes() 470 attr_name_kobj->kset = tmp_set; in init_bios_attributes()
|
| /Linux-v6.6/fs/erofs/ |
| D | sysfs.c | 192 static struct kset erofs_root = { 202 .kset = &erofs_root, 225 sbi->s_kobj.kset = &erofs_root; in erofs_register_sysfs()
|
| /Linux-v6.6/drivers/scsi/ |
| D | iscsi_boot_sysfs.c | 352 boot_kobj->kobj.kset = boot_kset->kset; in iscsi_boot_create_kobj() 504 boot_kset->kset = kset_create_and_add(set_name, NULL, firmware_kobj); in iscsi_boot_create_kset() 505 if (!boot_kset->kset) { in iscsi_boot_create_kset() 551 kset_unregister(boot_kset->kset); in iscsi_boot_destroy_kset()
|
| /Linux-v6.6/fs/ubifs/ |
| D | sysfs.c | 87 static struct kset ubifs_kset = { 110 c->kobj.kset = &ubifs_kset; in ubifs_sysfs_register()
|
| /Linux-v6.6/samples/kobject/ |
| D | Makefile | 2 obj-$(CONFIG_SAMPLE_KOBJECT) += kobject-example.o kset-example.o
|
| /Linux-v6.6/drivers/pci/ |
| D | slot.c | 15 struct kset *pci_slots_kset; 267 slot->kobj.kset = pci_slots_kset; in pci_create_slot() 369 struct kset *pci_bus_kset; in pci_slot_init()
|
| /Linux-v6.6/drivers/staging/greybus/ |
| D | audio_manager_private.h | 17 struct kset *manager_kset,
|
| /Linux-v6.6/arch/x86/platform/efi/ |
| D | runtime-map.c | 102 static struct kset *map_kset; 127 entry->kobj.kset = map_kset; in add_sysfs_runtime_map_entry()
|
| /Linux-v6.6/drivers/net/phy/ |
| D | phylink.c | 2295 struct ethtool_link_ksettings *kset) in phylink_get_ksettings() argument 2297 phylink_merge_link_mode(kset->link_modes.advertising, state->advertising); in phylink_get_ksettings() 2298 linkmode_copy(kset->link_modes.lp_advertising, state->lp_advertising); in phylink_get_ksettings() 2299 if (kset->base.rate_matching == RATE_MATCH_NONE) { in phylink_get_ksettings() 2300 kset->base.speed = state->speed; in phylink_get_ksettings() 2301 kset->base.duplex = state->duplex; in phylink_get_ksettings() 2303 kset->base.autoneg = linkmode_test_bit(ETHTOOL_LINK_MODE_Autoneg_BIT, in phylink_get_ksettings() 2318 struct ethtool_link_ksettings *kset) in phylink_ethtool_ksettings_get() argument 2325 phy_ethtool_ksettings_get(pl->phydev, kset); in phylink_ethtool_ksettings_get() 2327 kset->base.port = pl->link_port; in phylink_ethtool_ksettings_get() [all …]
|