From: Andrew Vasquez <andrew.vasquez@qlogic.com>
Date: Thu, 22 Jan 2009 09:45:31 -0800
Subject: [PATCH] [SCSI] qla2xxx: Always serialize mailbox command execution.
Original code would incorrectly bypass serialization if the DPC
thread were performing a big-hammer operation (ISP abort). This
short circuit, though rare, would subsequently stomp on a
secondary thread's mailbox command execution. Found during
ISP81XX testing.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2583 d57e44dd-8a1f-0410-8b47-8ef2f437770f
From: Seokmann Ju <seokmann.ju@qlogic.com>
Date: Thu, 22 Jan 2009 09:45:38 -0800
Subject: [PATCH] [SCSI] qla2xxx: Add checks for a valid fcport in dev-loss-tmo/terminate_rport_io callbacks.
Commit f78badb1ae07e7f8b835ab2ea0b456ed3fc4caf4 ([SCSI] fc
transport: pre-emptively terminate i/o upon dev_loss_tmo timeout)
changed the callback semantics of dev_loss_tmo and
terminate_rport_io such that repeated calls could be made. This
could result in the the driver using stale (NULLed-out, in
dev_loss_tmo) data from the rport. Correct this by addint a
simple check to ensure a valid fcport is attached.
Signed-off-by: Seokmann Ju <seokmann.ju@qlogic.com>
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2582 d57e44dd-8a1f-0410-8b47-8ef2f437770f
with minor fixes.
Note: you need NPIV-supporting firmware as well as NPIV-supporting switches to use NPIV.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2408 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Multi-transport support added to scst_local
- Sysfs attributes "version" and "trace_level" added to scst_local
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2060 d57e44dd-8a1f-0410-8b47-8ef2f437770f
In case if ELS LOGO command received on the target port,
the firmware can notify the driver about it in 3 different ways,
which handled differently by the driver (it doesn't clear when it use each way):
1. Immediate notify of login-affecting ELS command received (status code 0x46).
The target driver terminate all commands received for the specified initiator
(N_Port handle).
2. Asynchroneus event of port update.
The target driver only print message, and in remark it's written that
/* .mark_all_devices_lost() is handled by the initiator driver */
3. Immediate notify of port logged out (status code 0x29).
The target driver terminate all commands received for the specified initiator
(N_Port handle), and also mark all devices as lost.
In 1 and 2 everthing is OK. In 3 the target driver mark all devices as lost,
but never retrigger rescanning.
There are 2 solutions:
1. Not marking the devices as lost base on written in the async event case, and
also base on the spec which says to only terminate all commands.
2. Mark all devices as lost and retrigger rescanning.
1 was implemented; delete all calls to mark_all_devices_lost() in qla2x00t.c, and
unexport symbol of this function in qla_os.c
Signed-off-by: Gal Rosen <galr@storwize.com>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1844 d57e44dd-8a1f-0410-8b47-8ef2f437770f
When double session is found in q2t_create_sess the session object is updated,
but after exiting from the function, if the session is not NULL the reference
counter is decrement, become zero and then the session is deleted.
As done while making a local session we need here to increment the reference
count by calling to q2t_sess_get, because at exiting we call to q2t_sess_put.
Signed-off-by: Gal Rosen <galr@storwize.com>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1798 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- ISCSI preliminary completed commands handling fixes
- Write residuals cleanups and fixes
- Interface to handle residuals and received from initiators data changed
- BIDI cleanups and fixes.
- All BIDI IN fields and functions renamed to OUT to be in line with the in-kernel convention
+
Docs updated
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1780 d57e44dd-8a1f-0410-8b47-8ef2f437770f