This function will be used in future patches and will aid in implementing ranged fiemap queries Signed-off-by: Nikolay Borisov <nborisov@xxxxxxxx> --- io/fiemap.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/io/fiemap.c b/io/fiemap.c index d1584aba7818..30c49112e089 100644 --- a/io/fiemap.c +++ b/io/fiemap.c @@ -193,6 +193,22 @@ calc_print_format( } } +/* Use ssize so that we can return also an error code in case the ioctl fails */ +static ssize_t +get_extent_count(int fd, __u64 startoffset, __u64 len) +{ + struct fiemap fiemap = { 0 } ; + fiemap.fm_start = startoffset; + fiemap.fm_length = len; + if (ioctl(fd, FS_IOC_FIEMAP, (unsigned long)&fiemap) < 0) { + fprintf(stderr, _("%s: Failed to query fiemap extent count.\n"), + progname); + return -1; + } + + return fiemap.fm_mapped_extents; +} + int fiemap_f( int argc, -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-xfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html