Files
linux/drivers/scsi
Hiral Shah 6d02086227 fnic: Use the local variable instead of I/O flag to acquire io_req_lock in fnic_queuecommand() to avoid deadloack
commit db196935d9 upstream.

We added changes in fnic driver patch 1.6.0.16 to acquire
io_req_lock in fnic_queuecommand() before issuing I/O so that io completion
is serialized. But when releasing the lock we check for the I/O flag and
this could be modified if IO abort occurs before I/O completion. In this case
we wont release the lock and causes deadlock in some scenerios. Using the
local variable to check the IO lock status will resolve the problem.

Fixes: 41df7b02db
Signed-off-by: Hiral Shah <hishah@cisco.com>
Signed-off-by: Sesidhar Baddela <sebaddel@cisco.com>
Signed-off-by: Anil Chintalapati <achintal@cisco.com>
Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: James Bottomley <JBottomley@Odin.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2015-09-13 09:07:51 -07:00
..
2015-04-09 16:57:01 -07:00
2015-04-17 09:04:09 -04:00
2015-04-27 10:10:19 -07:00
2015-04-27 10:10:19 -07:00
2015-04-27 10:04:39 -07:00
2015-04-27 10:04:39 -07:00
2015-04-27 10:05:55 -07:00
2015-04-27 10:05:55 -07:00
2014-12-04 09:57:13 +01:00
2014-08-08 15:57:29 -07:00
2015-04-17 10:13:56 -07: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
2015-03-10 13:54:42 +10:30
2013-04-09 14:13:16 -04:00
2015-08-16 20:52:11 -07:00
2015-08-16 20:52:10 -07:00
2013-04-09 14:13:27 -04:00
2013-04-09 14:13:15 -04:00
2014-07-17 22:07:35 +02:00
2014-11-24 20:01:28 +01: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
2015-08-10 12:21:54 -07:00
2014-07-17 22:07:37 +02:00
2015-04-16 10:37:12 -07:00
2014-11-12 11:15:57 +01:00
2015-01-09 15:44:19 +01:00
2015-04-11 22:27:14 -04:00
2014-07-17 22:07:39 +02:00
2014-11-24 20:01:28 +01:00
2014-11-12 11:15:57 +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
2013-04-09 14:13:15 -04:00