aboutsummaryrefslogtreecommitdiff
path: root/drivers/scsi
AgeCommit message (Collapse)AuthorFilesLines
2011-02-28[SCSI] lpfc: force retry in queuecommand when port is transitioningMike Christie1-1/+1
If the port takes a while to transition we could exhaust the retries when using DID_TRANSPORT_DISRUPTED. For this case we do not want to use any of the cmd's retries, because if the command was running then when it got failed the retry counter was already incremented. And if this is the first time we are seeing the command, (it got queued because it slipped through during the race) then it should not have its retries incremented. The fc class will decide the correct handling later. Signed-off-by: Mike Christie <[email protected]> Acked-by: James Smart <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-28dt/sparc: Eliminate users of of_platform_{,un}register_driverGrant Likely2-9/+13
Get rid of old users of of_platform_driver in arch/sparc. Most of_platform_driver users can be converted to use the platform_bus directly. Signed-off-by: Grant Likely <[email protected]>
2011-02-25[SCSI] qla2xxx: Update version number to 8.03.07.00Madhuranath Iyengar1-2/+2
We'll be using the new version number scheme from now on. The 'k' in the version in the past will be removed. The format will be: <major>.<minor>.<sub_minor>.<iter> A scsi-misc submission increments <sub_minor> and resets <iter>. An scsi-rc-fixes submission, increments <iter>. Signed-off-by: Madhuranath Iyengar <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-25[SCSI] qla2xxx: Check return value of fc_block_scsi_eh()Andrew Vasquez1-9/+20
The fc_block_scsi_eh() might return with status FAST_IO_FAIL indicating I/O has been terminated due to fast_io_fail timeout. In this case the rport is still blocked, so any error recovery will be failing on this port. Hence we need to check if the return value from fc_block_scsi_eh() is something other than 0, in which case it should just return with that status. Signed-off-by: Andrew Vasquez <[email protected]> Signed-off-by: Madhuranath Iyengar <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-25[SCSI] qla2xxx: The ISP82XX should be online while waiting for commands ↵Saurav Kashyap1-3/+16
completion. If adapter is not online, the driver will not process the response queue, even on getting an interrupt. Signed-off-by: Saurav Kashyap <[email protected]> Signed-off-by: Madhuranath Iyengar <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-25[SCSI] qla2xxx: Propagate block-layer tags on submitted I/Os.Andrew Vasquez2-2/+82
Signed-off-by: Andrew Vasquez <[email protected]> Signed-off-by: Madhuranath Iyengar <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-25[SCSI] qla2xxx: Adjust FCP_RSP response-info field check after TMF completion.Andrew Vasquez1-16/+13
Based on reading of the FCP2/4 specification, the driver cannot expect the storage device to send FCP_RSP information. Instead, the driver should interpret the data which is present in the frame to base decisions on the success or failure of the system. Signed-off-by: Andrew Vasquez <[email protected]> Signed-off-by: Madhuranath Iyengar <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-25[SCSI] qla2xxx: Clear any stale login-states during an adapter reset.Andrew Vasquez1-0/+17
By not clearing the 'login needed' nor 'login outstanding' states for an fcport after a big-hammer (adapter reset), the driver may not properly perform a PLOGI/PRLI sequence (and lose visibility to the rport) during a follow-on SNS scan. Signed-off-by: Andrew Vasquez <[email protected]> Signed-off-by: Madhuranath Iyengar <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-25[SCSI] qla2xxx: Pass right CT command string for CT status processing.Andrew Vasquez1-1/+1
Signed-off-by: Andrew Vasquez <[email protected]> Signed-off-by: Giridhar Malavali <[email protected]> Signed-off-by: Madhuranath Iyengar <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-25[SCSI] qla2xxx: Don't wait for active mailbox command completion when ↵Giridhar Malavali1-7/+7
firmware is hung. Signed-off-by: Giridhar Malavali <[email protected]> Signed-off-by: Madhuranath Iyengar <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-25[SCSI] qla2xxx: Abort pending commands for faster recovery during ISP reset.Giridhar Malavali6-61/+125
Signed-off-by: Giridhar Malavali <[email protected]> Signed-off-by: Madhuranath Iyengar <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-25[SCSI] qla2xxx: Display nport_id when any SNS command fails.Giridhar Malavali1-6/+13
Signed-off-by: Giridhar Malavali <[email protected]> Signed-off-by: Madhuranath Iyengar <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-25[SCSI] qla2xxx: Reinitialize the device initialize timeout value after reset ↵Giridhar Malavali1-0/+2
on ISP82xx. Signed-off-by: Giridhar Malavali <[email protected]> Signed-off-by: Madhuranath Iyengar <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-25[SCSI] qla2xxx: Fix array subscript is above array bounds in ↵Chad Dupuis1-1/+1
qla2xx_build_scsi_type_6_iocbs(). The additional increment of dsd_seg was causing the compiler to throw an array out of bounds warning. This patch moves to a direct assignment of cmd_pkt->fcp_data_dseg_len so that the compiler doesn't generate an array out bounds warning. Signed-off-by: Chad Dupuis <[email protected]> Signed-off-by: Madhuranath Iyengar <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-25[SCSI] qla2xxx: Remove host_lock in queuecommand functionMadhuranath Iyengar1-16/+6
Also in qla_os.c, rename the function, remove DEF_SCSI_QCMD, etc. Signed-off-by: Madhuranath Iyengar <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] be2iscsi: fix null ptr ref in conn get paramMike Christie3-16/+9
The ep_disconnect function could be freeing the ep while beiscsi_conn_get_param is running. This has the driver use the get ep param callback instead of the get conn param to fix this. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] bnx2i: fix null ptr ref in conn get paramMike Christie1-23/+22
bnx2i has some checks to try and make sure the ep is not destroyed while the addr/port is getting read. However, if after this check: if (!(bnx2i_conn && bnx2i_conn->ep && bnx2i_conn->ep->hba)) goto out; bnx2i_conn->ep is cleared by ep_disconnect then we will oops. This patches fixes the problem by having the driver use the get_ep_param callback instead of get_conn_param. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] cxgbi: convert to use iscsi_conn_get_addr_paramMike Christie4-22/+22
This has cxgbi use the iscsi_conn_get_addr_param helper and the get ep callback. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] iscsi class: add callout to get iscsi_endpoint valuesMike Christie1-2/+37
For drivers using the ep callbacks the addr and port are attached to the endpoint instead of the conn. This adds a callout to the iscsi_transport to get ep values. It also adds locking around the get param call to make sure that ep_disconnect does not free the LLD's ep interconnect structs from under us (the ep has a refcount so it will not go away but the LLD may have structs from other subsystems that are not allocated in the ep so we need to protect them from getting freed). Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] iscsi_tcp: use iscsi_conn_get_addr_param libiscsi functionMike Christie2-67/+71
This has iscsi_tcp use the iscsi_conn_get_addr_param libiscsi function. It also drops the use of the libiscsi session portal buffers, so they can be removed in the next patches. Instead of copying the values at bind time we get them during get() time. If we are not connected userspace will now get -ENOTCONN, so it knows that connection is disconnected instead of a possible stale value. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] libiscsi: add helper to convert addr to stringMike Christie1-3/+41
This adds a helper to convert a addr struct to a string. This will be used by the drivers in the next patches. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] iscsi class: remove unused active variableMike Christie1-2/+0
The active variable on the iscsi_cls_conn is not used so this patch removes it. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] iscsi: fix iscsi_endpoint leakMike Christie1-13/+50
When iscsid restarts it does not know the connection's endpoint, so it is getting leaked. This fixes the problem by having the iscsi class force a disconnect before a new connection is bound. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] cxgbi: enable TEXT PDU supportMike Christie2-2/+2
cxgb3i and cxgb4i support TEXT PDU offloading, so set the bits to enable it. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] bnx2i: Updated to version 2.6.2.3Eddie Wai1-2/+2
Signed-off-by: Eddie Wai <[email protected]> Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] bnx2i: Added iSCSI text pdu support for iSCSI offloadEddie Wai3-1/+123
This is part of an effort to support send target discovery via the iSCSI offload path. Signed-off-by: Eddie Wai <[email protected]> Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] bnx2i: Added jumbo MTU support for the no shost caseEddie Wai1-1/+1
For scenarios where the shost is not being passed to bnx2i for the iSCSI offload connection request, the code would consult the routing table to select the CNIC device. This code path will erroneously error out if the corresponding L2 interface's MTU has been setup to > 1500. Signed-off-by: Eddie Wai <[email protected]> Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] bnx2i: Added support for the 57712(E) devicesEddie Wai1-4/+6
Moved all PCI_DEVICE_ID_NX2_57712(E) definitions to pci_ids.h Signed-off-by: Eddie Wai <[email protected]> Acked-by: Michael Chan <[email protected]> Acked-by: Eilon Greenstein <[email protected]> Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] bnx2i: Added handling for unsupported iSCSI offload hbaEddie Wai1-0/+15
The hba will now be unregistered and freed when iSCSI offload is not supported by the NIC. Signed-off-by: Eddie Wai <[email protected]> Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] bnx2i: Fixed the 32-bit swapping of the LUN field for nopouts for 5771XEddie Wai1-3/+3
Fixed a bug where the 64-bit LUN field for nopouts were 32-bit swapped. This only pertains to 5771X devices. Signed-off-by: Eddie Wai <[email protected]> Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-24[SCSI] bnx2i: Allow ep CONNECT_FAILED condition to go through proper cleanupEddie Wai1-1/+1
Allow CNIC to go through the proper cleanup procedure for an endpoint which failed to connect. Proper cleanup is necessary for the chip to reset back to the initial state for the offloaded endpoint. Signed-off-by: Eddie Wai <[email protected]> Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-21Merge branch 'master' into for-2.6.39Tejun Heo10-106/+132
2011-02-18[SCSI] lpfc 8.3.21: Change lpfc driver version to 8.3.21James Smart1-2/+2
Signed-off-by: Alex Iannicelli <[email protected]> Signed-off-by: James Smart <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-18[SCSI] lpfc 8.3.21: Debugfs additionsJames Smart5-55/+972
- Add the driver debugfs framework for supporting debugfs read and write operations, and iDiag command structure. - Add read and write to SLI4 device PCI config space registers. - Add the driver support of debugfs PCI config space register bits set/clear methods to the provided bitmask. - Add iDiag driver support for SLI4 device queue diagnostic. Signed-off-by: Alex Iannicelli <[email protected]> Signed-off-by: James Smart <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-18[SCSI] lpfc 8.3.21: Initialization and user interface changesJames Smart7-37/+72
- Make link speed not supported by port message an error message. - Add support for new SLI failure codes add sysfs parameter to reflect the security setting and current state. - Add all lpfc module parameters to the /sys/modules/lpfc/parameters directory. [jejb: fix up compile failure] Signed-off-by: Alex Iannicelli <[email protected]> Signed-off-by: James Smart <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-18[SCSI] lpfc 8.3.21: FC Discovery changesJames Smart9-7/+219
FC Discovery changes - Treat received PLOGI while logged in as a relogin (unregister and reregister). - Added a timer to delay Nport discovery when clean bit is cleared and Fabric portname/nodename/FCID is changed. - Invalidate Port's DID when receiving PLOGI from p2p port with CONFIG_PORT mailbox command. Signed-off-by: Alex Iannicelli <[email protected]> Signed-off-by: James Smart <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-18[SCSI] lpfc 8.3.21: RRQ Implementation fixesJames Smart7-138/+205
RRQ Implementation fixes - Added checks to prevent a call to findnode_did in clr_active_rrq - Added the del_sync_timer call for the rrq_tmr to the stop_hba_timers routine. - Added a check in __lpfc_set_active_rrq for the driver unloading to prevent adding an rrq when the driver is being removed. - Add code to scsi_iocb_cmpl to check for the remote stop and add the rrq. - Added the same check to els retry. - Added code to compare the source did in the els rrq to the vports did and chose the right exchange ID. - Initialize the start_cmd pointer to indicate when we have looped through all of the scsi buffers. - Remove the need for the lock around the clearing of the active bit in the rrq. - Added code to clean the els and fcp xri aborted list and remove the all of the RRQs for a deleted vport. Signed-off-by: Alex Iannicelli <[email protected]> Signed-off-by: James Smart <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-18[SCSI] lpfc 8.3.21: Critical Errors and Bug FixesJames Smart12-56/+264
Critical Errors: - Correctly handle non-zero return lpfc_workq_post_event and return ENOMEM - Save the irq level when locking the host_lock in lpfc_findnode_did Bug Fixes: - Adjust payload_length and request_length for sli4_config mailbox commands. - Add the freed sgl/XRI to the tail of the list rather than to the head. - Set the FC_VPORT_NEEDS_INIT_VPI on vport deletes and check it before issuing a fdisc on an els retry. - Only call lpfc_hba_init_link() if phba->cfg_suppress_link_up is LPFC_INITIALIZE_LINK. - Add support for SLI-4 Performance Hints Signed-off-by: Alex Iannicelli <[email protected]> Signed-off-by: James Smart <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-18[SCSI] hpsa: fix bad comparisonDan Carpenter1-1/+1
'!' has higher precedence than '&'. CFGTBL_ChangeReq is 0x1 so the original code is equivelent to if (!doorbell_value) {... Signed-off-by: Dan Carpenter <[email protected]> Acked-by: Stephen M. Cameron <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-18[SCSI] hpsa: Do not attempt kdump if we detect resetting controller failed.Stephen M. Cameron1-3/+3
We can get completions left over from before the attempted reset which will interfere with the kdump. Better to just not make the attempt in that case. Signed-off-by: Stephen M. Cameron <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-18[SCSI] hpsa: Inform controller we are using 32-bit tags.Stephen M. Cameron2-11/+14
Controller will transfer only 32-bits on completion if it knows we are only using 32-bit tags. Also, some newer controllers apparently (and erroneously) require that we only use 32-bit tags, and that we inform the controller of this. Signed-off-by: Stephen M. Cameron <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-18[SCSI] hpsa: Add transport_mode host attribute in /sysStephen M. Cameron1-1/+17
Signed-off-by: Stephen M. Cameron <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-18[SCSI] hpsa: make hpsa.hpsa_simple_mode=1 module parameter actually workStephen M. Cameron2-14/+24
It's not enough to simple avoid putting the board into performant mode, as we have to set up the interrupts differently, etc. When I originally tested this module parameter, I tested it incorrectly without realizing it, and the driver was running in performant mode the whole time unbeknownst to me. Signed-off-by: Stephen M. Cameron <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-18[SCSI] hpsa: do not re-order commands in internal queuesStephen M. Cameron3-15/+14
Driver's internal queues should be FIFO, not LIFO. This is a port of an almost identical patch from cciss by Jens Axboe. Signed-off-by: Stephen M. Cameron <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-18[SCSI] ipr: Fix a race on multiple configuration changesKleber Sacilotto de Souza1-2/+5
In a multiple configuration change scenario a remove notification can be followed by an immediate add notification for the same device, which will cause the device to be removed but never added back. This patch fixes the problem by ensuring that in such situations the device will be added back. Signed-off-by: Kleber Sacilotto de Souza <[email protected]> Acked-by: Brian King <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-17drivers:scsi Change printk typo initate -> initiateJustin P. Mattock2-2/+2
Signed-off-by: Justin P. Mattock <[email protected]> Signed-off-by: Jiri Kosina <[email protected]>
2011-02-15[SCSI] qla2xxx: Return DID_NO_CONNECT when FC device is lost.Andrew Vasquez1-1/+0
If the target device gets lost, this fix is needed, as it causes negative unintended responses on basic I/O tests. If the target device gets lost, the upstream qla2xxx driver returns SCSI_MLQUEUE_TARGET_BUSY which causes an immediate retry without drop in the number of allowed retries. This semantic change, as a result of removing FC_DEVICE_LOST check is reasonable, as it only extends a short transitional period, until the transport is called to notify that the rport as lost (fc_remote_port_delete()). Once transport notification is done, fc_remote_port_chkready() check will take over. Signed-off-by: Andrew Vasquez <[email protected]> Signed-off-by: Madhuranath Iyengar <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2011-02-15Merge branch 'master' into for-nextJiri Kosina11-166/+168
2011-02-13[SCSI] libsas: convert to libata new error handlerJames Bottomley2-8/+93
The conversion is quite complex given that the libata new error handler has to be hooked into the current libsas timeout and error handling. The way this is done is to process all the failed commands via libsas first, but if they have no underlying sas task (and they're on a sata device) assume they are destined for the libata error handler and send them accordingly. Finally, activate the port recovery of the libata error handler for each port known to the host. This is somewhat suboptimal, since that port may not need recovering, but given the current architecture of the libata error handler, it's the only way; and the spurious activation is harmless. Signed-off-by: James Bottomley <[email protected]>
2011-02-12[SCSI] scsi_dh_rdac : Adding MODULE VERSION for rdac device handlerMoger, Babu1-0/+1
Adding MODULE_VERSION for scsi_dh_rdac. This will be helpful sometimes to get the code level without looking at the code. Signed-off-by: Babu Moger <[email protected]> Signed-off-by: James Bottomley <[email protected]>