summaryrefslogtreecommitdiff
path: root/fs/btrfs/extent_io.h
diff options
context:
space:
mode:
authorChris Mason <clm@fb.com>2014-06-20 01:16:52 +0400
committerChris Mason <clm@fb.com>2014-06-20 01:19:55 +0400
commitea4ebde02e08558b020c4b61bb9a4c0fcf63028e (patch)
tree11b920acf6dbd78624112a675bff5d06fb4ad6d5 /fs/btrfs/extent_io.h
parent47a306a74842248dcd537b85f9a36c7b156c59a9 (diff)
downloadlinux-ea4ebde02e08558b020c4b61bb9a4c0fcf63028e.tar.xz
Btrfs: fix deadlocks with trylock on tree nodes
The Btrfs tree trylock function is poorly named. It always takes the spinlock and backs off if the blocking lock is held. This can lead to surprising lockups because people expect it to really be a trylock. This commit makes it a pure trylock, both for the spinlock and the blocking lock. It also reworks the nested lock handling slightly to avoid taking the read lock while a spinning write lock might be held. Signed-off-by: Chris Mason <clm@fb.com>
Diffstat (limited to 'fs/btrfs/extent_io.h')
0 files changed, 0 insertions, 0 deletions