@@ -541,6 +541,30 @@ _filter_filefrag()
$flags, "\n"'
}
+# Clean up the extents list output of 'xfs_io -c fiemap', e.g.
+#
+# file:
+# 0: [0..79]: 628365312..628365391
+# 1: [80..159]: hole
+# 2: [160..319]: 628365472..628365631
+# =>
+# 0 79 628365312 628365391
+# 160 319 628365472 628365631
+#
+# The fields are:
+#
+# first_logical_block last_logical_block first_physical_block last_physical_block
+#
+# Blocks are 512 bytes, and holes are omitted.
+#
+_filter_xfs_io_fiemap()
+{
+ grep -E '^[[:space:]]+[0-9]+:' \
+ | grep -v '\<hole\>' \
+ | sed -E 's/^[[:space:]]+[0-9]+://' \
+ | tr '][.:' ' '
+}
+
# We generate WARNINGs on purpose when applications mix buffered/mmap IO with
# direct IO on the same file. This is a helper for _check_dmesg() to filter out
# such warnings.