| Function report | 
| Source Code: include\linux\kref.h | Create Date:2022-07-28 05:44:10 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name: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
Proto:static inline int kref_put(struct kref *kref, void (*release)(struct kref *kref))
Type:int
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct kref * | kref | |
| void (* | release | 
| 68 | Return 0 | 
| Name | Describe | 
|---|---|
| kobject_put | kobject_put() - Decrement refcount for object.*@kobj: object.* Decrement the refcount, and if 0, call kobject_cleanup(). | 
| klist_dec_and_del | |
| cpu_rmap_put | pu_rmap_put - release ref on a cpu_rmap*@rmap: reverse-map allocated with alloc_cpu_rmap() | 
| autogroup_kref_put | |
| psi_trigger_replace | |
| psi_trigger_poll | |
| put_pid_ns | |
| relay_destroy_buf | lay_destroy_buf - destroy an rchan_buf struct and associated buffer*@buf: the buffer struct | 
| relay_close_buf | lay_close_buf - close a channel buffer*@buf: channel buffer* Marks the buffer finalized and restores the default callbacks.* The channel buffer and channel buffer data structure are then freed* automatically when the last reference is given up. | 
| relay_open | lay_open - create a new relay channel*@base_filename: base name of files to create, %NULL for buffering only*@parent: dentry of parent directory, %NULL for root directory or buffer*@subbuf_size: size of sub-buffers*@n_subbufs: number of sub-buffers*@cb: | 
| relay_close | lay_close - close the channel*@chan: the channel* Closes all channel buffers and frees the channel. | 
| relay_file_release | lay_file_release - release file op for relay files*@inode: the inode*@filp: the file* Decrements the channel refcount, as the filesystem is* no longer using it. | 
| bdi_put | |
| zswap_pool_put | |
| hugetlb_vm_op_close | |
| hugetlb_reserve_pages | |
| compact_single_buddy | |
| do_compact_page | |
| z3fold_alloc | z3fold_alloc() - allocates a region of a given size*@pool: z3fold pool from which to allocate*@size: size in bytes of the desired allocation*@gfp: gfp flags used if the pool needs to grow*@handle: handle of the new allocation* This function will attempt | 
| z3fold_free | z3fold_free() - frees the allocation associated with the given handle*@pool: pool in which the allocation resided*@handle: handle associated with the allocation returned by z3fold_alloc()* In the case that the z3fold page in which the allocation resides | 
| z3fold_reclaim_page | z3fold_reclaim_page() - evicts allocations from a pool page and frees it*@pool: pool from which a page will attempt to be evicted*@retries: number of pages on the LRU list for which eviction will* be attempted before failing* z3fold reclaim is different | 
| z3fold_page_putback | |
| bsg_job_put | |
| put_multi_transaction | |
| eventfd_ctx_put | ventfd_ctx_put - Releases a reference to the internal eventfd context.*@ctx: [in] Pointer to eventfd context.* The eventfd context reference must have been previously acquired either* with eventfd_ctx_fdget() or eventfd_ctx_fileget(). | 
| Source code conversion tool public plug-in interface | X | 
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |