Btrfs-progs: avoid using btrfs internal subvolume path to send
authorWang Shilong <wangsl.fnst@cn.fujitsu.com>
Fri, 29 Nov 2013 16:37:25 +0000 (00:37 +0800)
committerChris Mason <clm@fb.com>
Fri, 31 Jan 2014 16:22:12 +0000 (08:22 -0800)
commit8d68cb2bad0e8e7951811e0641188c447165141f
tree4814fd4523791470190e4ebb517ae8c3facb4f52
parentf053be8082194e30f4ecdb4ad9d5e7623aa41277
Btrfs-progs: avoid using btrfs internal subvolume path to send

Steps to reproduce:
# mkfs.btrfs -f /dev/sda
# mount /dev/sda /mnt
# btrfs subvolume create /mnt/foo
# umount /mnt
# mount -o subvol=foo /dev/sda /mnt
# btrfs sub snapshot -r /mnt /mnt/snap
# btrfs send /mnt/snap > /dev/null

We will fail to send '/mnt/snap',this is because btrfs send try to
open '/mnt/snap' by btrfs internal subvolume path 'foo/snap' rather
than relative path based on mounted point, this will return us 'no
such file or directory',this is not right, fix it.

Reported-by: Thomas Scheiblauer <tom@sharkbay.at>
Signed-off-by: Wang Shilong <wangsl.fnst@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
Signed-off-by: Chris Mason <clm@fb.com>
cmds-send.c