aboutsummaryrefslogtreecommitdiff
path: root/drivers/scsi
AgeCommit message (Collapse)Author
2005-11-09[SCSI] remove Scsi_Host_Template typedefChristoph Hellwig
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2005-11-09[SCSI] sd: fix issue_flushJames Bottomley
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>
2005-11-08[SCSI] Fix refcount leak in scsi_report_lun_scanAlan Stern
Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2005-11-08[SCSI] fix usb storage oopsgoggin, edward
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>
2005-11-08Merge by hand (conflicts between pending drivers and kfree cleanups)James Bottomley
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2005-11-07[PATCH] kfree cleanup: drivers/scsiJesper Juhl
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>
2005-11-07[PATCH] drivers/scsi: fix-up schedule_timeout() usageNishanth Aravamudan
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>
2005-11-07[PATCH] fix remaining missing includesTim Schmielau
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>
2005-11-06[SCSI] ipr: Driver version 2.1.0brking@us.ibm.com
Bump the driver version. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2005-11-06[SCSI] ipr: Better handle failure of adapter bringup commandsbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Increase ipr device scanning limitsbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: New PCI Idsbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Support device reset to RAID disksbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Support new device queueing modelbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: New adapter error typesbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Handle device autosensebrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Module parm to disable RAID 0 auto createbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Runtime resetbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: handle new adapter errorsbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Provide reset_adapter retry method for offlined adaptersbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Runtime debugging optionsbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Fix adapter microcode update DMA mapping leakbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Convert to use kzallocbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Write caching state host attributebrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: slave_alloc optimizationbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Prevent upper layer driver bindingbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Include all disks in supported listbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Error logging cleanupbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Handle unknown errorsbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Generic adapter error cleaupbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Physical resource error logging macrobrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Cleanup error structuresbrking@us.ibm.com
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>
2005-11-06[SCSI] ipr: Disk array rescanning fixbrking@us.ibm.com
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>
2005-11-06[SCSI] remove the obsolete SCSI qlogicisp driverAdrian Bunk
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>
2005-11-06[SCSI] aic79xx: remove scsi_assign_lock usageChristoph Hellwig
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>
2005-11-06[SCSI] aic7xxx: remove scsi_assign_lock usageChristoph Hellwig
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>
2005-11-06[SCSI] megaraid (legacy): remove scsi_assign_lock usageChristoph Hellwig
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>
2005-11-06[SCSI] megaraid_mbox: remove scsi_assign_lock usageChristoph Hellwig
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>
2005-11-06[SCSI] megaraid_sas: fix EH lockingChristoph Hellwig
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>
2005-11-06[SCSI] use a completion in scsi_send_eh_cmndChristoph Hellwig
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>
2005-11-06[SCSI] remove scsi_wait_reqChristoph Hellwig
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>
2005-11-06[SCSI] remove Scsi_Host.eh_activeChristoph Hellwig
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>
2005-11-06[SCSI] tidy up scsi_error_handlerChristoph Hellwig
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>
2005-11-06[SCSI] ide-scsi fails to call idescsi_check_condition for things like ↵Willem Riede
"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>
2005-11-06[SCSI] ips: remove "Version Matching"Jack Hammer
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>
2005-11-06[SCSI] raid class updateJames Bottomley
- 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>
2005-11-06[SCSI] Fix transport class oopsJames Bottomley
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>
2005-11-05[libata] restore sg on DMA mapping failureTejun Heo
2005-11-05Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6Linus Torvalds
2005-11-05[SCSI] sd: Fix refcountingAlan Stern
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>