函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\locks.c Create Date:2022-07-29 10:59:16
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:locks_get_lock_context

函数原型:static struct file_lock_context *locks_get_lock_context(struct inode *inode, int type)

返回类型:struct file_lock_context

参数:

类型参数名称
struct inode *inode
inttype
254  ctx等于smp_load_acquire( & i_flctx)
255  如果此条件成立可能性大(为编译器优化)(ctx)或type恒等于F_UNLCK则转到:out
258  ctx等于分配高速缓存区
259  如果非ctx则转到:out
262  spin_lock_init( & flc_lock)
263  初始化链表头
264  初始化链表头
265  初始化链表头
271  如果cmpxchg( & i_flctx, NULL, ctx)则
272  kmem_cache_free(flctx_cache, ctx)
273  ctx等于smp_load_acquire( & i_flctx)
275  out :
276  trace_locks_get_lock_context(inode, type, ctx)
277  返回:ctx
调用者
名称描述
flock_lock_inodeTry to create a FLOCK lock on filp
posix_lock_inode
generic_add_lease