函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:fiemap_fill_next_extent

函数原型:int fiemap_fill_next_extent(struct fiemap_extent_info *fieinfo, u64 logical, u64 phys, u64 len, unsigned int flags)

返回类型:int

参数:

类型参数名称
struct fiemap_extent_info *fieinfo
u64logical
u64phys
u64len
unsigned intflags
94  __userdest等于Start offiemap_extent array
97  如果Size of fiemap_extent array 恒等于0则
98  Number of mapped extents 自加
99  返回:如果flags按位与Last extent in file. 则1否则0
102  如果Number of mapped extents 大于等于Size of fiemap_extent array 则返回:1
105  如果flags按位与map_fill_next_extent - Fiemap helper function*@fieinfo: Fiemap context passed into ->fiemap*@logical: Extent logical start offset, in bytes*@phys: Extent physical start offset, in bytes*@len: Extent length, in bytes*@flags: FIEMAP_EXTENT flags that flags或等于Data location unknown.
107  如果flags按位与SET_NO_UNMOUNTED_IO_FLAGSflags或等于Data can not be read* while fs is unmounted
109  如果flags按位与SET_NOT_ALIGNED_FLAGSflags或等于Extent offsets may not be* block aligned.
112  memset( & extent, 0, extent的长度)
113  logical offset in bytes for the start of * the extent from the beginning of the file 等于logical
114  physical offset in bytes for the start * of the extent from the beginning of the disk 等于phys
115  length in bytes for this extent 等于len
116  FIEMAP_EXTENT_* flags for this extent 等于flags
118  dest加等于Number of mapped extents
119  如果copy_to_user(dest, & extent, extent的长度)则返回:负EFAULT
122  Number of mapped extents 自加
123  如果Number of mapped extents 恒等于Size of fiemap_extent array 则返回:1
125  返回:如果flags按位与Last extent in file. 则1否则0
调用者
名称描述
__generic_block_fiemap__generic_block_fiemap - FIEMAP for block based inodes (no locking)*@inode: the inode to map*@fieinfo: the fiemap info struct that will be passed back to userspace*@start: where to start mapping in the inode*@len: how much space to map*@get_block: the
iomap_to_fiemap