In traditional file systems such as ext3/ext4 when a snapshot (say with LVM2) is taken, all I/O are frozen and entire file system including meta dta is part of snapshot. Btrfs snapshot also managed by file system itself and btrfs snapshot is actually does a sub volume snapshot which makes a portion of logical entity can be made read only so that no I/Os happen to that tree. Since snapshot is at sub volume level, other metadata such as extent tree, chunk tree, super block etc.. will still in active state and I/Os can go on them will not get flushed to disk (which is not required for btrfs sub volume snapshot). Since btrfs is always consistent (With COW and check-sum), does it holds good if I copy blocks at disk level to another disk starting form 0 to end of disk ? My guess is NO. Or is there a way to freeze I/Os at btrfs level so that entire metadata is flushed to the disk ( all trees such as extent tree, chunk tree or what ever metadata of btrfs file system used at VFS layer) so that disk to disk copy can be triggered so that I will be having all sub volumes are copied to an alternate disk which I should be able to use on another machine or if the original disk is gone for toss. -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
