- 30 12月, 2008 40 次提交
-
-
由 Mike Christie 提交于
We do not need to allocate a itt for data_out, so this passes the opcode to the alloc_pdu callout. Signed-off-by: NMike Christie <michaelc@cs.wisc.edu> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Mike Christie 提交于
bnx2i and cxgb3i need to encode LLD info in the itt so that the firmware/hardware can process the pdu. This patch allows the LLDs to encode info in the task->hdr->itt that they setup in the alloc_pdu callout (any resources that are allocated can be freed with the pdu in the cleanup_task callout). If the LLD encodes info in the itt they should implement a parse_pdu_itt callout. If parse_pdu_itt is not implemented libiscsi will do the right thing for the LLD. Signed-off-by: NMike Christie <michaelc@cs.wisc.edu> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Mike Christie 提交于
This hooks iscsi_tcp into the libiscsi_tcp module and removes code that is now in libiscsi_tcp. Signed-off-by: NMike Christie <michaelc@cs.wisc.edu> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Mike Christie 提交于
As explained in the previous mails, cxgb3i needs iscsi_tcp's r2t/data_out and data_in procesing so this just moves functions that both drivers want to use to a new module libiscsi_tcp. The next patch will hook iscsi_tcp in. Signed-off-by: NMike Christie <michaelc@cs.wisc.edu> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Mike Christie 提交于
Add iscsi_tcp prefix to most functions. Some are not changed becuase they are going to move in the next patch. Signed-off-by: NMike Christie <michaelc@cs.wisc.edu> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Mike Christie 提交于
This modifies the login buffer allocation to use __get_free_pages. It will allow drivers that want to send this data with zero copy operations to easily line things up on page boundaries. Signed-off-by: NMike Christie <michaelc@cs.wisc.edu> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Mike Christie 提交于
libiscsi's iscsi_prep_data_out_pdu now handles what iscsi_tcp's helpers were so we can remove iscsi_tcp's helpers. Signed-off-by: NMike Christie <michaelc@cs.wisc.edu> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Mike Christie 提交于
This converts iscsi_tcp to the new api and modifies how it handles r2ts. Signed-off-by: NMike Christie <michaelc@cs.wisc.edu> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Mike Christie 提交于
This just converts iser to new alloc_pdu api. It still preallocates the pdu, so there is no difference. Signed-off-by: NMike Christie <michaelc@cs.wisc.edu> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Mike Christie 提交于
cxgb3i offloads data transfers. It does not offload the entire scsi/iscsi procssing like qla4xxx and it does not offload the iscsi sequence processing like how bnx2i does. cxgb3i relies on iscsi_tcp for the seqeunce handling so this changes how we transfer unsolicitied data by adding a common r2t struct and helpers. Signed-off-by: NMike Christie <michaelc@cs.wisc.edu> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Mike Christie 提交于
cxgb3i is unlike qla4xxx and bnx2i in that it does not offload entire scsi commands or iscsi sequences. Instead it only offloads the transfer of a ISCSI DATA_IN pdu's data, the digests and padding. This patch fixes up the iscsi tcp recv path so that it exports its skb recv processing so cxgb3i and other drivers can call them. All they have to do is pass the function the skb with the hdr or data pdu header and this function will do the rest. Signed-off-by: NMike Christie <michaelc@cs.wisc.edu> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 James Bottomley 提交于
by removing the unused timeout parameter we ensure a compile failure if anyone is accidentally still using it rather than the block timeout. Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 James Bottomley 提交于
Since we're trying to eliminate struct scsi_device timeout, the tape driver has to be updated to use the block queue timeout instead. The tape use of scsi_device timeout looks to be self consistent, so I don't think this necessarily fixes any bug, but it has to be done to allow me to remove the timeout parameter from struct scsi_device. Acked-by: NKai Makisara <Kai.Makisara@kolumbus.fi> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Finn Thain 提交于
On the Quadra 900 and 950 there are two ESP chips sharing one IRQ. Because the shared IRQ is edge-triggered, we must make sure that an IRQ transition from one chip doesn't go unnoticed when the shared IRQ is already active due to the other. This patch prevents interrupts getting lost so that both SCSI busses may be used simultaneously. Signed-off-by: NFinn Thain <fthain@telegraphics.com.au> Signed-off-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Finn Thain 提交于
Fix asm constraints and arguments so as not to transfer an odd byte when there may be more words to transfer. The bug would probably also cause exceptions sometimes by transferring one too many bytes. Signed-off-by: NFinn Thain <fthain@telegraphics.com.au> Signed-off-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Anirban Chakraborty 提交于
The following patch changes the handling of bus reset when issued from a vport. In the bus reset code, an extra check is made to make sure that the lip reset is not done before resetting the targets if the bus reset came from a vport. Signed-off-by: NAnirban Chakraborty <anirban.chakraborty@qlogic.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Alan Stern 提交于
This patch (as1142b) consolidates a lot of repetitious code in scsi_io_completion(). It also fixes a few comments. Most importantly, however, it clearly distinguishes among the three sorts of retries that can be done when a command fails to complete: Unprepare the request and resubmit it, so that a new command will be created for it. Requeue the request directly so that it will be retried immediately using the same command. Requeue the request so that it will be retried following a short delay. Complete the remainder of the request with an I/O error. [jejb: Updates 1. For several error conditions, we would now print the sense twice in slightly different ways, so unify the location of sense printing. 2. I added more descriptions to actual failure conditions for better debugging 3. according to spec, ABORTED_COMMAND is supposed to be retried (except on DIF failure). Our old behaviour of erroring it looks to be a bug. 4. I'd prefer not to default initialise the action variable because that ensures that every leg of the error handler has an associated action and the compiler will warn if someone later accidentally misses one or removes one. ] Signed-off-by: NAlan Stern <stern@rowland.harvard.edu> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Brian King 提交于
Bump driver version Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Brian King 提交于
The virtual fibre channel stack can return a failure response for a command indicating the port login has been invalidated without sending the client an async event. Add code to handle this response and initiate a PLOGI. Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Brian King 提交于
The CRQs used by the ibmvfc driver are read and written by both the client and the server. Therefore, we need to mark them volatile so that we do not cache their contents when handling an interrupt. This fixes a problem which can surface as occasional command timeouts. No commands were actually timing out, but due to accessing cached data for the CRQ in the interrupt handler, the interrupt was not processing all command completions as it should. Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Brian King 提交于
Fixes an oops that can occur in the interrupt handler if we get a lot of async events. Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Babu Moger 提交于
[jejb: fixed whitespace damage] Signed-off-by: NBabu Moger <Babu.Moger@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Julia Lawall 提交于
ARRAY_SIZE is more concise to use when the size of an array is divided by the size of its type or the size of its first element. Signed-off-by: NJulia Lawall <julia@diku.dk> Acked-by: N"Prakash, Sathya" <Sathya.Prakash@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Randy Dunlap 提交于
Remove excess kernel-doc function parameter notation: Warning(drivers/message/fusion/mptbase.c:964): Excess function parameter or struct member 'handle' description in 'mpt_free_msg_frame' Warning(drivers/message/fusion/mptbase.c:5434): Excess function parameter or struct member 'portnum' description in 'mpt_findImVolumes' Warning(drivers/message/fusion/mptbase.c:6949): Excess function parameter or struct member 'mr' description in 'mpt_spi_log_info' Signed-off-by: NRandy Dunlap <randy.dunlap@oracle.com> cc: Eric.Moore@lsi.com Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Anirban Chakraborty 提交于
drivers/scsi/qla2xxx/qla_os.c: In function 'qla2x00_probe_one': drivers/scsi/qla2xxx/qla_os.c:1582: warning: 'mem_only' is used uninitialized in this function Reported-by: NStephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: NAnirban Chakraborty <anirban.chakraborty@qlogic.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Anirban Chakraborty 提交于
Following changes have been made: 1. Outstanding commands are based on a request queue, scsi_qla_host does not maintain it anymore. 2. start_scsi is accessed via isp_ops struct instead of direct invocation. 3. Interrupt registrations are done using response queue instead of device id. Signed-off-by: NAnirban Chakraborty <anirban.chakraborty@qlogic.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Anirban Chakraborty 提交于
Following changes have been made to the qla2xxx FC driver in preparation for the multi- queue and future SR IOV hardware. 1. scsi_qla_host structure has been changed to contain scsi host specific data only. 2. A new structure, qla_hw_data is created to contain HBA specific hardware data. 3. Request and response IO specific data strucures are created. 4. The global list of fcports for the hba is not maintained anymore, instead a fcport list is construted on per scsi_qla_host. Signed-of-by: NAnirban Chakraborty <anirban.chakraborty@qlogic.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Vladislav Bolkhovitin 提交于
This patch improves handling of TASK ABORTED status by Linux SCSI mid-layer. Currently, command returned with this status considered failed and returned to upper layers. It leads to additional error recovery load on file systems and block layer, which sometimes can cause undesired side effects, like I/O errors and file systems corruptions. See http://lkml.org/lkml/2008/11/1/38, for instance. From other side, TASK ABORTED status is returned by SCSI target if the corresponding command was aborted by another initiator and the target has TAS bit set in the control mode page. So, in the majority of cases commands with TASK ABORTED status should be simply retried. In other cases, maybe_retry path will not retry if no retries are allowed. This patch implement suggestion by James Bottomley from http://marc.info/?l=linux-scsi&m=121932916906009&w=2. Signed-off-by: NVladislav Bolkhovitin <vst@vlnb.net> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Chandra Seetharaman 提交于
When the mode select sent to the controller fails with the retryable error, it is better to retry the mode_select from the hardware handler itself, instead of propagating the failure to dm-multipath. Signed-off-by: NChandra Seetharaman <sekharan@us.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Chandra Seetharaman 提交于
[SCSI] scsi_dh: Make sure the state of a path is set properly when controller is swapped from passive to active When the controller ownership is changed (from passive to active), check_ownership() doesn't set the state of the device to ACTIVE. Signed-off-by: NChandra Seetharaman <sekharan@us.ibm.com> Reported-by: N"Moger, Babu" <Babu.Moger@lsi.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Ilpo Järvinen 提交于
...and the list of recent breakage goes on and on, this time it's 242f9dcb (block: unify request timeout handling) which broke it. Signed-off-by: NIlpo Järvinen <ilpo.jarvinen@helsinki.fi> Acked-by: NJens Axboe <jens.axboe@oracle.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Ilpo Järvinen 提交于
Lucky winner is 557cc476 ([SCSI] tmscsim: Fixup KERN_INFO in printk). Signed-off-by: NIlpo Järvinen <ilpo.jarvinen@helsinki.fi> Acked-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 roel kluin 提交于
When unsigned, scsi_dma_map may return -ENOMEM without triggering BUG_ON() Signed-off-by: NRoel Kluin <roel.kluin@gmail.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Julia Lawall 提交于
Use the macro DIV_ROUND_UP and eliminate the variable rounded_up, as suggested by Matthew Wilcox. Signed-off-by: NJulia Lawall <julia@diku.dk> Cc: David Miller <davem@davemloft.net> Reviewed-by: NMatthew Wilcox <willy@linux.intel.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Brian King 提交于
Bump driver version. Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Brian King 提交于
Stops gcc from complaining about a possible uninitialized variable being used in ibmvfc_reset_device. Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Brian King 提交于
If the ibmvfc driver is in discovery attempting to log into a target and it encounters an error, the command may get retried one or more times, depending on the error received. If the retries are unsuccessful such that the discovery thread gives up on discovery to that target, the target ends up in a state where, if SCSI core had previously known about the device, the host will get unblocked but the host will not be logged into the target, causing any commands sent to the target to fail. This patch fixes this so that if this occurs, the target is deleted such that the normal dev_loss processing can occur instead. Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Brian King 提交于
Due to an ambiguity in the VIOS VFC interface specification, abort/cancel handling is not done correctly and can result in double completion of commands. In order to cancel all outstanding commands to a device, a cancel must be sent, followed by an abort task set. After the responses are received for these commands, there may still be commands outstanding, in the process of getting flushed back, in which case, we need to wait for them. This patch removes the assumption that if the abort and the cancel both complete successfully that the device queue has been flushed and waits for all the responses to come back. Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Brian King 提交于
If either a "transport fault" or a "general transport" error is received and no other error information is available, the command is improperly returned as successful. Fix this to return DID_ERROR in this case. Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-
由 Brian King 提交于
The ibmvfc log level filtering logic was reversed. The log_level scsi host parameter should result in more verbose logs when log_level is larger, not smaller. Signed-off-by: NBrian King <brking@linux.vnet.ibm.com> Signed-off-by: NJames Bottomley <James.Bottomley@HansenPartnership.com>
-