Laurence Oberman b9f85b1d32 qla2xxx: fix race in handling rport deletion during recovery causes panic
When we have an rport disconnect we race during rport deletion and
re-connection resulting in a panic.  When we do this, we call
fc_remote_port_del() just before we do the calls to re-establish the
session with the FC transport with fc_remote_port_add() and then
fc_remote_port_rolechg().

If we remove the call to fc_remote_port_del() before re-establishing
the connection this prevents the race.  This patch has resolved this
for multiple customers via test kernels.

Suggested by Chad Dupuis, implemented and tested by Laurence Oberman.

Signed-off-by: Laurence Oberman <loberman@redhat.com>
Acked-by: Chad Dupuis <chad.dupuis@qlogic.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
2014-12-15 13:34:23 +01:00
..
2014-11-20 09:11:10 +01:00
2014-12-04 09:58:33 +01:00
2014-12-04 09:58:33 +01:00
2014-08-26 09:35:54 +02:00
2014-12-04 09:57:13 +01:00
2014-08-08 15:57:29 -07:00
2014-12-04 09:58:33 +01:00
2014-11-24 16:13:18 +01:00
2014-11-12 11:16:11 +01:00
2014-07-17 22:07:38 +02:00
2014-11-20 09:11:11 +01:00
2014-07-17 22:07:37 +02:00
2014-11-20 09:11:10 +01:00
2014-11-20 09:11:10 +01:00
2014-11-24 16:13:16 +01:00
2014-11-20 09:11:10 +01:00
2013-04-09 14:13:16 -04:00
2013-04-09 14:13:16 -04:00
2013-04-09 14:13:16 -04:00
2013-04-09 14:13:16 -04:00
2014-07-17 22:07:37 +02:00
2014-12-04 09:55:46 +01:00
2014-11-12 11:32:00 +01:00
2013-04-09 14:13:27 -04:00
2014-08-08 15:57:29 -07:00
2013-04-09 14:13:15 -04:00
2014-07-17 22:07:35 +02:00
2014-11-20 09:11:10 +01:00
2014-10-07 21:29:18 -04:00
2014-11-20 09:11:10 +01:00
2014-11-20 09:11:10 +01:00
2013-04-09 14:13:17 -04:00
2014-07-25 17:16:55 -04:00
2014-12-04 09:58:33 +01:00
2014-04-10 15:30:35 -07:00
2014-07-17 22:07:37 +02:00
2014-07-17 22:07:37 +02:00
2014-11-12 11:19:14 +01:00
2014-11-12 11:15:57 +01:00
2014-11-12 11:16:11 +01:00
2014-07-17 22:07:39 +02:00
2014-11-12 11:16:11 +01:00
2014-11-12 11:15:57 +01:00
2014-11-12 11:16:12 +01:00
2012-09-14 17:59:29 +01:00
2014-11-20 09:11:15 +01:00
2014-11-20 09:11:10 +01:00
2014-11-20 09:11:10 +01:00
2014-07-17 22:07:37 +02:00
2013-04-09 14:13:15 -04:00
2014-11-27 16:40:16 +01:00