Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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 activityDownload SCCTChinese

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:

TypeParameterName
struct kref *kref
void (*release
64  If _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 Then
65  release(kref)
66  Return 1
68  Return 0
Caller
NameDescribe
kobject_putkobject_put() - Decrement refcount for object.*@kobj: object.* Decrement the refcount, and if 0, call kobject_cleanup().
klist_dec_and_del
cpu_rmap_putpu_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_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().