Function report |
Source Code:fs\open.c |
Create Date:2022-07-28 20:00:53 |
| Last Modify:2020-03-18 10:16:03 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:vfs_fallocate
Proto:int vfs_fallocate(struct file *file, int mode, loff_t offset, loff_t len)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct file * | file | |
| int | mode | |
| loff_t | offset | |
| loff_t | len |
| 231 | inode = file_inode(file) |
| 238 | If mode & ~FALLOC_FL_SUPPORTED_MASK Then Return -EOPNOTSUPP |
| 247 | If mode & de-allocates range && Not (mode & default is extend size ) Then Return -EOPNOTSUPP |
| 266 | If Not (f_mode & le is open for writing ) Then Return -EBADF |
| 272 | If mode & ~default is extend size && IS_APPEND(inode) Then Return -EPERM |
| 275 | If IS_IMMUTABLE(inode) Then Return -EPERM |
| 281 | If IS_SWAPFILE(inode) Then Return -ETXTBSY |
| 288 | ret = security_file_permission(file, MAY_WRITE) |
| 305 | If Not fallocate Then Return -EOPNOTSUPP |
| 308 | file_start_write(file) |
| 318 | If ret == 0 Then snotify_modify - file was modified |
| 321 | file_end_write(file) |
| 322 | Return ret |
| Name | Describe |
|---|---|
| ksys_fallocate | |
| ioctl_preallocate | This provides compatibility with legacy XFS pre-allocation ioctls* which predate the fallocate syscall.* Only the l_start, l_len and l_whence fields of the 'struct space_resv'* are used here, rest are ignored. |
| compat_ioctl_preallocate | just account for different alignment |
| 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 |