函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:include\linux\kref.h Create Date:2022-07-27 06:45:11
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称: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

函数原型:static inline int kref_put(struct kref *kref, void (*release)(struct kref *kref))

返回类型:int

参数:

类型参数名称
struct kref *kref
void (*release
64  如果_dec_and_test - decrement a refcount and test if it is 0*@r: the refcount* Similar to atomic_dec_and_test(), it will WARN on underflow and fail to* decrement when saturated at REFCOUNT_SATURATED
65  release(kref)
66  返回:1
68  返回:0
调用者
名称描述
kobject_put递减引用计数对象
klist_dec_and_del
cpu_rmap_put释放cpu_rmap引用
autogroup_kref_put
psi_trigger_replace
psi_trigger_poll
put_pid_ns
relay_destroy_buflay_destroy_buf - destroy an rchan_buf struct and associated buffer*@buf: the buffer struct
relay_close_buflay_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_openlay_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_closelay_close - close the channel*@chan: the channel* Closes all channel buffers and frees the channel.
relay_file_releaselay_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_allocz3fold_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_freez3fold_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_pagez3fold_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_putventfd_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().
aa_put_dfaaa_put_dfa - put a dfa refcount*@dfa: dfa to put refcount (MAYBE NULL)* Requires: if @dfa != NULL that a valid refcount be held
aa_put_str
aa_put_label
aa_put_proxy
aa_put_profileaa_put_profile - decrement refcount on profile @p*@p: profile (MAYBE NULL)
aa_put_loaddata