Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\kobject.c Create Date:2022-07-28 06:16:14
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:kobject_put() - Decrement refcount for object.*@kobj: object.* Decrement the refcount, and if 0, call kobject_cleanup().

Proto:void kobject_put(struct kobject *kobj)

Type:void

Parameter:

TypeParameterName
struct kobject *kobj
734  If kobj Then
735  If Not state_initialized Then WARN(1, warning conditions "kobject: '%s' (%p): is not initialized, yet kobject_put() is being called.\n", kobject_name(kobj), kobj)
739  kref_put - decrement refcount for object.*@kref: object.*@release: pointer to the function that will clean up the object when the* last reference to the object is released.* This pointer is required, and it is not acceptable to pass kfree
Caller
NameDescribe
kobject_add_internal
kobject_renamekobject_rename() - Change the name of an object
kobject_movekobject_move() - Move object to another parent.*@kobj: object in question.*@new_parent: object's new parent (can be NULL)
kobject_delkobject_del() - Unlink kobject from hierarchy.*@kobj: object.* This is the function that should be called to delete an object* successfully added via kobject_add().
kobject_create_and_addkobject_create_and_add() - Create a struct kobject dynamically and* register it with sysfs.*@name: the name for the kobject*@parent: the parent kobject of this kobject, if any.* This function creates a kobject structure dynamically and registers it
kset_unregisterkset_unregister() - Remove a kset.*@k: kset.
cleanup_setup_data_node
create_setup_data_nodes
boot_params_ksysfs_init
allocate_threshold_blocks
deallocate_threshold_block
threshold_remove_bank
sugov_init
__klp_free_funcs
__klp_free_objects
klp_free_patch_finishThis function implements the free part that must be called outside* klp_mutex.* It must be called after klp_free_patch_start(). And it has to be* the last function accessing the livepatch structures when the patch* gets disabled.
mod_sysfs_teardown
preemptirq_delay_init
preemptirq_delay_exit
padata_freepadata_free - free a padata instance*@padata_inst: padata instance to free
hugetlb_unregister_nodeUnregister hstate attributes from a single node device.* No-op if no hstate attributes attached.
blk_put_queue
blk_register_queuelk_register_queue - register a block layer queue with sysfs*@disk: Disk of which the request queue should be registered with sysfs.
blk_unregister_queuelk_unregister_queue - counterpart of blk_register_queue()*@disk: Disk of which the request queue should be unregistered from sysfs.* Note: the caller is responsible for guaranteeing that this function is called* after blk_register_queue() has finished.
blk_mq_releaseIt is the actual release handler for mq, but we do it from* request queue's release handler for avoiding use-after-free* and headache because q->mq_kobj shouldn't have been introduced,* but we can't group ctx/kctx kobj without it.
blk_mq_alloc_and_init_hctx
blk_mq_ctx_sysfs_release
blk_mq_unregister_dev
blk_mq_sysfs_deinit
__blk_mq_register_dev
blk_mq_init_sched
del_gendisk
put_disk
delete_partitionMust be called either with bd_mutex held, before a disk can be opened or* after all disk users are gone.
add_partitionMust be called either with bd_mutex held, before a disk can be opened or* after all disk users are gone.
dd_init_queuealize elevator private data (deadline_data).
kyber_init_sched
bfq_init_queue
blk_integrity_del
cdev_put
cdev_deldev_del() - remove a cdev from the system*@p: the cdev structure to be removed* cdev_del() removes @p from the system, possibly freeing the structure* itself
cdev_default_release
cdev_dynamic_release
kset_put