Home
last modified time | relevance | path

Searched refs:fiemap (Results 1 – 26 of 26) sorted by relevance

/linux-4.4.14/fs/
Dioctl.c175 struct fiemap fiemap; in ioctl_fiemap() local
176 struct fiemap __user *ufiemap = (struct fiemap __user *) arg; in ioctl_fiemap()
183 if (!inode->i_op->fiemap) in ioctl_fiemap()
186 if (copy_from_user(&fiemap, ufiemap, sizeof(fiemap))) in ioctl_fiemap()
189 if (fiemap.fm_extent_count > FIEMAP_MAX_EXTENTS) in ioctl_fiemap()
192 error = fiemap_check_ranges(sb, fiemap.fm_start, fiemap.fm_length, in ioctl_fiemap()
197 fieinfo.fi_flags = fiemap.fm_flags; in ioctl_fiemap()
198 fieinfo.fi_extents_max = fiemap.fm_extent_count; in ioctl_fiemap()
201 if (fiemap.fm_extent_count != 0 && in ioctl_fiemap()
209 error = inode->i_op->fiemap(inode, &fieinfo, fiemap.fm_start, len); in ioctl_fiemap()
[all …]
/linux-4.4.14/Documentation/filesystems/
Dfiemap.txt5 The fiemap ioctl is an efficient method for userspace to get file
6 extent mappings. Instead of block-by-block mapping (such as bmap), fiemap
13 A fiemap request is encoded within struct fiemap:
15 struct fiemap {
42 fiemap interface to grow in the future but without losing
66 which userspace must allocate along with the fiemap structure. The
100 the file so that the process making fiemap calls can determine when no
177 File systems wishing to support fiemap must implement a ->fiemap callback on
178 their inode_operations structure. The fs ->fiemap call is responsible for
179 defining its set of supported fiemap flags, and calling a helper function on
[all …]
D00-INDEX66 fiemap.txt
67 - info on fiemap ioctl.
DLocking64 int (*fiemap)(struct inode *, struct fiemap_extent_info *, u64 start, u64 len);
96 fiemap: no
/linux-4.4.14/drivers/staging/lustre/lustre/lov/
Dlov_obd.c1594 static u64 fiemap_calc_fm_end_offset(struct ll_user_fiemap *fiemap, in fiemap_calc_fm_end_offset() argument
1598 u64 local_end = fiemap->fm_extents[0].fe_logical; in fiemap_calc_fm_end_offset()
1603 if (fiemap->fm_extent_count == 0 || in fiemap_calc_fm_end_offset()
1604 fiemap->fm_extents[0].fe_logical == 0) in fiemap_calc_fm_end_offset()
1614 if (oinfo->loi_ost_idx == fiemap->fm_extents[0].fe_device) { in fiemap_calc_fm_end_offset()
1691 static void fiemap_prepare_and_copy_exts(struct ll_user_fiemap *fiemap, in fiemap_prepare_and_copy_exts() argument
1705 to = (char *)fiemap + fiemap_count_to_size(current_extent); in fiemap_prepare_and_copy_exts()
1718 struct ll_user_fiemap *fiemap = val; in lov_fiemap() local
1738 if (fiemap_count_to_size(fm_key->fiemap.fm_extent_count) < buffer_size) in lov_fiemap()
1739 buffer_size = fiemap_count_to_size(fm_key->fiemap.fm_extent_count); in lov_fiemap()
[all …]
/linux-4.4.14/drivers/staging/lustre/lustre/llite/
Dfile.c1668 static int ll_do_fiemap(struct inode *inode, struct ll_user_fiemap *fiemap, in ll_do_fiemap() argument
1678 if (fiemap->fm_flags & ~LUSTRE_FIEMAP_FLAGS_COMPAT) { in ll_do_fiemap()
1679 fiemap->fm_flags &= ~LUSTRE_FIEMAP_FLAGS_COMPAT; in ll_do_fiemap()
1684 if (fiemap->fm_flags & FIEMAP_FLAG_SYNC) { in ll_do_fiemap()
1698 !(fiemap->fm_flags & FIEMAP_FLAG_DEVICE_ORDER)) { in ll_do_fiemap()
1716 fiemap->fm_mapped_extents = 0; in ll_do_fiemap()
1721 memcpy(&fm_key.fiemap, fiemap, sizeof(*fiemap)); in ll_do_fiemap()
1724 fiemap, lsm); in ll_do_fiemap()
3022 struct ll_user_fiemap *fiemap; in ll_fiemap() local
3025 num_bytes = sizeof(*fiemap) + (extent_count * in ll_fiemap()
[all …]
/linux-4.4.14/include/uapi/linux/
Dfiemap.h27 struct fiemap { struct
Dfs.h167 #define FS_IOC_FIEMAP _IOWR('f', 11, struct fiemap)
DKbuild126 header-y += fiemap.h
/linux-4.4.14/fs/ocfs2/
Dsymlink.c99 .fiemap = ocfs2_fiemap,
Dfile.c2594 .fiemap = ocfs2_fiemap,
Dnamei.c2920 .fiemap = ocfs2_fiemap,
/linux-4.4.14/fs/nilfs2/
Dfile.c162 .fiemap = nilfs_fiemap,
Dnamei.c561 .fiemap = nilfs_fiemap,
/linux-4.4.14/drivers/staging/lustre/lustre/ptlrpc/
Dpack_generic.c1835 void lustre_swab_fiemap(struct ll_user_fiemap *fiemap) in lustre_swab_fiemap() argument
1839 __swab64s(&fiemap->fm_start); in lustre_swab_fiemap()
1840 __swab64s(&fiemap->fm_length); in lustre_swab_fiemap()
1841 __swab32s(&fiemap->fm_flags); in lustre_swab_fiemap()
1842 __swab32s(&fiemap->fm_mapped_extents); in lustre_swab_fiemap()
1843 __swab32s(&fiemap->fm_extent_count); in lustre_swab_fiemap()
1844 __swab32s(&fiemap->fm_reserved); in lustre_swab_fiemap()
1846 for (i = 0; i < fiemap->fm_mapped_extents; i++) in lustre_swab_fiemap()
1847 lustre_swab_fiemap_extent(&fiemap->fm_extents[i]); in lustre_swab_fiemap()
Dwiretest.c3751 LASSERTF((int)offsetof(struct ll_fiemap_info_key, fiemap) == 216, "found %lld\n", in lustre_assert_wire_constants()
3752 (long long)(int)offsetof(struct ll_fiemap_info_key, fiemap)); in lustre_assert_wire_constants()
3753 LASSERTF((int)sizeof(((struct ll_fiemap_info_key *)0)->fiemap) == 32, "found %lld\n", in lustre_assert_wire_constants()
3754 (long long)(int)sizeof(((struct ll_fiemap_info_key *)0)->fiemap)); in lustre_assert_wire_constants()
/linux-4.4.14/fs/ext2/
Dfile.c204 .fiemap = ext2_fiemap,
/linux-4.4.14/drivers/staging/lustre/lustre/osc/
Dosc_request.c2743 if (!(fm_key->fiemap.fm_flags & FIEMAP_FLAG_SYNC)) in osc_get_info()
2746 policy.l_extent.start = fm_key->fiemap.fm_start & in osc_get_info()
2749 if (OBD_OBJECT_EOF - fm_key->fiemap.fm_length <= in osc_get_info()
2750 fm_key->fiemap.fm_start + PAGE_CACHE_SIZE - 1) in osc_get_info()
2753 policy.l_extent.end = (fm_key->fiemap.fm_start + in osc_get_info()
2754 fm_key->fiemap.fm_length + in osc_get_info()
/linux-4.4.14/fs/gfs2/
Dinode.c2105 .fiemap = gfs2_fiemap,
2127 .fiemap = gfs2_fiemap,
2144 .fiemap = gfs2_fiemap,
/linux-4.4.14/fs/ext4/
Dfile.c770 .fiemap = ext4_fiemap,
Dnamei.c3852 .fiemap = ext4_fiemap,
/linux-4.4.14/drivers/staging/lustre/lustre/include/lustre/
Dlustre_idl.h3324 struct ll_user_fiemap fiemap; member
3329 void lustre_swab_fiemap(struct ll_user_fiemap *fiemap);
/linux-4.4.14/fs/xfs/
Dxfs_iops.c1113 .fiemap = xfs_vn_fiemap,
/linux-4.4.14/fs/f2fs/
Dfile.c718 .fiemap = f2fs_fiemap,
/linux-4.4.14/include/linux/
Dfs.h1670 int (*fiemap)(struct inode *, struct fiemap_extent_info *, u64 start, member
/linux-4.4.14/fs/btrfs/
Dinode.c10105 .fiemap = btrfs_fiemap,