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 |