Btrfs: maintain subvolume items in the UUID tree
authorStefan Behrens <sbehrens@giantdisaster.de>
Thu, 15 Aug 2013 15:11:20 +0000 (17:11 +0200)
committerChris Mason <chris.mason@fusionio.com>
Sun, 1 Sep 2013 12:15:55 +0000 (08:15 -0400)
commitdd5f9615fc5c5e8d3751aab3a17b92768fb1ce70
tree9b7ad64c2761200e7713ee55e5d667e1b57d0e6b
parentf7a81ea4cc6bdb51d8267d2f3ff485f0b4070074
Btrfs: maintain subvolume items in the UUID tree

When a new subvolume or snapshot is created, a new UUID item is added
to the UUID tree. Such items are removed when the subvolume is deleted.
The ioctl to set the received subvolume UUID is also touched and will
now also add this received UUID into the UUID tree together with the
ID of the subvolume. The latter is also done when read-only snapshots
are created which inherit all the send/receive information from the
parent subvolume.

User mode programs use the BTRFS_IOC_TREE_SEARCH ioctl to search and
read in the UUID tree.

Signed-off-by: Stefan Behrens <sbehrens@giantdisaster.de>
Signed-off-by: Josef Bacik <jbacik@fusionio.com>
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
fs/btrfs/ctree.h
fs/btrfs/ioctl.c
fs/btrfs/transaction.c