aboutsummaryrefslogtreecommitdiff
path: root/drivers/scsi
AgeCommit message (Collapse)AuthorFilesLines
2006-08-01Merge branch 'merge'Paul Mackerras48-604/+746
2006-07-31[POWERPC] sata_svw: Constify & voidify get_property()Jeremy Kerr1-1/+1
Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. sata_svw changes Signed-off-by: Jeremy Kerr <[email protected]> Signed-off-by: Paul Mackerras <[email protected]>
2006-07-31[POWERPC] scsi: Constify & voidify get_property()Jeremy Kerr3-10/+8
Now that get_property() returns a void *, there's no need to cast its return value. Also, treat the return value as const, so we can constify get_property later. powerpc-specific scsi driver changes. Signed-off-by: Jeremy Kerr <[email protected]> Signed-off-by: Paul Mackerras <[email protected]>
2006-07-29[libata] ahci: add SiS PCI IDsJeff Garzik1-0/+8
Signed-off-by: David Wang <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-07-29[PATCH] libata: cosmetic changes to PM functionsTejun Heo2-10/+10
Unify pm_message_t argument to the new-style @mesg. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-07-29[PATCH] ahci: implement Power Management supportTejun Heo1-0/+84
Implement power management support. Original implementation is from Zhao, Forrest <[email protected]> Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Zhao, Forrest <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-07-29[PATCH] ahci: separate out ahci_reset_controller() and ahci_init_controller()Tejun Heo1-77/+94
Separate out ahci_reset_controller() and ahci_init_controller() from ata_host_init(). These will be used by PM callbacks. This patch doesn't introduce any behavior change. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Zhao, Forrest <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-07-29[PATCH] libata: improve driver initialization and deinitializationTejun Heo1-51/+151
Implement ahci_[de]init_port() and use it during initialization and de-initialization. ahci_[de]init_port() are supersets of what used to be done during driver [de-]initialization. This patch makes the following behavior changes. * Per-port IRQ mask is cleared on driver load as done in other drivers. The mask will be configured properly during probe. * During init_one(), HOST_IRQ_STAT is cleared after masking port IRQs such that there is no race window. * CMD_SPIN_UP is cleared during init_one() instead of being set. It is set in port_start(). This is more consistent with overall structure of initialization. Note that CMD_SPIN_UP simply controls PHY activation. * Slumber and staggered spin-up are handled properly. * All init/deinit operations are done in step-by-step manner as described in the spec instead of issued as single merged command. Original implementation is from Zhao, Forrest <[email protected]> Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Zhao, Forrest <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-07-29[PATCH] ahci: simplify ahci_start_engine()Tejun Heo1-19/+2
Simplify ahci_start_engine() by killing prerequisite condition checks. Rationales are.. * No user checks error return from ahci_start_engine() * Code flow guarantees the prerequisite conditions unless the controller is malfunctioning. In such cases, the driver had chances to learn about the problem _before_ calling this function. * Closely related to the above two, driver calls into this function even when prerequisites fail hoping for the best. Basically, ahci_start_engine() should only do the operation itself. It isn't the right place to check for prerequisites. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Zhao, Forrest <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-07-29[PATCH] ahci: cosmetic changes to ahci_start/stop_engine()Tejun Heo1-18/+9
* fascist-format comments according to comment style used in libata core layer. * if() -> if () Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Zhao, Forrest <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-07-29[PATCH] ahci: relocate several internal functionsTejun Heo1-129/+126
* move ahci_port_start/stop() below EH functions. This makes ahci more consistent with other drivers and makes prototypes for ahci_start/stop_engine() unnecessary. * swap positions between ahci_start_engine() and ahci_stop_engine() for readability. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Zhao, Forrest <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-07-29Merge branch 'upstream-fixes' into upstreamJeff Garzik4-24/+11
2006-07-29Merge branch 'master' into upstream-fixesJeff Garzik4-24/+11
2006-07-28[SCSI] arcmsr: initial driver, version 1.20.00.13Erich Chen6-0/+2381
arcmsr is a driver for the Areca Raid controller, a host based RAID subsystem that speaks SCSI at the firmware level. This patch is quite a clean up over the initial submission with contributions from: Randy Dunlap <[email protected]> Christoph Hellwig <[email protected]> Matthew Wilcox <[email protected]> Adrian Bunk <[email protected]> Signed-off-by: Erich Chen <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] megaraid: Add support for change_queue_depth[email protected]1-0/+16
Adds support for change_queue_depth so that device queue depth can be changed at runtime through sysfs. Signed-off-by: <[email protected]> Acked-by: Seokmann Ju <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] megaraid_{mm,mbox}: a fix on "kernel unaligned access address" issueJu, Seokmann3-3/+7
There was an issue in the data structure defined by megaraid driver casuing "kernel unaligned access.." messages to be displayed during IOCTL on IA64 platform. The issue has been reported/fixed by Sakurai Hiroomi [[email protected]]. Signed-Off By: Seokmann Ju <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] megaraid_{mm,mbox}: a fix on INQUIRY with EVPDJu, Seokmann2-0/+11
With this patch, driver will protect data corruption created by INQUIRY with EVPD request to megaraid controllers. As specified in the changelog, megaraid F/W already has fixed the issue and being under process of release. Meanwhile, driver will protect the system with this patch. Signed-Off By: Seokmann Ju <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] megaraid_{mm,mbox}: 64-bit DMA capability checkerJu, Seokmann3-8/+33
This patch contains - a fix for 64-bit DMA capability check in megaraid_{mm,mbox} driver. - includes changes (going back to 32-bit DMA mask if 64-bit DMA mask failes) suggested by James with previous patch. - addition of SATA 150-4/6 as commented by Vasily Averin. With patch, the driver access PCIconfiguration space with dedicated offset to read a signature. If the signature read, it means that the controller has capability to handle 64-bit DMA. Without this patch, the driver used to blindly claim 64-bit DMA capability. The issue has been reported by Vasily Averin [[email protected]]. Thank you Vasily for the reporting. Signed-Off By: Seokmann Ju <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] iscsi bugfixes: update and move version numberMike Christie2-5/+6
The version info is useful for iscsi tcp, iser and qla4xxx so move to transport class. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] iscsi bugfixes: fix mem leaks in libiscsiMike Christie1-0/+3
We were leaking some strings. This patch just frees them. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] iscsi bugfixes: pass errors from complete_pdu to callerMike Christie2-10/+19
Must pass ISCSI_ERR values from the recv path and propogate them upwards. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] iscsi bugfixes: reduce memory allocationsMike Christie3-65/+30
We currently try to allocate a max_recv_data_segment_length which can be very large (default is 64K), and common uses are up to 1MB. It is very very difficult to allocte this much contiguous memory and it turns out we never even use it. We really only need a couple of pages, so this patch has us allocates just what we know what we need today. Later if vendors start adding vendor specific data and we need to handle large buffers we can do this, but for the last 4 years we have not seen anyone do this or request it. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] iscsi bugfixes: dont use GFP_KERNEL for sending errorsMike Christie1-5/+5
iscsi_tcp can send error events from soft irq context so we cannot use GFP_KERNEL. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] iscsi bugfixes: fix oops when removing sessionMike Christie1-1/+2
We are touching the cls_session after we have freed it. This causes a oops. Signed-off-by: Or Gerlitz <[email protected]> Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] iscsi bugfixes: fix oops when iser is flushing ioMike Christie2-47/+32
When we enter recovery and flush the running commands we cannot freee the connection before flushing the commands. Some commands may have a reference to the connection that needs to be released before. iscsi_stop was forcing the term and suspend too early and was causing a oops in iser, so this patch removes those callbacks all together and allows the LLD to handle that detail. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] iscsi bugfixes: fix abort handlingMike Christie1-25/+46
Abort handler fixes. If a connection is dropped and reconnected while an abort is running then we should assume the recovery code will clean up the abort. Not doing so causes a oops. And if a command completes then we get the status for the abort, we do not need to call into the LLD to cleanup the resources. Doing this causes and oops in iser because it ends up freeing some resources twice. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] iscsi bugfixes: handle data rsp errorsMike Christie1-1/+3
if iscsi_data_rsp fails we must bail out. Since the pdu values like data length are invalid we cannot continue to process the data since it could over run buffers. This fixes a bug with cisco 5428s where that target is sending too much data. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] iscsi bugfixes: fix r2t handlingMike Christie2-76/+59
The iscsi tcp code can pluck multiple rt2s from the tasks's r2tqueue in the xmit code. This can result in the task being queued on the xmit queue but gettting completed at the same time. This patch fixes the above bug by making the fifo a list so we always remove the entry on the list del. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] iscsi bugfixes: send correct error values to userspaceMike Christie1-3/+3
In the xmit patch we are sending a -EXXX value to iscsi_conn_failure which is causing userspace to get confused. We should be sending a ISCSI_ERR_* value that userspace understands. Signed-off-by: Mike Christie <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] hptiop: wrong register used in hptiop_reset_hba()HighPoint Linux Team1-1/+1
IOP reset message should be posted to inbound message register instead of outbound message register. Signed-off-by: HighPoint Linux Team <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[SCSI] sym2: claim only "Storage" classGrant Grundler1-1/+1
The follow patch fixes a problem for Matt Taggart. The Compaq system he had (dl380?) has a SmartArray device that exposes the 53c1510 device in both RAID and "normal" modes. The difference is in RAID mode, the smart array driver (IIRC) should claim the device instead of sym2 driver. Patch below prevents sym2 from claiming the device when the RAID "daughter board" is attached. Signed-off-by: Grant Grundler <[email protected]> Signed-off-by: James Bottomley <[email protected]>
2006-07-28[PATCH] scsi: kill overeager "not-ready" messagesJens Axboe1-4/+1
HAL and friends have a tendency to trigger this one all the time. It's not really interesting, so kill it. The vendor kernels all do anyways. Signed-off-by: Jens Axboe <[email protected]>
2006-07-26[PATCH] fix compile regression for a few scsi driversChristoph Hellwig2-12/+6
This fixes three drivers to compile again after my patch that removes the data_cmnd member from struct scsi_cmnd. The fas216 change is trivial, it should have been using ->cmnd all the time. NCR53C9 (which seem to be mostly duplicate driver with esp.c!) is doing something odd, it should only have looked at ->cmnd before not the saved copy that is kept for the error handlers sake. Note that it really should deal with the sync setting themselves but use the generic domain validation code that get this right - but that's for later let's push this simple compile fix for now. And sorry for the late fix for this, I have been busy with OLS and associated activities last week. Signed-off-by: Christoph Hellwig <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2006-07-24[SCSI] esp: Fix build.David S. Miller1-8/+4
The data_cmd[] member got deleted, so do not use it any more. Scsi commands do not have their ->cmd[] overwritten temporary to probe for status after an error before retrying. Signed-off-by: David S. Miller <[email protected]>
2006-07-24Merge branch 'upstream-fixes' into upstreamJeff Garzik42-500/+573
2006-07-24Merge branch 'master' into upstream-fixesJeff Garzik42-500/+573
2006-07-24Merge branch 'upstream-fixes' into upstreamJeff Garzik1-0/+7
2006-07-24[libata] sata_promise: comment out duplicate PCI IDJeff Garzik1-0/+7
This is just the for-RC fix. A 'TODO' command is added, describing what's needed for the more-complete fix.
2006-07-21Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6Linus Torvalds42-500/+573
* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6: (38 commits) [SCSI] More buffer->request_buffer changes [SCSI] mptfusion: bump version to 3.04.01 [SCSI] mptfusion: misc fix's [SCSI] mptfusion: firmware download boot fix's [SCSI] mptfusion: task abort fix's [SCSI] mptfusion: sas nexus loss support [SCSI] mptfusion: sas loginfo update [SCSI] mptfusion: mptctl panic when loading [SCSI] mptfusion: sas enclosures with smart drive [SCSI] NCR_D700: misc fixes (section and argument ordering) [SCSI] scsi_debug: must_check fixes [SCSI] scsi_transport_sas: kill the use of channel [SCSI] scsi_transport_sas: add expander backlink [SCSI] hide EH backup data outside the scsi_cmnd [SCSI] ibmvscsi: handle inactive SCSI target during probe [SCSI] ibmvscsi: allocate lpevents for ibmvscsi on iseries [SCSI] aic7[9x]xx: Remove last vestiges of reverse_scan [SCSI] aha152x: stop poking at saved scsi_cmnd members [SCSI] st.c: Improve sense output [SCSI] lpfc 8.1.7: Change version number to 8.1.7 ...
2006-07-19[PATCH] The redefinition of ahci_start_engine() and ahci_stop_engine()zhao, forrest1-25/+57
- Make ahci_start_engine() and ahci_stop_engine() more consistent with AHCI spec 1.1 - Change their input parameter from ap to port_mmio - Update the existing users of ahci_start_engine() and ahci_stop_engine() Signed-off-by: Forrest Zhao <[email protected]> Signed-off-by: Hannes Reinecke <[email protected]> Signed-off-by: Jens Axboe <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-07-19[PATCH] libata: improve EH action and EHI flag handlingTejun Heo1-5/+28
Update ata_eh_about_to_do() and ata_eh_done() to improve EH action and EHI flag handling. * There are two types of EHI flags - one which expires on successful EH and the other which expires on a successful reset. Make this distinction clear. * Unlike other EH actions, reset actions are represented by two EH action masks and a EHI modifier. Implement correct about_to_do/done semantics for resets. That is, prior to reset, related EH info is sucked in from ehi and cleared, and after reset is complete, related EH info in ehc is cleared. These changes improve consistency and remove unnecessary EH actions caused by stale EH action masks and EHI flags. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-07-19[PATCH] libata: fix eh_skip_recovery conditionTejun Heo1-3/+4
* (ata_dev_absent() || ata_dev_ready()) test doesn't indicate SUSPENDED state properly. Fix it. * Link resuming resets shouldn't be skipped. Don't skip recovery on EHI_RESUME_LINK. This doesn't matter for host ports as EHI_RESUME always coincides with EHI_HOTPLUGGED which makes attached disabled devices vacant. However, PMP reset causes non-hotplug link-resuming resets which shouldn't be skipped. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-07-19[PATCH] libata: fix autopsy ehc->i.action and ehc->i.dev handlingTejun Heo1-17/+12
Commit 0662c58b3265f52f708a6d59476bc7862b01f9c0 updated ata_eh_autopsy() to OR determined action to ehc->i.action to preserve action mask set directly into ehc->i.action by nested functions. This broke action mask clearing on SENSE_VALID case causing revalidation and EH complete message on successful ATAPI CC. This patch removes two local variables - action and failed_dev - which cache ehc->i.action and ehc->i.dev respectively, and make the function directly modify ehc->i.* fields to remove aliasing issues. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-07-16[PATCH] sata_sil: remove unaffected drives from m15w blacklistTejun Heo1-4/+0
m15w blacklist overgrew by attributing unrelated problems to m15w including R_ERR on DMA activate FIS errata. This patch shrinks sata_sil m15w blacklist such that it's as reported by Silicon Image. Signed-off-by: Tejun Heo <[email protected]> Cc: Carlos Pardo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-07-16[libata] ata_piix: correct 'invalid MAP value' typo-caused errorJeff Garzik1-1/+1
Signed-off-by: Jeff Garzik <[email protected]>
2006-07-16[libata] ata_piix: minor cleanups noticed in prior patch runJeff Garzik1-11/+7
* delete unused PIIX_FLAG_COMBINED* * port_enable should be u16 rather than u32 Signed-off-by: Jeff Garzik <[email protected]>
2006-07-16[libata] ata_piix: attempt to fix ICH8 supportJeff Garzik1-4/+38
Take into account the fact that ICH8 changed the register layout of the MAP and PCS register bits. Signed-off-by: Jeff Garzik <[email protected]>
2006-07-16[libata] ata_piix: Consolidate PCS register writingJeff Garzik1-25/+28
Prior to this patch, the driver would do this for each port: read 8-bit PCS write 8-bit PCS read 8-bit PCS write 8-bit PCS In the field, flaky behavior has been observed related to this register. In particular, these overzealous register writes can cause misdetection problems. Update to do the following once (not once per port) at boot: read 16-bit PCS if needs changing, write 16-bit PCS And thereafter, we only perform a 'read 16-bit PCS' per port. This should eliminate all PCS writes in many cases, and be more friendly in the cases where we do need to enable ports. Signed-off-by: Jeff Garzik <[email protected]>
2006-07-16[PATCH] ata_piix: add host_set private structureTejun Heo1-16/+40
Add host_set private structure piix_host_priv. Currently the only field is ->map which used to be stored directly at host_set->private_data. This change allows more host_set private fields to be added. Signed-off-by: Tejun Heo <[email protected]> Signed-off-by: Jeff Garzik <[email protected]>
2006-07-14[SCSI] More buffer->request_buffer changesChristoph Hellwig13-19/+17
Seem like quite a few splipped through the cracks. Here's a patch to update all references I could find: Signed-off-by: Christoph Hellwig <[email protected]> Signed-off-by: James Bottomley <[email protected]>