Function report |
Source Code:fs\read_write.c |
Create Date:2022-07-28 20:01:31 |
| Last Modify:2020-03-18 10:18:51 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:vfs_dedupe_file_range
Proto:int vfs_dedupe_file_range(struct file *file, struct file_dedupe_range *same)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct file * | file | |
| struct file_dedupe_range * | same |
| 2148 | src = file_inode(file) |
| 2156 | If Not (f_mode & le is open for reading ) Then Return -EINVAL |
| 2159 | If must be zero || must be zero Then Return -EINVAL |
| 2162 | off = - start of extent in source |
| 2163 | len = - length of extent |
| 2171 | If Not remap_file_range Then Return -EOPNOTSUPP |
| 2174 | ret = remap_verify_area(file, off, len, false) |
| 2177 | ret = 0 |
| 2183 | len = min_t - return minimum of two values, using the specified type*@type: data type to use*@x: first value*@y: second value(u64, len, 1 << 30) |
| 2192 | dst_fd = fdget( - destination file ) |
| 2195 | If Not dst_file Then |
| 2196 | ut - see above description = -EBADF |
| 2197 | Go to next_loop |
| 2200 | If must be zero Then |
| 2201 | ut - see above description = -EINVAL |
| 2202 | Go to next_fdput |
| 2205 | deduped = vfs_dedupe_file_range_one(file, off, dst_file, - start of extent in destination , len, REMAP_FILE_CAN_SHORTEN) |
| 2208 | If deduped == -EBADE Then ut - see above description = FILE_DEDUPE_RANGE_DIFFERS |
| 2210 | Else if deduped < 0 Then ut - see above description = deduped |
| 2215 | next_fdput : |
| 2217 | next_loop : |
| 2218 | If fatal_signal_pending(current process) Then Break |
| 2221 | Return ret |
| Name | Describe |
|---|---|
| ioctl_file_dedupe_range |
| 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 |