summaryrefslogtreecommitdiff
path: root/arch/mips/include
diff options
context:
space:
mode:
authorPhilipp Reisner <philipp.reisner@linbit.com>2014-04-28 20:43:12 +0400
committerJens Axboe <axboe@fb.com>2014-04-30 23:46:53 +0400
commit31007745a5f328b8d70d865c4a6118be01421b8c (patch)
treef3ac7edd14a10da7b11820bcf2be3639ac4d44cf /arch/mips/include
parentd1e714db8129a1d3670e449b87719c78e2c76f9f (diff)
downloadlinux-31007745a5f328b8d70d865c4a6118be01421b8c.tar.xz
drbd: Break a deadlock while concurrent fencing and establishing a connection
When we need to outdate the peer while being promoted to primary, and the connection gets established at the same time, we deadlock in drbd_try_outdate_peer() when trying to clear the susp_fen bit. Fix this by setting the STATE_SENT bit while holding the mutex. Using drbd_change_state(.. , CS_HARD, ..) which does not block until STATE_SENT is cleared, is only for clearness. It does not contribute anything to the fix. Signed-off-by: Philipp Reisner <philipp.reisner@linbit.com> Signed-off-by: Lars Ellenberg <lars.ellenberg@linbit.com> Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'arch/mips/include')
0 files changed, 0 insertions, 0 deletions