Philipp Reisner 31007745a5 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>
2014-04-30 13:46:53 -06:00
..
2014-03-04 07:55:47 -08:00
2014-04-07 16:36:02 -07:00
2013-04-09 14:13:19 -04:00
2011-08-08 11:40:15 +02:00
2014-03-13 14:56:38 -06:00
2014-01-30 16:56:55 -08:00
2013-06-29 12:46:45 +04:00
2014-01-30 16:56:55 -08:00
2014-04-01 23:19:10 -04:00
2014-01-03 10:05:34 +01:00
2013-11-08 09:10:30 -07:00
2009-03-26 21:15:27 +01:00