Hi all, This is a RFC-quality pass at xfsprogs support for the reflink btree. As discussed in the kernel-side patches, reflink enables XFS to map multiple logical blocks to the same physical block. There is a single [block, refcount] btree to track the reference counts of extents of physical blocks. The xfs_db and xfs_metadump tools have been extended to deal with the reflink btree; xfs_repair now records all reverse mapping data for the purpose of checking and rebuilding the reflink btree (and some day will do likewise for the rmap btree). The patch set is based on the current (3.2.3+) for-next branch plus Dave's rmap RFC patches for rmap (i.e. the rmap-btree branch). The first patch wires up xfs_io to talk to the "XFS" reflink ioctls, which are of course the same ioctls that BTRFS uses. These commands will be used by the xfstests I've written to test reflink/CoW support. There are a couple of patches to fix up xfs_db's check functionality well enough to support blocktrash-type fuzzing. After that comes the libxfs port of the kernel rlbt declarations and modifications to the individual programs to support reflink. I've not had time to get reflink and rmap to work together; don't enable rmap and reflink at the same time! This is an extraordinary way to eat your data. Enjoy! Comments and questions are, as always, welcome. --D _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs