summaryrefslogtreecommitdiffstats
path: root/drivers
Commit message (Collapse)AuthorAgeFilesLines
* [S390] hvc_iucv: Update function documentationHendrik Brueckner2009-01-091-101/+75
| | | | | | | Update documentation of functions. Signed-off-by: Hendrik Brueckner <brueckner@linux.vnet.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
* [S390] hvc_iucv: Limit rate of outgoing IUCV messagesHendrik Brueckner2009-01-091-37/+174
| | | | | | | | | | | This patch introduces a send buffer to limit outgoing IUCV messages up to a maximum of 25 IUCV messages per second. If no communication path to a IUCV HVC terminal exist, any data written to the terminal is discarded. Signed-off-by: Hendrik Brueckner <brueckner@linux.vnet.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
* [S390] hvc_iucv: Change IUCV term id and use one device as defaultHendrik Brueckner2009-01-091-3/+3
| | | | | | | | The patch renames the IUCV application ID from "ihvc" to "lnxhvc". The device driver allocates one IUCV terminal device (lnxhvc0) as default. Signed-off-by: Hendrik Brueckner <brueckner@linux.vnet.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
* [S390] qdio: fix broken pointer in case of CONFIG_DEBUG_FS is disabledJan Glauber2009-01-091-0/+2
| | | | | | | | | | | | If CONFIG_DEBUG_FS is disabled debugfs_create_file returns -ENODEV instead of zero. Since the return value is stored and used at shutdown to remove existing entries an OOPS may be triggered. Add a check of the debugfs_create_file return value and in case of an error set the entry to NULL so it will be ignored at shutdown. Signed-off-by: Jan Glauber <jang@linux.vnet.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
* [S390] dasd: add device attribute to disable blocking on lost pathsHolger Smolinski2009-01-094-3/+54
| | | | | | | | | | | | When the connection between host and storage server is lost, the dasd device driver usually blocks all I/O on affected devices and waits for them to reappear. In some setups however it would be better if the I/O is returned as error so that device can be recovered by some other means, eg. in a raid or multipath setup. Signed-off-by: Holger Smolinski <Holger.Smolinski@de.ibm.com> Signed-off-by: Stefan Weinhuber <wein@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
* [S390] dasd: send change uevents for dasd block devicesStefan Weinhuber2009-01-091-1/+20
| | | | | | | | | | | When a DASD device enters or leaves the 'online' state we need to trigger change events for the respective disk and partitions. These extra events are needed because when disk and partitions are first added, udev rules that try to read disk labels or other data may fail as the disk may not yet be ready. Signed-off-by: Stefan Weinhuber <wein@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
* [S390] tape block: fix dependenciesKamalesh Babulal2009-01-091-1/+1
| | | | | | | | | | | | CC drivers/s390/char/tape_block.o In file included from drivers/s390/char/tape_block.c:24: drivers/s390/char/tape.h:159: warning: 'struct request' declared inside parameter list Adding the dependency of CONFIG_BLOCK to CONFIG_S390_TAPE_BLOCK. Signed-off-by: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
* Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6Linus Torvalds2009-01-0859-836/+1816
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (45 commits) [SCSI] qla2xxx: Update version number to 8.03.00-k1. [SCSI] qla2xxx: Add ISP81XX support. [SCSI] qla2xxx: Use proper request/response queues with MQ instantiations. [SCSI] qla2xxx: Correct MQ-chain information retrieval during a firmware dump. [SCSI] qla2xxx: Collapse EFT/FCE copy procedures during a firmware dump. [SCSI] qla2xxx: Don't pollute kernel logs with ZIO/RIO status messages. [SCSI] qla2xxx: Don't fallback to interrupt-polling during re-initialization with MSI-X enabled. [SCSI] qla2xxx: Remove support for reading/writing HW-event-log. [SCSI] cxgb3i: add missing include [SCSI] scsi_lib: fix DID_RESET status problems [SCSI] fc transport: restore missing dev_loss_tmo callback to LLDD [SCSI] aha152x_cs: Fix regression that keeps driver from using shared interrupts [SCSI] sd: Correctly handle 6-byte commands with DIX [SCSI] sd: DIF: Fix tagging on platforms with signed char [SCSI] sd: DIF: Show app tag on error [SCSI] Fix error handling for DIF/DIX [SCSI] scsi_lib: don't decrement busy counters when inserting commands [SCSI] libsas: fix test for negative unsigned and typos [SCSI] a2091, gvp11: kill warn_unused_result warnings [SCSI] fusion: Move a dereference below a NULL test ... Fixed up trivial conflict due to moving the async part of sd_probe around in the async probes vs using dev_set_name() in naming.
| * [SCSI] qla2xxx: Update version number to 8.03.00-k1.Andrew Vasquez2009-01-071-3/+3
| | | | | | | | | | Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] qla2xxx: Add ISP81XX support.Andrew Vasquez2009-01-0713-109/+1234
| | | | | | | | | | | | | | Codes to support new FCoE boards. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] qla2xxx: Use proper request/response queues with MQ instantiations.Andrew Vasquez2009-01-076-13/+11
| | | | | | | | | | | | | | | | | | Original code would inadvertanly place I/Os on the default request-queue. Also, correctly pass in the proper MSI-X vector during response-queue initialization. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] qla2xxx: Correct MQ-chain information retrieval during a firmware dump.Andrew Vasquez2009-01-071-37/+40
| | | | | | | | | | | | | | | | | | Original code would not read request/response queue pointers. Also, collapse code into a helper qla25xx_copy_mq() function in preparation for newer ISP parts. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] qla2xxx: Collapse EFT/FCE copy procedures during a firmware dump.Andrew Vasquez2009-01-073-27/+53
| | | | | | | | | | | | | | In preparation for new ISP types with varying dump procedures. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] qla2xxx: Don't pollute kernel logs with ZIO/RIO status messages.Andrew Vasquez2009-01-071-4/+1
| | | | | | | | | | Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] qla2xxx: Don't fallback to interrupt-polling during re-initialization ↵Andrew Vasquez2009-01-074-3/+9
| | | | | | | | | | | | | | | | | | | | | | with MSI-X enabled. ROMs in recent ISPs have MSI-X support, so it's no longer necessary for the driver to fallback to interrupt polling during ISP re-initialization. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] qla2xxx: Remove support for reading/writing HW-event-log.Andrew Vasquez2009-01-077-186/+2
| | | | | | | | | | | | | | | | Software should not touch this region of flash, as the firmware will be the only writer and consumer of the region. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] cxgb3i: add missing includeAl Viro2009-01-071-0/+1
| | | | | | | | | | | | | | | | | | it needs scatterlist.h - indirect chain of includes doesn't work on a lot of targets. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Cc: Karen Xie <kxie@chelsio.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] scsi_lib: fix DID_RESET status problemsJames Bottomley2009-01-071-16/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Andrew Vaszquez said: > There's a problem that is causing commands returned by the LLD with > a DID_RESET status to be reissued with cleared cmd->sdb data which > in our tests are manifesting in firmware detected overruns. Here's > a snippet of a READ_10 scsi_cmnd upon completion by the storage The problem is caused by: commit b60af5b0adf0da24c673598c8d3fb4d4189a15ce Author: Alan Stern <stern@rowland.harvard.edu> Date: Mon Nov 3 15:56:47 2008 -0500 [SCSI] simplify scsi_io_completion() Because scsi_release_buffers() is called before commands that go through the ACTION_RETRY and ACTION_DELAYED_RETRY legs are requeued. However, they're not re-prepared, so nothing ever reallocates the buffer resources to them. Fix this by releasing the buffers only if we're not going to go down these legs (but scsi_release_buffers() on all legs including two in scsi_end_request(); this latter needs a special version __scsi_release_buffers() because the final one can be called after the request has been freed, so the bidi test in scsi_release_buffers(), which touches the request has to be skipped). Reported-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] fc transport: restore missing dev_loss_tmo callback to LLDDJames Smart2009-01-061-2/+19
| | | | | | | | | | | | | | | | | | | | | | When we reworked the transport for the rport lifetimes, in cases where the rport was reused as a container for tgt id bindings, we inadvertantly removed the callback to the driver indicating that dev_loss_tmo had fired. This patch restores that functionality. Signed-off-by: James Smart <james.smart@emulex.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] aha152x_cs: Fix regression that keeps driver from using shared interruptsLarry Finger2009-01-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | At some point since 2.6.22, the aha152x_cs driver stopped working and started erring on load with the following messages: kernel: pcmcia: request for exclusive IRQ could not be fulfilled. kernel: pcmcia: the driver needs updating to supported shared IRQ lines. With the following change, the driver works with shared IRQs. Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Cc: Stable <stable@kernel.org> [2.6.28], [2.6.27], [2.6.26] Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] sd: Correctly handle 6-byte commands with DIXMartin K. Petersen2009-01-051-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | DIF does not work with 6-byte commands so we previously ignored those commands when preparing a request. However, DIX does not need RDPROTECT/WRPROTECT to be set and 6-byte commands are consequently perfectly valid in host-only mode. This patch fixes a problem where we would set the wrong DIX operation when issuing commands to a legacy disk. Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Reviewed-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] sd: DIF: Fix tagging on platforms with signed charMartin K. Petersen2009-01-051-4/+4
| | | | | | | | | | | | | | | | | | Switch tag arrays to u8 to prevent problems on platforms with signed char. Reported-by: Tim LaBerge <tim.laberge@Quantum.Com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] sd: DIF: Show app tag on errorMartin K. Petersen2009-01-051-2/+3
| | | | | | | | | | | | | | Add application tag to the output displayed on error. Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] Fix error handling for DIF/DIXMartin K. Petersen2009-01-051-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | patch commit b60af5b0adf0da24c673598c8d3fb4d4189a15ce Author: Alan Stern <stern@rowland.harvard.edu> Date: Mon Nov 3 15:56:47 2008 -0500 [SCSI] simplify scsi_io_completion() broke DIX error handling. Also, we are now using EILSEQ to indicate integrity errors to the upper layers (as opposed to regular EIO failures). This allows filesystems to inspect buffers and decide whether to retry the I/O. Update scsi_io_completion() accordingly. Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] scsi_lib: don't decrement busy counters when inserting commandsJames Bottomley2009-01-051-22/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A bug was introduced by commit b60af5b0adf0da24c673598c8d3fb4d4189a15ce Author: Alan Stern <stern@rowland.harvard.edu> Date: Mon Nov 3 15:56:47 2008 -0500 [SCSI] simplify scsi_io_completion() because the simplification uses scsi_queue_insert(). The problem with this function is that it expects to be called from the completion path while the command is still outstanding, so it decrements the device and host busy counts to do the requeue. The problem is that scsi_io_completion() is a path executed well after these counts have *already* been decremented, leading to a double decrement if the command goes down any error path leading to ACTION_DELAYED_RETRY. The fix is to allow a private function __scsi_queue_insert() with a flag to say whether the busy counters should be decremented. This is made static to scsi_lib.c to discourage other use. Reported-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] libsas: fix test for negative unsigned and typosRoel Kluin2009-01-021-6/+6
| | | | | | | | | | | | | | unsigned req->data_len cannot be negative, and fix =-/-= typo Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] a2091, gvp11: kill warn_unused_result warningsGeert Uytterhoeven2009-01-022-8/+18
| | | | | | | | | | | | | | | | warning: ignoring return value of 'request_irq', declared with attribute warn_unused_result Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] fusion: Move a dereference below a NULL testJulia Lawall2009-01-021-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the NULL test is necessary, then the dereference should be moved below the NULL test. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/). // <smpl> @disable is_null@ identifier f; expression E; identifier fld; statement S; @@ + if (E == NULL) S f(...,E->fld,...); - if (E == NULL) S @@ identifier f; expression E; identifier fld; statement S; @@ + if (!E) S f(...,E->fld,...); - if (!E) S // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Acked-by: "Prakash, Sathya" <Sathya.Prakash@lsi.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] mvsas: increase port type detection delay to suit Seagate's 10k6 ↵Reinhard Nissl2009-01-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | drive ST3450856SS 0003 I increased the delay step by step until loading of mvsas reliably detected the drive 200 times in sequence. A much better approach would be to monitor the hardware for some flag which indicates that port detection has finished, but I do not have any hardware documentation. Signed-off-by: Reinhard Nissl <rnissl@gmx.de> Cc: Ke Wei <kewei@marvell.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] st: retry enlarge_buffer allocationKai Makisara2009-01-021-1/+10
| | | | | | | | | | | | | | | | | | Make enlarge_buffer() retry allocation if the previously chosen page order was too small. Really limit the page order to 6. Return error if the maximum order is not large enough for the request. Signed-off-by: Kai Makisara <Kai.Makisara@kolumbus.fi> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] st: integrate st_scsi_kern_execute and st_do_scsiKai Makisara2009-01-021-136/+66
| | | | | | | | | | | | | | | | | | This integrates st_scsi_kern_execute and st_do_scsi. IOW, it removes st_scsi_kern_execute. Then st has a single function, st_do_scsi, to perform SCSI commands. Signed-off-by: Kai Makisara <Kai.Makisara@kolumbus.fi> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] st: remove unused frp_sg_currentFUJITA Tomonori2009-01-022-3/+0
| | | | | | | | | | | | | | | | frp_sg_current in struct st_buffer is always zero. We don't need it. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Kai Makisara <Kai.Makisara@kolumbus.fi> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] st: remove unused orig_frp_segsFUJITA Tomonori2009-01-022-5/+3
| | | | | | | | | | | | | | | | orig_frp_segs in struct st_buffer is always zero. We don't need it. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Kai Makisara <Kai.Makisara@kolumbus.fi> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] st: simplify new_tape_bufferFUJITA Tomonori2009-01-021-15/+6
| | | | | | | | | | | | | | | | | | | | | | | | - remove the from_initialization argument, which is always 1. We always need to use GFP_ATOMIC. - 'got' valuable is initialized to zero and doesn't change. We don't need it. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Kai Makisara <Kai.Makisara@kolumbus.fi> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] st: remove struct scatterlistFUJITA Tomonori2009-01-022-7/+2
| | | | | | | | | | | | | | | | This removes the usage of struct scatterlist completely. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Kai Makisara <Kai.Makisara@kolumbus.fi> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] st: kill struct st_buff_fragmentFUJITA Tomonori2009-01-022-42/+43
| | | | | | | | | | | | | | | | | | This removes struct st_buff_fragment and use reserved_pages array to store fragment buffer. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Kai Makisara <Kai.Makisara@kolumbus.fi> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] st: remove buf_to_sgFUJITA Tomonori2009-01-021-29/+0
| | | | | | | | | | | | | | | | This removes unused buf_to_sg() that the non-dio path used. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Kai Makisara <Kai.Makisara@kolumbus.fi> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] st: convert dio path to use st_scsi_executeFUJITA Tomonori2009-01-022-53/+24
| | | | | | | | | | | | | | | | | | | | | | This patch converts the dio path (mmap) to use st_scsi_execute. IOW, it removes scsi_execute_async in the non dio path. scsi_execute_async has gone! This also remove unused st_sleep_done. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Kai Makisara <Kai.Makisara@kolumbus.fi> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] st: convert non-dio path to use st_scsi_executeFUJITA Tomonori2009-01-021-6/+21
| | | | | | | | | | | | | | | | | | | | This patch converts the non-dio path (fragment buffer path) to use st_scsi_execute. IOW, it removes scsi_execute_async in the non-dio path. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Kai Makisara <Kai.Makisara@kolumbus.fi> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] st: add st_scsi_execute helper functionFUJITA Tomonori2009-01-022-0/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | st_scsi_execute is a helper function to perform SCSI commands involving data transfer between user and kernel space (st_read and st_write). It's the future plan to combine this with st_scsi_kern_execute helper function. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Kai Makisara <Kai.Makisara@kolumbus.fi> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] st: add struct rq_map_data supportFUJITA Tomonori2009-01-022-0/+13
| | | | | | | | | | | | | | | | | | | | | | This adds struct rq_map_data and the array of pointers to store fragment buffers to struct st_buffer. This patch doesn't remove st_buf_fragment but the latter patch does. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Kai Makisara <Kai.Makisara@kolumbus.fi> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] st: make all the fragment buffers the same sizeFUJITA Tomonori2009-01-021-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | This patch simiplifies the fragment buffer management a bit, all the buffers in the fragment list become the same size. This is necessary to use the block layer API (sg driver was modified in the same way) since the block layer API takes the same size page frames instead of scatter gatter. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Kai Makisara <Kai.Makisara@kolumbus.fi> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] block: make blk_rq_map_user take a NULL user-space buffer for WRITEFUJITA Tomonori2009-01-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The commit 818827669d85b84241696ffef2de485db46b0b5e (block: make blk_rq_map_user take a NULL user-space buffer) extended blk_rq_map_user to accept a NULL user-space buffer with a READ command. It was necessary to convert sg to use the block layer mapping API. This patch extends blk_rq_map_user again for a WRITE command. It is necessary to convert st and osst drivers to use the block layer apping API. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Jens Axboe <jens.axboe@oracle.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] block: fix the partial mappings with struct rq_map_dataFUJITA Tomonori2009-01-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | This fixes bio_copy_user_iov to properly handle the partial mappings with struct rq_map_data (which only sg uses for now but st and osst will shortly). It adds the offset member to struct rq_map_data and changes blk_rq_map_user to update it so that bio_copy_user_iov can add an appropriate page frame via bio_add_pc_page(). Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Jens Axboe <jens.axboe@oracle.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] ibmvscsi: Make max_requests module parameter more accurateBrian King2009-01-021-6/+10
| | | | | | | | | | | | | | | | | | | | | | | | In a previous patch to fix an issue with error recovery, the behavior of the max_requests module paramater was also changed. If, for some reason, max_requests is set to one by the user, we will end up with a negative number for can_queue. Fix this by making max_requests not include the two event structs needed to do error recovery. Signed-off-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] lpfc: Move a dereference below a NULL testJulia Lawall2009-01-021-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In each case, if the NULL test is necessary, then the dereference should be moved below the NULL test. The semantic patch that makes this change is as follows: (http://www.emn.fr/x-info/coccinelle/) // <smpl> @@ type T; expression E; identifier i,fld; statement S; @@ - T i = E->fld; + T i; ... when != E when != i if (E == NULL) S + i = E->fld; // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Acked-by: James Smart <James.Smart@Emulex.Com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] sgiwd93: Fix compilation warningDmitri Vorobiev2009-01-021-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The remove() callback in platform drivers should return int in accordance to the definition of the platform_driver structure. However, the SGI-specific WD93 SCSI controller driver defines the callback as a void function, which causes the following compilation warning: drivers/scsi/sgiwd93.c:314: warning: initialization from incompatible pointer type This patch fixes the warning by changing the return type of the remove() callback to what the core driver code requires. Signed-off-by: Dmitri Vorobiev <dmitri.vorobiev@movial.fi> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] ibmvfc: Fixup command response translationBrian King2009-01-021-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | If a link down event is received, outstanding commands may get returned to the ibmvfc driver with a "transaction cancelled implicit" response. This is currently translated to DID_ABORT, which does not get retried by SCSI core, but rather passes the failure up the stack. This can result in I/O errors at the filesystem level. Fix up this response a well as a few other error responses. Signed-off-by: Brian King <brking@linux.vnet.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] Fix uninitialized variable error in scsi_io_completionAlan Stern2009-01-021-1/+5
| | | | | | | | | | | | | | | | | | This patch (as1191) adds a missing "default" case in scsi_io_completion(), thereby fixing an "uninitialized variable" error. It also adds a missing newline to a log entry. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
| * [SCSI] clean up scsi_times_outChristoph Hellwig2009-01-021-18/+6
| | | | | | | | | | | | | | Make sure the control flow in scsi_times_out makes sense. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
OpenPOWER on IntegriCloud