On 10/18/12 00:11, Dave Chinner wrote:
From: Dave Chinner<dchinner@xxxxxxxxxx> fiemap is used to map extents of used space on files. it's just an array of extents, though, so there's no reason it can only index *used* space. Ther eis need for getting freespace layout information into userspace. For example, defragmentation programs would find it useful to be able to map the free space in the filesystem to work out where it is best to move data to defragment it. Alternatively, knowing where free space is enables us to identify extents that need to be moved to defragment free space. Hence, extend fiemap with the FIEMAP_FLAG_FREESPACE to indicate that the caller wants to map free space in the range fm_start bytes from the start of the filesystem for fm_length bytes. Because XFS can report extents in size order without needing to sort, and this information is useful to xfs_fsr, also add FIEMAP_FLAG_FREESPACE_SIZE to tell the filesystem to return a freespace map ordered by extent size rather than offset. If there are multiple extents of the same size, then they are ordered by offset. Signed-off-by: Dave Chinner<dchinner@xxxxxxxxxx> ---
...
-------------- diff --git a/include/linux/fiemap.h b/include/linux/fiemap.h index d830747..f4fbb9f 100644 --- a/include/linux/fiemap.h +++ b/include/linux/fiemap.h
include/uabi/linux/fiemap.h ^^^^ other than that, it looks good. Reviewed-by: Mark Tinguely <tinguely@xxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html