Btrfs: Fix subvolume creation locking rules
authorChristoph Hellwig <hch@lst.de>
Thu, 9 Oct 2008 17:39:39 +0000 (13:39 -0400)
committerChris Mason <chris.mason@oracle.com>
Thu, 9 Oct 2008 17:39:39 +0000 (13:39 -0400)
commitcb8e70901d36f32017614f16d2cf7cc089544574
treebc31116dcb5bcdd6f2677a0c83b824e77c1ef097
parent833023e46c2a0180ff07d90252c24cb3fdea811d
Btrfs: Fix subvolume creation locking rules

Creating a subvolume is in many ways like a normal VFS ->mkdir, and we
really need to play with the VFS topology locking rules.  So instead of
just creating the snapshot on disk and then later getting rid of
confliting aliases do it correctly from the start.  This will become
especially important once we allow for subvolumes anywhere in the tree,
and not just below a hidden root.

Note that snapshots will need the same treatment, but do to the delay
in creating them we can't do it currently.  Chris promised to fix that
issue, so I'll wait on that.

Signed-off-by: Christoph Hellwig <hch@lst.de>
fs/btrfs/ctree.h
fs/btrfs/inode.c
fs/btrfs/ioctl.c