[SCSI] libiscsi: sync up iscsi and scsi eh's access to the connection
The iscsi eh could be tearing down the session/connection while the scsi eh is still sending task management functions. If when we drop the session lock to grab the recv lock, the iscsi eh tears down the connection we will oops. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
This commit is contained in:
committed by
James Bottomley
parent
96809f1b15
commit
6724add1b5
@@ -205,6 +205,13 @@ struct iscsi_queue {
|
||||
};
|
||||
|
||||
struct iscsi_session {
|
||||
/*
|
||||
* Syncs up the scsi eh thread with the iscsi eh thread when sending
|
||||
* task management functions. This must be taken before the session
|
||||
* and recv lock.
|
||||
*/
|
||||
struct mutex eh_mutex;
|
||||
|
||||
/* iSCSI session-wide sequencing */
|
||||
uint32_t cmdsn;
|
||||
uint32_t exp_cmdsn;
|
||||
|
||||
Reference in New Issue
Block a user