- 14 Sep, 2005 3 commits
-
-
James Bottomley authored
On Wed, 2005-09-14 at 18:06 +1000, Anton Blanchard wrote: > And in particular it looks like the scsi_unprep_request in > scsi_queue_insert is causing it. The following patch fixes the boot > problems on the vscsi machine: OK, my fault. Your fix is almost correct .. I was going to do this eventually, honest, because there's no need to unprep and reprep a command that comes in through scsi_queue_insert(). However, I decided to leave it in to exercise the scsi_unprep_request() path just to make sure it was working. What's happening, I think, is that we also use this path for retries. Since we kill and reget the command each time, the retries decrement is never seen, so we're retrying forever. Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
Randy.Dunlap authored
Modules need a license to prevent kernel tainting. Signed-off-by:
Randy Dunlap <rdunlap@xenotime.net> Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
Timothy Thelin authored
This fixes an issue in scsi command initialization from a request where sd, sr, st, and scsi_lib all fail to copy the request's cmd_len to the scsi command's cmd_len field. Signed-off-by:
Timothy Thelin <timothy.thelin@wdc.com> Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
- 13 Sep, 2005 3 commits
-
-
James Bottomley authored
This patch moves aic7xxx over to the dma_get_required_mask() API and dumps its open coded memory check. It also appears from this bug: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=167049 That 39 bit addressing doesn't work on older cards. I surmise that the AHC_LARGE_SCBS flag is the one that marks cards capable of using 39 bit addressing, so I also folded that check into the code. Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
Dave C Boutcher authored
Linda Xie ever so gently pointed out that she had a patch to preserve compatibility with older SLES targets, and I told her we didn't need to push it to mainline. This patch explicitly checks the version of the IBMVSCSI target and ensures that large scatterlists are not sent to older targets. Signed-off-by:
Linda Xie <lxie@us.ibm.com> Signed-off-by:
Dave Boutcher <boutcher@us.ibm.com> Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
James Bottomley authored
They report being SCSI-3 but seem to give back rubbish to a REPORT_LUNS command. Force them to be sequentially scanned. Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
- 10 Sep, 2005 8 commits
-
-
Mike Christie authored
set DID_NO_CONNECT for the BLKPREP_KILL case and correct a few BLKPREP_DEFER cases that weren't checking for the need to plug the queue. Signed-Off-By:
Mike Christie <michaelc@cs.wisc.edu> Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
James Bottomley authored
The original API returned either an ERR_PTR() or a refcounted sdev. Unfortunately, if it's successful, you need to do a scsi_device_put() on the sdev otherwise the refcounting is wrong. Everyone seems to expect that scsi_add_device() should be callable without doing the ref put, so alter the API so it is (we still have __scsi_add_device with the original behaviour). The only actual caller that needs altering is the one in firewire ... not because it gets this right, but because it acts on the error if one is returned. Acked-by:
Stefan Richter <stefanr@s5r6.in-berlin.de> Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
viro@ZenIV.linux.org.uk authored
Signed-off-by:
Al Viro <viro@zeniv.linux.org.uk> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
Adrian Bunk authored
This patch contains the most trivial from Rusty's trivial patches: - spelling fixes - remove duplicate includes Signed-off-by:
Adrian Bunk <bunk@stusta.de> Cc: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
Jesper Juhl authored
This patch does a full cleanup of 'NULL checks before vfree', and a partial cleanup of calls to kfree for all of drivers/ - the kfree bit is partial in that I only did the files that also had vfree calls in them. The patch also gets rid of some redundant (void *) casts of pointers being passed to [vk]free, and a some tiny whitespace corrections also crept in. Signed-off-by:
Jesper Juhl <jesper.juhl@gmail.com> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
Alan Stern authored
This patch (as546) fixes an oops-causing failure to check the return code from scsi_device_get. The call can return an error if the LLD is being unloaded from memory. Signed-off-by:
Alan Stern <stern@rowland.harvard.edu> Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
Andrew Vasquez authored
Signed-off-by:
Andrew Vasquez <andrew.vasquez@qlogic.com> Acked-by:
Smart, James <James.Smart@emulex.com> Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
Andrew Vasquez authored
Signed-off-by:
Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
- 09 Sep, 2005 12 commits
-
-
James Bottomley authored
Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
adam radford authored
The attached patch updates the driver for the 3ware 9000 series to do the following: - Correctly handle single sgl's with use_sg = 1. This is needed with the latest scsi-block-2.6 merge otherwise the 3w-9xxx driver will not work. I tested the patch James sent a few weeks back to fix this, and it had a bug where the request_buffer was accessed in twa_scsiop_execute_scsi_complete() when it was invalid. This is a corrected variation of that patch. Signed-off-by:
Adam Radford <linuxraid@amcc.com> Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
Christoph Hellwig authored
The SAS transport class contains common code to deal with SAS HBAs, an aproximated representation of SAS topologies in the driver model, and various sysfs attributes to expose these topologies and managment interfaces to userspace. In addition to the basic SCSI core objects this transport class introduces two additional intermediate objects: The SAS PHY as represented by struct sas_phy defines an "outgoing" PHY on a SAS HBA or Expander, and the SAS remote PHY represented by struct sas_rphy defines an "incoming" PHY on a SAS Expander or end device. Note that this is purely a software concept, the underlying hardware for a PHY and a remote PHY is the exactly the same. There is no concept of a SAS port in this code, users can see what PHYs form a wide port based on the port_identifier attribute, which is the same for all PHYs in a port. This submission doesn't handle hot-plug addition or removal of SAS devices and thus doesn't do scanning in a workqueue yet, that will be added in phase2 after this submission. In a third phase I will add additional managment infrastructure. I think this submission is ready for 2.6.14, but additional comments are of course very welcome. I'd like to thanks James Smart a lot for his very useful input on the design. Signed-off-by:
Christoph Hellwig <hch@lst.de> Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
Douglas Gilbert authored
Further to the problem discussed in this post: http://marc.theaimsgroup.com/?l=linux-scsi&m=112540053711489&w=2 It seems that the sg driver does not need to set the VM_IO flag on pages that it memory maps to the user space since they are not from the IO space. Ahmed Teirelbar <ahmed.teirelbar@adic.com> wants the facility and has tested this patch as I have without adverse effects. The oops protection is still important. Some users really did try and use dio transfers from the sg driver to memory mapped IO space (on a video capture card if my memory serves) during the lk 2.4 series. I'm not sure how successful it was but that will now be politely refused in lk 2.6.13+ . Changelog: - set the page flags for sg's reserved buffer mmap-ed to the user space to VM_RESERVED (rather than VM_RESERVED | VM_IO ) Signed-off-by:
Douglas Gilbert <dougg@torque.net> Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
James Bottomley authored
Actually, just one problem and one cosmetic fix: 1) We need to dequeue for the loop and kill case (it seems easiest simply to dequeue in the scsi_kill_request() routine) 2) There's no real need to drop the queue lock. __scsi_done() is lock agnostic, so since there's no requirement, let's just leave it in to avoid any locking issues. Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
viro@ZenIV.linux.org.uk authored
Signed-off-by:
Al Viro <viro@zeniv.linux.org.uk> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
Ingo Molnar authored
This converts the final 20 DEFINE_SPINLOCK holdouts. (another 580 places are already using DEFINE_SPINLOCK). Build tested on x86. Signed-off-by:
Ingo Molnar <mingo@elte.hu> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
Ingo Molnar authored
Clean up timer initialization by introducing DEFINE_TIMER a'la DEFINE_SPINLOCK. Build and boot-tested on x86. A similar patch has been been in the -RT tree for some time. Signed-off-by:
Ingo Molnar <mingo@elte.hu> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
James Bottomley authored
From: Alan Stern <stern@rowland.harvard.edu> This patch (as559b) adds a new routine, scsi_unprep_request, which gets called every place a request is requeued. (That includes scsi_queue_insert as well as scsi_requeue_command.) It also changes scsi_kill_requests to make it call __scsi_done with result equal to DID_NO_CONNECT << 16. (I'm not sure if it's necessary to call scsi_init_cmd_errh here; maybe you can check on that.) Finally, the patch changes the return value from scsi_end_request, to avoid returning a stale pointer in the case where the request was requeued. Fortunately the return value is used in only place, and the change actually simplified it. Signed-off-by:
Alan Stern <stern@rowland.harvard.edu> Rejections fixed up and Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
Neil Brown authored
If a filesystem, while writing out data, decides that it is good to issue a cache flush on a SCSI drive (or other 'sd' device), it will call blkdev_issue_flush which calls ->issue_flush_fn which is scsi_issue_flush_fn. This calls sd_issue_flush which calls sd_sync_cache, which calls scsi_execute_request. This will (as sshdr != NULL) call kmalloc(SCSI_SENSE_BUFFERSIZE, GFP_KERNEL) If memory is tight, the presence of GFP_KERNEL may cause write requests to be sent to some filesystem to free up memory, however if that filesystem is waiting for the issue_flush_fn to complete, you could get a deadlock. I wonder if it might be more appropriate to use GFP_NOIO as in the following patch. I wonder if it might be even more appropriate to cope better with a kmalloc failure, especially as in this use, sd_sync_cache only will use the sense information to print out a more informative error message. Signed-off-by:
Neil Brown <neilb@suse.de> Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
Alan Stern authored
This patch (as544) adds a private entry point to scsi_remove_device, for use when callers already own the scan_mutex. The appropriate callers are modified to use the new entry point. Signed-off-by:
Alan Stern <stern@rowland.harvard.edu> Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
Alan Stern authored
This patch (as543) adds a private entry point to scsi_scan_target, for use when the caller already owns the scan_mutex, and updates the kerneldoc for that routine (which was badly out-of-date). It converts scsi_scan_channel to use the new entry point. Lastly, it modifies scsi_get_host_dev to make it acquire the scan_mutex, necessary since the routine adds a new scsi_device even if it doesn't do any actual scanning. Signed-off-by:
Alan Stern <stern@rowland.harvard.edu> Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
- 08 Sep, 2005 3 commits
-
-
Jeff Garzik authored
* sata_mv: remove pci_intx(), now that the same function is in PCI core * sata_sis: fix variable initialization bug, trim trailing whitespace
-
Brett M Russ authored
Simple cleanup to eliminate X copies of the pci_enable_intx() function in libata. Moved ahci.c's pci_intx() to pci.c and use it throughout libata and msi.c. Signed-off-by:
Brett Russ <russb@emc.com> Signed-off-by:
Greg Kroah-Hartman <gregkh@suse.de>
-
Hannes Reinecke authored
ICH6 spec defines the PORT_ bits as: PORT_ENABLED (R/W): 0 = Disabled. The port is in the off state and cannot detect any devices. 1 = Enabled. The port can transition between the on, partial, and slumber states and can detect devices. PORT_PRESENT (R/O) The status of this bit may change at any time. This bit is cleared when the port is disabled via PORT_ENABLED. This bit is not cleared upon surprise removal of a device. So from a textual view it is not necessary that PORT_PRESENT _must_ be set, especially if a device detection has to be done anyway. And, in fact, this is the view that ACER has been taken with its new Laptops (e.g. Travelmate 4150). And the definition of PORT_ENABLED / PORT_PRESENT is mixed up, btw. Signed-off-by:
Hannes Reinecke <hare@suse.de> Signed-off-by:
Jens Axboe <axboe@suse.de> Cc: Jeff Garzik <jgarzik@pobox.com> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Jeff Garzik <jgarzik@pobox.com>
-
- 07 Sep, 2005 5 commits
-
-
Arnaud Patard authored
This patch adds support for the SiS182 sata chipset. This is a minimalistic version of the patch from http://bugme.osdl.org/show_bug.cgi?id=4192 . Basically, it add the PCI IDs and handles the change of the 2nd port adress register. Signed-Off-By:
Arnaud Patard <apatard@mandriva.com> Signed-off-by:
Jeff Garzik <jgarzik@pobox.com>
-
viro@ZenIV.linux.org.uk authored
Signed-off-by:
Al Viro <viro@zeniv.linux.org.uk> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
viro@ZenIV.linux.org.uk authored
NDEBUG and NDEBUG_ABORT are almost always used as integers in NCR5380; added define to 0 if they are not defined, switched lone ifdef NDEBUG into if. Signed-off-by:
Al Viro <viro@zeniv.linux.org.uk> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
Pekka Enberg authored
This patch converts kcalloc(1, ...) calls to use the new kzalloc() function. Signed-off-by:
Pekka Enberg <penberg@cs.helsinki.fi> Signed-off-by:
Andrew Morton <akpm@osdl.org> Signed-off-by:
Linus Torvalds <torvalds@osdl.org>
-
Jeff Garzik authored
This function will go away when pci_intx() finally makes it into the core PCI layer.
-
- 06 Sep, 2005 6 commits
-
-
Brett Russ authored
This is my libata compatible low level driver for the Marvell SATA family. Currently it successfully runs in PIO mode on a 6081 chip. EDMA support is in the works and should be done shortly. Review, testing (especially on other flavors of Marvell), comments welcome. Signed-off-by:
Brett Russ <russb@emc.com> Signed-off-by:
Jeff Garzik <jgarzik@pobox.com>
-
Brett Russ authored
ata_get_mode_mask() uses bits 3 and 4 in the pio_mask to represent PIO modes 3 and 4. The value read from the drive, which reports support for PIO3 and PIO4 in bits 0 and 1, is shifted left by 3 bits and OR'd with 0x7 (which then corresponds to PIO 2-0 in libata). Thus, the drivers below need adjustments to comply with the way pio_mask is used. I changed the masks from the commented values to all support PIO4-0, since the spec mandates that PIO0-2 are supported and there's no reason not to support PIO3 IMO. Signed-off-by:
Brett Russ <russb@emc.com> Signed-off-by:
Jeff Garzik <jgarzik@pobox.com>
-
Jeff Garzik authored
Most serious is fixing include/sound/pcm.h, which breaks the DocBook build. The other stuff is just filling in things that cause warnings.
-
James Bottomley authored
scsi_io_completion() can be a bit noisy about certain conditions. Previously this wasn't a problem for internally generated commands, since they never hit it. However, since we do all SCSI commands via bios, now they do. user CD testers like magicdev are now getting not ready messages every time they touch the CD to see if there's anything in it. Fix this by making all scsi_execute commands REQ_QUIET and making scsi_finish_io() not say anything for REQ_QUIET. Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
Christoph Hellwig authored
Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-
Christoph Hellwig authored
Signed-off-by:
James Bottomley <James.Bottomley@SteelEye.com>
-