]> git.baikalelectronics.ru Git - kernel.git/commit
btrfs: don't double lock the subvol_sem for rename exchange
authorJosef Bacik <josef@toxicpanda.com>
Tue, 19 Nov 2019 18:59:20 +0000 (13:59 -0500)
committerDavid Sterba <dsterba@suse.com>
Fri, 13 Dec 2019 13:09:23 +0000 (14:09 +0100)
commit57d778e8f121d549bb0f286f20da94263606b733
treea649d2de74efae956436897461ba66cbf0ed3557
parent9e956228167665fa4d2de94c883fe7f59e7efca0
btrfs: don't double lock the subvol_sem for rename exchange

If we're rename exchanging two subvols we'll try to lock this lock
twice, which is bad.  Just lock once if either of the ino's are subvols.

Fixes: 94a7decc5ae6 ("btrfs: add support for RENAME_EXCHANGE and RENAME_WHITEOUT")
CC: stable@vger.kernel.org # 4.4+
Signed-off-by: Josef Bacik <josef@toxicpanda.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/inode.c