Function report |
Source Code:fs\locks.c |
Create Date:2022-07-28 20:25:30 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:heck_conflicting_open - see if the given file points to an inode that has* an existing open that would conflict with the* desired lease
Proto:static int check_conflicting_open(struct file *filp, const long arg, int flags)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct file * | filp | |
| const long | arg | |
| int | flags |
| 1776 | inode = locks_inode(filp) |
| 1777 | self_wcount = 0 , self_rcount = 0 |
| 1779 | If flags & utstanding pNFS layout Then Return 0 |
| 1782 | If arg == F_RDLCK Then Return If inode_is_open_for_write(inode) Then -EAGAIN Else 0 |
| 1793 | If f_mode & le is open for writing Then self_wcount = 1 |
| 1795 | Else if f_mode & le is open for reading Then self_rcount = 1 |
| 1798 | If atomic_read( & i_writecount) != self_wcount || atomic_read( & struct files open RO ) != self_rcount Then Return -EAGAIN |
| 1802 | Return 0 |
| Name | Describe |
|---|---|
| generic_add_lease |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |