aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi
Commit message (Collapse)AuthorAge
* [SCSI] sym53c8xx: Use scmd_printk where appropriateMatthew Wilcox2007-10-23
| | | | | | | | If we have a scsi_cmnd, it gives the user more information than the sym_name, and maybe the target. Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] sym53c8xx: Simplify DAC DMA handlingMatthew Wilcox2007-10-23
| | | | | | | | | | | By introducing the use_dac(), set_dac() and DMA_DAC_MASK macros, we can eliminate a lot of ifdefs from the code. We now rely on the compiler to optimise away a few things that we'd formerly relied on the preprocessor to do. This makes sym_setup_bus_dma_mask() small enough to inline into its only caller. Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] sym53c8xx: Remove tag_ctrl module parameterMatthew Wilcox2007-10-23
| | | | | | | | | With sysfs making these options tunable at runtime, there's no justification for keeping this horrendously complex specification string around. Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] sym53c8xx: Remove io_ws, mmio_ws and ram_ws elementsMatthew Wilcox2007-10-23
| | | | | | | These struct elements record info that is never needed Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] sym53c8xx: Remove ->device_idMatthew Wilcox2007-10-23
| | | | | | | Following the same path as ->revision_id, remove ->device_id Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] sym53c8xx: Use pdev->revisionMatthew Wilcox2007-10-23
| | | | | | | Auke missed the sym2 driver in his initial sweep. Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] sym53c8xx: PCI Error Recovery supportLinas Vepstas2007-10-23
| | | | | | | | | | | | | | This patch adds the PCI error recovery callbacks to the Symbios SCSI device driver. It includes support for First Failure Data Capture. Signed-off-by: Linas Vepstas <linas@austin.ibm.com> Assorted changes to initial patches, including returning IRQ_NONE from the interrupt handler if the device is offline and re-using the eh_done completion in the scsi error handler. Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] sym53c8xx: Stop overriding scsi_doneMatthew Wilcox2007-10-23
| | | | | | | | | | Instead of telling the reset routine that the command completed from sym_eh_done, do it from sym_xpt_done. The 'to_do' element of the ucmd is redundant -- it serves only to tell whether eh_done is valid or not, and we can tell this by checking to see if it's NULL. Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] sym53c8xx: Don't disable interrupts in the interrupt handlerMatthew Wilcox2007-10-23
| | | | | | | | Interrupts can't be re-entered, so it's sufficient to call spin_lock, not spin_lock_irqsave(). Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] sym53c8xx: Remove unnecessary check in queuecommandMatthew Wilcox2007-10-23
| | | | | | | | The midlayer won't scan the host ID, so we don't need to check. This is the only caller of sym_xpt_done2, so remove that too. Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] sym53c8xx: Remove data_mapping and data_mappedMatthew Wilcox2007-10-23
| | | | | | | | | | | Before all commands used sg, data_mapping and data_mapped were used to distinguish whether the command had used map_single or map_sg. Now all commands are sg, so we can delete data_mapping, data_mapped and the wrapper functions __unmap_scsi_data, __map_scsi_sg_data, unmap_scsi_data and map_scsi_sg_data. Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] sym53c8xx: Use pci_dev irq numberMatthew Wilcox2007-10-23
| | | | | | | Don't cache a private copy of the interrupt number Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] sym53c8xx: Work around 53c896 erratumKai Makisara2007-10-23
| | | | | | | Prevent DMA transfers from crossing the 16MB limit for early 53c896 chips. Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla1280: eliminate wasted space in request and response ringJohannes Dickgreber2007-10-23
| | | | | | | | | | | | i think there is wasted space in allocated pages for request and response rings. The allocations are made with REQUEST_ENTRY_CNT + 1 and RESPONSE_ENTRY_CNT + 1, but they are set with 256 and 16. So we got more pages, which we dont use very much so eliminate them. Signed-off-by: Johannes Dickgreber <tanzy@gmx.de> Acked-by: Jes Sorensen <jes@sgi.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] aic7xxx: Fix firmware buildHannes Reinecke2007-10-21
| | | | | | | If a prefix is selected for flex, we should be using it everywhere. Signed-off-by: Hannes Reinecke <hare@suse.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] aic7xxx: Update Maintainer informationHannes Reinecke2007-10-21
| | | | | | | Might as well take the blame officially. Signed-off-by: Hannes Reinecke <hare@suse.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] aic7xxx: Add suspend/resume supportHannes Reinecke2007-10-21
| | | | | | | | | | The aic7xxx driver already contains fragments for suspend/resume support. So we only need to update them to the current interface and have full PCI suspend/resume. Signed-off-by: Hannes Reinecke <hare@suse.de> Tested-by: Jens Axboe <jens.axboe@oracle.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla1280: uses wrong failure path after failed pci_set_dma_maskJohannes Dickgreber2007-10-21
| | | | | | | | | A failure here wouldn't currently free the irq; go to the irq free path instead. Signed-off-by: Johannes Dickgreber <tanzy@gmx.de> Acked-by: Jes Sorensen <jes@sgi.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] gdth: __init fixesAdrian Bunk2007-10-18
| | | | | | | | | | This patch fixes the following build warnings: WARNING: vmlinux.o(.text+0xbcffdb): Section mismatch: reference to .init.text.20:gdth_search_drives (between 'gdth_pci_probe_one' and 'gdth_start_timeout') WARNING: vmlinux.o(.text+0xbd0102): Section mismatch: reference to .init.text.20:gdth_enable_int (between 'gdth_pci_probe_one' and 'gdth_start_timeout') Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] aic7xxx_old: fix accidental logic reversalAdrian Bunk2007-10-18
| | | | | | | | | | Commit bbfbbbc1182f8b44c8cc4c99f4a3f3a512149022 accidentally reversed the logic of this NULL check. Spotted by the Coverity checker. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] qla2xxx: printk fixesAndrew Morton2007-10-18
| | | | | | | | | | | drivers/scsi/qla2xxx/qla_sup.c: In function 'qla24xx_write_flash_data': drivers/scsi/qla2xxx/qla_sup.c:655: warning: format '%llx' expects type 'long long unsigned int', but argument 6 has type 'dma_addr_t' drivers/scsi/qla2xxx/qla_sup.c: In function 'qla25xx_read_optrom_data': drivers/scsi/qla2xxx/qla_sup.c:1853: warning: format '%llx' expects type 'long long unsigned int', but argument 6 has type 'dma_addr_t' Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Acked-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] lpfc: lpfc_debugfs.c: fix typoAdrian Bunk2007-10-18
| | | | | | | | | | | This patch fixes a typo introduced by commit bbfbbbc1182f8b44c8cc4c99f4a3f3a512149022. It wasn't a compile error since CONFIG_LPFC_DEBUG_FS is not (yet?) available as an option. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] initio: Fix merge falloutAlan Cox2007-10-17
| | | | | | | | | | Fix IRQ reporting - just assign the ->pci_dev pointer earlier and use the pci_dev irq field rather than keeping a private one Init the spinlock as it works better on SMP that way Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] hptiop: avoid buffer overflow when returning sense dataHighPoint Linux Team2007-10-17
| | | | | | | | | The newer firmware may return more than 96 bytes of sense data when it does autosense. Truncate this to the size of the SCSI layer sense buffer to avoid an overrun. Signed-off-by: HighPoint Linux Team <linux@highpoint-tech.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] make supported_mode default to initiator.James Bottomley2007-10-17
| | | | | | | | if shost->supported mode is zero (i.e. MODE_UNKNOWN) show it as initiator (it's obviously an unconverted driver that won't do target). Acked-by: FUJITA Tomonori <tomof@acm.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] include linux/scatterlist.h in scsi_eh.hJames Bottomley2007-10-17
| | | | | | | | | | | | Spotted by Paul Jackson <pj@sgi.com> The error handler rework moved the scatterlist into a globally exposed structure in scsi_eh.h; unfortunately, the scatterlist include needs to move from scsi_error.c to scsi_eh.h to allow this to compile universally. Acked-by: Paul Jackson <pj@sgi.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] fc4: remove this and all associated driversMatthew Wilcox2007-10-17
| | | | | | | | | | | | This code has been slowly rotting for about eight years. It's currently impeding a few SCSI cleanups, and nobody seems to have hardware to test it any more. I talked to Dave Miller about it, and he agrees we can delete it. If anyone wants a software FC stack in future, they can retrieve this driver from git. Signed-off-by: Matthew Wilcox <matthew@wil.cx> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* Revert "[SCSI] Remove full sg table memset()"Jens Axboe2007-10-17
| | | | | | | | A bit too eager - we definitely need to clear the sg table initially, so that we don't accidentally have ->page & 0x01 true and think that is a chain pointer. This reverts commit f5c0dde4c66421a3a2d7d6fa604a712c9b0744e5.
* [SCSI] Remove full sg table memset()FUJITA Tomonori2007-10-17
| | | | | | | We don't need to do that anymore, since blk_rq_map_sg() clears individual entries. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
* [SCSI] ide-scsi: remove usage of sg_last()Jens Axboe2007-10-17
| | | | | | | | We want to remove sg_last(), it's a very expensive interface. So keep track of number of sg entries in the sg list, instead of comparing with the last entry. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
* [SCSI] ide-scsi: use scsi_sg_count() instead of ->use_sgBoaz Harrosh2007-10-17
| | | | Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
* Merge branch 'for-linus' of git://git.kernel.dk/data/git/linux-2.6-blockLinus Torvalds2007-10-16
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'for-linus' of git://git.kernel.dk/data/git/linux-2.6-block: (63 commits) Fix memory leak in dm-crypt SPARC64: sg chaining support SPARC: sg chaining support PPC: sg chaining support PS3: sg chaining support IA64: sg chaining support x86-64: enable sg chaining x86-64: update pci-gart iommu to sg helpers x86-64: update nommu to sg helpers x86-64: update calgary iommu to sg helpers swiotlb: sg chaining support i386: enable sg chaining i386 dma_map_sg: convert to using sg helpers mmc: need to zero sglist on init Panic in blk_rq_map_sg() from CCISS driver remove sglist_len remove blk_queue_max_phys_segments in libata revert sg segment size ifdefs Fixup u14-34f ENABLE_SG_CHAINING qla1280: enable use_sg_chaining option ...
| * remove sglist_lenFUJITA Tomonori2007-10-16
| | | | | | | | | | Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * revert sg segment size ifdefsFUJITA Tomonori2007-10-16
| | | | | | | | | | | | | | | | This reverts sg segment size ifdefs that the current code has in order to provide a way to reduce sgpool memory consumption. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * Fixup u14-34f ENABLE_SG_CHAININGAndrew Morton2007-10-16
| | | | | | | | | | Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * qla1280: enable use_sg_chaining optionFUJITA Tomonori2007-10-16
| | | | | | | | | | Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * [SCSI] add use_sg_chaining option to scsi_host_templateFUJITA Tomonori2007-10-16
| | | | | | | | | | | | | | | | | | | | This option is true if a low-level driver can support sg chaining. This will be removed eventually when all the drivers are converted to support sg chaining. q->max_phys_segments is set to SCSI_MAX_SG_SEGMENTS if false. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * qla1280: sg chaining fixesFUJITA Tomonori2007-10-16
| | | | | | | | | | Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * ips: sg chaining supportFUJITA Tomonori2007-10-16
| | | | | | | | | | | | | | | | ips properly uses scsi_for_each_sg for the normal I/O path, however, the breakup path doesn't. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * aha1542: convert to use the data buffer accessorsJens Axboe2007-10-16
| | | | | | | | Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * ide-scsi: sg chaining supportJens Axboe2007-10-16
| | | | | | | | | | Acked-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * qlogicpti: sg chaining supportJens Axboe2007-10-16
| | | | | | | | Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * aic94xx: sg chaining supportJens Axboe2007-10-16
| | | | | | | | Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * qla1280: sg chaining supportJens Axboe2007-10-16
| | | | | | | | | | | | Interesting hardware setup... Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * scsi generic: sg chaining supportJens Axboe2007-10-16
| | | | | | | | Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * scsi_debug: support sg chainingJens Axboe2007-10-16
| | | | | | | | | | Signed-off-by: Douglas Gilbert <dougg@torque.net> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * SCSI: support for allocating large scatterlistsJens Axboe2007-10-16
| | | | | | | | | | | | | | | | | | | | This is what enables large commands. If we need to allocate an sgtable that doesn't fit in a single page, allocate several SCSI_MAX_SG_SEGMENTS sized tables and chain them together. SCSI defaults to large chained sg tables, if the arch supports it. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * scsi: simplify scsi_free_sgtable()Jens Axboe2007-10-16
| | | | | | | | | | | | | | Just pass in the command, no point in passing in the scatterlist and scatterlist pool index seperately. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * scsi: convert to using sg helpersJens Axboe2007-10-16
| | | | | | | | | | | | | | This converts the SCSI mid layer to using the sg helpers for looking up sg elements, instead of doing it manually. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
| * block: convert blkdev_issue_flush() to use empty barriersJens Axboe2007-10-16
| | | | | | | | | | | | | | Then we can get rid of ->issue_flush_fn() and all the driver private implementations of that. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>