summaryrefslogtreecommitdiffstats
path: root/drivers/scsi
Commit message (Collapse)AuthorAgeFilesLines
* [SCSI] remove Scsi_Host_Template typedefChristoph Hellwig2005-11-09107-181/+180Star
| | | | Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] sd: fix issue_flushJames Bottomley2005-11-091-13/+9Star
| | | | | | | | sd_issue_flush() is called from atomic context so we can't use the semaphore based routines to get a reference to the scsi_disk. Assume something else already got the reference so we can safely use it. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] Fix refcount leak in scsi_report_lun_scanAlan Stern2005-11-081-3/+5
| | | | | Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* [SCSI] fix usb storage oopsgoggin, edward2005-11-081-1/+8
| | | | | | | | | | The problem is that scsi_run_queue is called from scsi_next_command() after doing a scsi_put_command. If the command was the only thing holding the reference on the scsi_device then the resulting device put will tear down the block queue. Fix this by taking a reference to the device and holding it around scsi_run_queue() Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* Merge by hand (conflicts between pending drivers and kfree cleanups)James Bottomley2005-11-0821-4713/+1095Star
|\ | | | | | | Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Driver version 2.1.0brking@us.ibm.com2005-11-061-2/+2
| | | | | | | | | | | | | | Bump the driver version. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Better handle failure of adapter bringup commandsbrking@us.ibm.com2005-11-062-9/+52
| | | | | | | | | | | | | | | | | | Some new ipr adapters do not support some of the initialization commands currently sent to it from the driver. Handle these commands failing and continue on with the adapter initialization. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Increase ipr device scanning limitsbrking@us.ibm.com2005-11-061-3/+3
| | | | | | | | | | | | | | Increase device scanning limits so that all devices are found. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: New PCI Idsbrking@us.ibm.com2005-11-062-1/+25
| | | | | | | | | | | | | | Adds support for some new ipr adapters Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Support device reset to RAID disksbrking@us.ibm.com2005-11-061-1/+1
| | | | | | | | | | | | | | | | Support now exists in some ipr adapters to issue a device reset to an Advanced Function disk. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Support new device queueing modelbrking@us.ibm.com2005-11-062-11/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | New ipr adapters support a new device queueing model in the adapter firmware. The queueing model is the NACA queueing model, but it does not mean use of NACA is required. The new model removes some of the adapter firmware queue state that made handling QERR=0 almost impossible. The queueing model on older adapters included the concept of a queue frozen state, which would freeze the response queue in the adapter when a check condition occurred, requiring a a primitive to resume the queue. The new queueing model removes this complexity. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: New adapter error typesbrking@us.ibm.com2005-11-062-1/+241
| | | | | | | | | | | | | | Handle some new types of ipr errors that can be returned by the adapter. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Handle device autosensebrking@us.ibm.com2005-11-061-6/+12
| | | | | | | | | | | | | | | | | | Some newer ipr adapters are capable of returning autosense from devices that support it. This patch adds the data structures for the autosense buffer. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Module parm to disable RAID 0 auto createbrking@us.ibm.com2005-11-061-0/+5
| | | | | | | | | | | | | | | | | | | | Some ipr adapters will automatically create single device RAID 0 arrays for all unconfigured RAID capable devices found at adapter initialization time. This patch adds a module parameter to disable this behavior. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Runtime resetbrking@us.ibm.com2005-11-062-1/+5
| | | | | | | | | | | | | | | | | | | | | | Some IPR RAID adapter will automatically create single device RAID arrays for all attached devices when the card is initialized. Setting the RUNTIME_RESET doorbell bit will prevent this from occurring, since we only want this behavior the first time the card is initialized and not each time the card happens to get reset. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: handle new adapter errorsbrking@us.ibm.com2005-11-062-12/+81
| | | | | | | | | | | | | | | | Add support for handling some new errors that may be returned by ipr adapters. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Provide reset_adapter retry method for offlined adaptersbrking@us.ibm.com2005-11-061-0/+69
| | | | | | | | | | | | | | | | | | | | If an ipr adapter repeatedly fails its initialization the ipr driver will take the adapter offline and never talk to it again. This provides a method for the user to manually try the initialization again through sysfs. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Runtime debugging optionsbrking@us.ibm.com2005-11-062-27/+6Star
| | | | | | | | | | | | | | Make some compile time debugging options runtime module options. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Fix adapter microcode update DMA mapping leakbrking@us.ibm.com2005-11-062-49/+56
| | | | | | | | | | | | | | | | | | | | | | If the write buffer command that is issued to the ipr adapter to update its microcode fails for some reason, the DMA buffer will never get unmapped. Move the pci_map/unmap out of the IOA reset job so that the buffer is always clearly mapped and unmapped. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Convert to use kzallocbrking@us.ibm.com2005-11-061-14/+4Star
| | | | | | | | | | | | | | Convert appropriate kmalloc/memset calls to use kzalloc. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Write caching state host attributebrking@us.ibm.com2005-11-062-9/+210
| | | | | | | | | | | | | | | | Adds a scsi_host sysfs attribute and module parm to enable/disable the write cache on an ipr adapter. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: slave_alloc optimizationbrking@us.ibm.com2005-11-061-2/+4
| | | | | | | | | | | | | | | | Optimize ipr's slave_alloc to return -ENXIO for devices that do not exist. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Prevent upper layer driver bindingbrking@us.ibm.com2005-11-061-1/+3
| | | | | | | | | | | | | | | | | | | | Set the no_uld_attach for devices ipr does not want upper layer drivers to attach to. These devices are only reported for RAID management and only sg should be used to talk to them. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Include all disks in supported listbrking@us.ibm.com2005-11-061-1/+1
| | | | | | | | | | | | | | | | Fix ipr to include all disks in the supported device list, not just disks formatted to advanced function format. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Error logging cleanupbrking@us.ibm.com2005-11-061-3/+3
| | | | | | | | | | | | | | | | Simplify error logging path, sanitize error length returned by the adapter. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Handle unknown errorsbrking@us.ibm.com2005-11-061-5/+1Star
| | | | | | | | | | | | | | | | | | Better handle errors received which are not known to the device driver. Just dump the hex data so that we have a hope of figuring out what went wrong. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Generic adapter error cleaupbrking@us.ibm.com2005-11-061-3/+0Star
| | | | | | | | | | | | | | | | The generic ipr adapter error log currently logs 2 lines of useless data. Delete these lines. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Physical resource error logging macrobrking@us.ibm.com2005-11-062-29/+17Star
| | | | | | | | | | | | | | Adds a macro in the ipr driver for logging a physical device location. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Cleanup error structuresbrking@us.ibm.com2005-11-062-53/+36Star
| | | | | | | | | | | | | | Simplify the ipr error structures a bit by removing some duplication. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ipr: Disk array rescanning fixbrking@us.ibm.com2005-11-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | IPR RAID arrays show up on a virtual scsi bus, with a scsi bus number of 255, which is generated by the adapter microcode. For the initial scan of the host, we manually scan this bus since it does not obey SAM in regards to sparse LUNs and the disk array devices do not have a consistent product id to use scsi core's blacklist. If /proc/scsi/scsi or sysfs is used to delete one of these devices, the device will not be able to get added back by rescanning the host since scsi core will see ipr's max_channel as 4, rather than 255. Update max_channel after the initial scan so that ipr raid arrays can get re-added if they get deleted. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] remove the obsolete SCSI qlogicisp driverAdrian Bunk2005-11-065-4000/+0Star
| | | | | | | | | | | | | | | | The SCSI qlogicisp driver is both marked BROKEN and superseded by the qla1280 driver. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] aic79xx: remove scsi_assign_lock usageChristoph Hellwig2005-11-061-23/+14Star
| | | | | | | | | | | | | | | | just take the internal lock in queuecommand instead. also switch the only direct use of the internal lock to the wrappers used elsewhere. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] aic7xxx: remove scsi_assign_lock usageChristoph Hellwig2005-11-061-23/+16Star
| | | | | | | | | | | | | | | | just take the internal lock in queuecommand instead. also switch the only direct use of the internal lock to the wrappers used elsewhere. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] megaraid (legacy): remove scsi_assign_lock usageChristoph Hellwig2005-11-062-28/+14Star
| | | | | | | | | | | | | | | | | | just take the adapter lock in megaraid_queue. Additional benefit is that we can get rid of the awkward conditional locking in mega_internal_command. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] megaraid_mbox: remove scsi_assign_lock usageChristoph Hellwig2005-11-062-66/+17Star
| | | | | | | | | | | | | | | | | | also remove the adapter->host_lock alias for adapter->lock and remove some superflous locking aswell as removing the tiny locking wrappers for the EH routines. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] megaraid_sas: fix EH lockingChristoph Hellwig2005-11-061-5/+0Star
| | | | | | | | | | | | | | | | | | | | recent kernels call the eh_ methods without the host lock held. megaraid_sas doesn't need it but drops it before calling a sleeping routine and reqcquires it afterwards. Just remove the spin_unlock/spin_lock calls. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] use a completion in scsi_send_eh_cmndChristoph Hellwig2005-11-062-79/+29Star
| | | | | | | | | | | | | | | | | | | | scsi_send_eh_cmnd currently uses a semaphore and an overload of eh_timer to either get a completion for a command for a timeout. Switch to using a completion and wait_for_completion_timeout to simply the code and not having to deal with the races ourselves. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] remove scsi_wait_reqChristoph Hellwig2005-11-061-49/+0Star
| | | | | | | | | | | | | | | | This function has been superceeded by the block request based interfaces and is unused (except for the uncompilable cpqfc driver). Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] remove Scsi_Host.eh_activeChristoph Hellwig2005-11-061-4/+0Star
| | | | | | | | | | | | | | now that the abuse in qla2xxx is gone this field can be remove. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] tidy up scsi_error_handlerChristoph Hellwig2005-11-061-29/+17Star
| | | | | | | | | | | | | | adjust comments, remove a useless cast and remove a write-only variable. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ide-scsi fails to call idescsi_check_condition for things like ↵Willem Riede2005-11-061-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "Medium not present" This patch started life as a response to fedora specific ide subsystem changes that made error handling of my ATAPI tape drive fail; the specifics are in https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=160868 The insertion of the statement rq->errors = err; near the end of ide_end_drive_cmd() in drivers/ide/ide-io.c means that rq->errors does not contain what it needs to in idescsi_end_request() in drivers/scsi/ide-scsi.c anymore. Recent mainline kernels now also have this change. Signed-off-by: Willem Riede <wrlk@riede.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] ips: remove "Version Matching"Jack Hammer2005-11-061-135/+3Star
| | | | | | | | | | | | | | | | | | IBM has finally agreed that the "Version Matching" between firmware and drivers ( and the resulting warning messages ) is no longer necessary. This patch will remove those functions from the ServeRAID driver. Signed-off-by: Jack Hammer <jack_hammer@adaptec.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] raid class updateJames Bottomley2005-11-061-24/+72
| | | | | | | | | | | | | | | | - Update raid class to use nested classes for raid components (this will allow us to move to a component control model now) - Make the raid level an enumeration rather than and int. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
| * [SCSI] Fix transport class oopsJames Bottomley2005-11-061-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | There's an oops that sometimes shows up with SCSI transport classes in sysfs_hash_and_remove. The problem is that now, because of the class to device and vice versa symlinks, all classes have to be removed from visibility *before* the device is removed from visibility. The transport class trigger points violate this, so bring them back into conformance. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
* | [PATCH] kfree cleanup: drivers/scsiJesper Juhl2005-11-0721-141/+73Star
| | | | | | | | | | | | | | | | | | | | | | | | This is the drivers/scsi/ part of the big kfree cleanup patch. Remove pointless checks for NULL prior to calling kfree() in drivers/scsi/. Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com> Cc: James Bottomley <James.Bottomley@steeleye.com> Acked-by: Kai Makisara <kai.makisara@kolumbus.fi> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | [PATCH] drivers/scsi: fix-up schedule_timeout() usageNishanth Aravamudan2005-11-077-53/+25Star
| | | | | | | | | | | | | | | | | | | | Use schedule_timeout_uninterruptible() instead of set_current_state()/schedule_timeout() to reduce kernel size. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Cc: James Bottomley <James.Bottomley@steeleye.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | [PATCH] fix remaining missing includesTim Schmielau2005-11-074-0/+7
|/ | | | | | | | | | Fix more include file problems that surfaced since I submitted the previous fix-missing-includes.patch. This should now allow not to include sched.h from module.h, which is done by a followup patch. Signed-off-by: Tim Schmielau <tim@physik3.uni-rostock.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [libata] restore sg on DMA mapping failureTejun Heo2005-11-051-2/+8
|
* Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6Linus Torvalds2005-11-05125-36804/+28676Star
|\
| * [SCSI] sd: Fix refcountingAlan Stern2005-11-051-37/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the driver takes a reference only for requests coming by way of the gendisk, not for requests coming by way of the struct device or struct scsi_device. Such requests can arrive in the rescan, flush, and shutdown pathways. The patch also makes the scsi_disk keep a reference to the underlying scsi_device, and it erases the scsi_device's pointer to the scsi_disk when the scsi_device is removed (since the pointer should no longer be used). This resolves Bugzilla entry #5237. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>