函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:lock_lock_inode_wait - Apply a FLOCK-style lock to a file*@inode: inode of the file to apply to*@fl: The lock to be applied* Apply a FLOCK style lock request to an inode.

函数原型:static int flock_lock_inode_wait(struct inode *inode, struct file_lock *fl)

返回类型:int

参数:

类型参数名称
struct inode *inode
struct file_lock *fl
2134  might_sleep()
2135  循环
2136  error等于Try to create a FLOCK lock on filp
2137  如果error不等于Special return value from posix_lock_file() and vfs_lock_file() for* asynchronous locking.退出
2139  error等于wait_event_interruptible - sleep until a condition gets true*@wq_head: the waitqueue to wait on*@condition: a C expression for the event to wait for* The process is put to sleep (TASK_INTERRUPTIBLE) until the(fl_wait, ! The lock, that is blocking us )
2140  如果error退出
2143  locks_delete_lock - stop waiting for a file lock*@waiter: the lock which was waiting* lockd/nfsd need to disconnect the lock while working on it.
2144  返回:error
调用者
名称描述
locks_lock_inode_waitlocks_lock_inode_wait - Apply a lock to an inode*@inode: inode of the file to apply to*@fl: The lock to be applied* Apply a POSIX or FLOCK style lock request to an inode.