Btrfs: check for an extent_op on the locked ref
authorJosef Bacik <jbacik@fb.com>
Thu, 27 Mar 2014 23:41:34 +0000 (19:41 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 27 Apr 2014 00:19:05 +0000 (17:19 -0700)
commit2891d0f1023283a2d931c91193ff3f3696be7780
treefd74ac91af0e4de938dd0b9fa302640fa8217955
parent50b51ee3114bfce0ab7cadead016f2801588f1ca
Btrfs: check for an extent_op on the locked ref

commit 573a075567f0174551e2fad2a3164afd2af788f2 upstream.

We could have possibly added an extent_op to the locked_ref while we dropped
locked_ref->lock, so check for this case as well and loop around.  Otherwise we
could lose flag updates which would lead to extent tree corruption.  Thanks,

Signed-off-by: Josef Bacik <jbacik@fb.com>
Signed-off-by: Chris Mason <clm@fb.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/btrfs/extent-tree.c