函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\dcache.c Create Date:2022-07-29 10:37:27
Last Modify:2020-03-18 10:27:32 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Try to do a lockless dput(), and return whether that was successful

函数原型:static inline bool fast_dput(struct dentry *dentry)

返回类型:bool

参数:

类型参数名称
struct dentry *dentry
727  如果此条件成立可能性小(为编译器优化)( protected by d_lock & DCACHE_OP_DELETE)则返回: 计数大于0则递减
734  ret等于 如果可能的话递减引用计数
741  如果此条件成立可能性小(为编译器优化)(ret < 0)则
742  加自旋锁
743  如果count大于1则
744  count自减
746  返回:true
748  返回:false
754  如果ret则返回:true
778  smp_rmb()
779  d_flags等于READ_ONCE( protected by d_lock )
780  d_flags与等于Recently used, don't discard. 按位或DCACHE_LRU_LIST按位或DCACHE_DISCONNECTED
783  如果d_flags恒等于Recently used, don't discard. 按位或DCACHE_LRU_LIST的值且非目录项存在于哈希中则返回:true
791  加自旋锁
799  如果count
800  自旋锁解锁
801  返回:true
809  count等于1
810  返回:false
调用者
名称描述
dputdput - release a dentry*@dentry: dentry to release * Release a dentry. This will drop the usage count and if appropriate* call the dentry unlink method as well as removing it from the queues and* releasing its resources
dput_to_list