fstests: Introduce check for explicit SHARED extent flag reporting
authorQu Wenruo <quwenruo@cn.fujitsu.com>
Thu, 17 Nov 2016 02:06:48 +0000 (10:06 +0800)
committerEryu Guan <eguan@redhat.com>
Fri, 18 Nov 2016 08:41:06 +0000 (16:41 +0800)
commit083ff5827b603f2d646d20a20086fa55aa89b1c1
treeaaae4f18a02109fd45765a0599e0d035dad05f5a
parent21616145d29458fc017d0a1d71c6eff0d4a70e17
fstests: Introduce check for explicit SHARED extent flag reporting

For fs support reflink, some of them (OK, btrfs again) doesn't split
SHARED flag for extent fiemap reporting.

For example:
  0         4K         8K
   / File1: Extent 0  \
  /                    \
  |<- On disk Extent-->|
  |        /
  | File2 /
    Extent: 0

Fs supports explicit SHARED extent reporting should report fiemap like:
File1: 2 extents
Extent 0-4K: SHARED
Extent 4-8K:
File2: 1 extents
Extent 0-4K: SHARED

Fs doesn't support explicit reporting will report fiemap like:
File1: 1 extent
Extent 0-8K: SHARED
File2: 1 extent
Extent 0-4K: SHARED

Test case like generic/372 require explicit reporting will cause
false alert on btrfs.

Add such runtime check for that requirememt.

Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Reviewed-by: Eryu Guan <eguan@redhat.com>
Signed-off-by: Eryu Guan <eguan@redhat.com>
common/reflink
tests/generic/372