stable/btrfs: fix backport bug in d819d97ea025 ("btrfs: honor path->skip_locking...
authorStanislaw Gruszka <sgruszka@redhat.com>
Mon, 8 Jul 2019 12:01:34 +0000 (14:01 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 10 Jul 2019 07:54:43 +0000 (09:54 +0200)
Upstream commit 38e3eebff643 ("btrfs: honor path->skip_locking in
backref code") was incorrectly backported to 4.14.y . It misses removal
of two lines from original commit, what cause deadlock.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=203993
Reported-by: Olivier Mazouffre <olivier.mazouffre@ims-bordeaux.fr>
Fixes: d819d97ea025 ("btrfs: honor path->skip_locking in backref code")
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Reviewed-by: Nikolay Borisov <nborisov@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/btrfs/backref.c

index d826fbaf7d507022dd13904cce79a8c11b407793..e4d5e6eae409a89d6aa6e17ffa34f957ec1a344e 100644 (file)
@@ -1290,8 +1290,6 @@ again:
                                        ret = -EIO;
                                        goto out;
                                }
-                               btrfs_tree_read_lock(eb);
-                               btrfs_set_lock_blocking_rw(eb, BTRFS_READ_LOCK);
                                if (!path->skip_locking) {
                                        btrfs_tree_read_lock(eb);
                                        btrfs_set_lock_blocking_rw(eb, BTRFS_READ_LOCK);