From 521e0546c970c3d845076f243828fa7abd71edfc Mon Sep 17 00:00:00 2001 From: David Sterba Date: Tue, 15 Apr 2014 16:41:44 +0200 Subject: [PATCH] btrfs: protect snapshots from deleting during send The patch "Btrfs: fix protection between send and root deletion" (18f687d538449373c37c) does not actually prevent to delete the snapshot and just takes care during background cleaning, but this seems rather user unfriendly, this patch implements the idea presented in http://www.spinics.net/lists/linux-btrfs/msg30813.html - add an internal root_item flag to denote a dead root - check if the send_in_progress is set and refuse to delete, otherwise set the flag and proceed - check the flag in send similar to the btrfs_root_readonly checks, for all involved roots The root lookup in send via btrfs_read_fs_root_no_name will check if the root is really dead or not. If it is, ENOENT, aborted send. If it's alive, it's protected by send_in_progress, send can continue. CC: Miao Xie CC: Wang Shilong Signed-off-by: David Sterba Signed-off-by: Chris Mason --- Reading git-format-patch failed