- 19 Nov, 2004 7 commits
-
-
Jens Axboe authored
If the command is already completed, megaraid_queue_command() must return 0. Signed-off-by: Jens Axboe <axboe@suse.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Jens Axboe authored
aac_read() and aac_write() may complete a command but return -1, which is propagated through aac_scsi_cmd() to the mid layer through ->queuecommand. If the command has been completed, it must return 0. Signed-off-by: Jens Axboe <axboe@suse.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Jens Axboe authored
The driver appropriately returns SCSI_MLQUEUE_HOST_BUSY, but it has already completed the command. Just return 0 instead and let the mid layer handle it through scsi_done(). Signed-off-by: Jens Axboe <axboe@suse.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Jens Axboe authored
One more case of returning non-zero with a completed command. Signed-off-by: Jens Axboe <axboe@suse.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Jens Axboe authored
In case of scb allocation failure, mega_build_cmd() can return NULL scb but set busy, which causes a non-zero return from ->queuecommand() while the scsi command has been completed. Just returning busy without calling done() should be enough for appropriate retries. Signed-off-by: Jens Axboe <axboe@suse.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Jens Axboe authored
ide-scsi completes a command but returns ownership to the mid layer. Signed-off-by: Jens Axboe <axboe@suse.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Jens Axboe authored
If your ->queuecommand() completes a command through done, it must not return non-zero to the mid layer so that it takes ownership of the command again. Signed-off-by: Jens Axboe <axboe@suse.de> corrected typo Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
- 18 Nov, 2004 1 commit
-
-
James Bottomley authored
Because of the changes to add the target in to the driver model, the cancellation method no-longer works correctly. Fix it by iterating using shost_for_each_device instead. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
- 16 Nov, 2004 22 commits
-
-
Thomas Gleixner authored
To make spinlock/rwlock initialization consistent all over the kernel, this patch converts explicit lock-initializers into spin_lock_init() and rwlock_init() calls. Currently, spinlocks and rwlocks are initialized in two different ways: lock = SPIN_LOCK_UNLOCKED spin_lock_init(&lock) rwlock = RW_LOCK_UNLOCKED rwlock_init(&rwlock) this patch converts all explicit lock initializations to spin_lock_init() or rwlock_init(). (Besides consistency this also helps automatic lock validators and debugging code.) The conversion was done with a script, it was verified manually and it was reviewed, compiled and tested as far as possible on x86, ARM, PPC. There is no runtime overhead or actual code change resulting out of this patch, because spin_lock_init() and rwlock_init() are macros and are thus equivalent to the explicit initialization method. That's the second batch of the unifying patches. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
James Bottomley authored
Fix a missed piece of junk from a typedef conversion in st.h Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Jamie Lenehan authored
Call pci_disable_device if initialisation fails and during cleanup. Signed-off-by: Jamie Lenehan <lenehan@twibble.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Jamie Lenehan authored
Store the port and irq in unsigned long and unsigned int's instead of as u16's and u8's. The later was fine on x86 but not on sparc64. Signed-off-by: Jamie Lenehan <lenehan@twibble.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Jamie Lenehan authored
Store the PCI device pointer into the adapter control block. This is used in the pci_map_*/pci_unmap_* calls and previously it would have been set to NULL. This appears to be no problem for x86 but is a problem for sparc64. Signed-off-by: Jamie Lenehan <lenehan@twibble.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Adrian Bunk authored
- make all this needlessly global code static - remove the unused firmware_version variables Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Adrian Bunk authored
The patch below makes a needlessly global struct static. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Adrian Bunk authored
The patch below makes the needlessly global function adapter_init_chip static. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Adrian Bunk authored
The patch below makes the function is870 which has no external users static. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Adrian Bunk authored
The patch below makes some needlessly global code static. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Guennadi Liakhovetski authored
Streamline EEPROM handling code The patch below is a fixed (and slightly reworked) patch from Christoph. Thanks to Chiaki Ishikawa for fixes and tests. Original author: Christoph Hellwig Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Alan Stern authored
A number of USB mass storage devices return the wrong value in response to READ CAPACITY: They give the total number of blocks rather than the highest block number. Currently the usb-storage driver tries to adjust for this by altering the contents of the reply buffer. That's not a very good idea because it prevents users from seeing what the device actually has to say; it violates the principle that a transport should do nothing more than transfer data. This patch moves the responsibility for adjusting the capacity to the sd driver instead, by adding a new device flag. After this has been merged the corresponding change (to set the flag) will be made to the usb-storage driver. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Guennadi Liakhovetski authored
Use scsi_track_queue_full(), don't lie about driver's queueing abilities. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Cal Peake authored
This patch updates Documentation/kernel-parameters.txt with the proper SCSI LUNs params and adds a description for 'max_luns'. Signed-off-by: Cal Peake <cp@absolutedigital.net> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Andrew Morton authored
From: Miles Bader <miles@gnu.org> Signed-off-by: Miles Bader <miles@gnu.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Andrew Morton authored
From: "Bagalkote, Sreenivas" <sreenib@lsil.com> We are releasing megaraid 2.20.4.1 driver. This version fixes two issues - - Handle IOCTL command timeouts properly - Replace incorrectly introduced pci_dma_sync_{sg,single}_for_cpu with correct pci_dma_sync_{sg,single}_for_device. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Mark Haverkamp authored
This patch updates the rx check health function. My previous only updated the rkt check health code. This and the previous patch should fix the kmalloc return checking bug: http://bugme.osdl.org/show_bug.cgi?id=3699Signed-off-by: Mark Haverkamp <markh@osdl.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Kai Mäkisara authored
On Tue, 2 Nov 2004, Marc Thomas wrote: > I've noticed that in 2.6.10-rc1 the "mt tell" command (from mt-st) fails to > report SCSI tape position, returning "No such device". Other tape (read) > operations appear to be ok. It worked fine in 2.6.9-rc4. The patch at the end of this message should fix this (passes basic tests). Someone added the ioctl to reset the SCSI device but the error handling is not quite correct. The code in 2.6.10-rc1 allows st_ioctl to continue unless reset succeeded. The fix allows continuation only if scsi_nonblockable_ioctl() does not handle the ioctl (returns -ENODEV). retval is cleared because the following code assumes it is zero unless set to something else. Signed-off-by: Kai Makisara <kai.makisara@kolumbus.fi> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Mark Haverkamp authored
This patch updates the adapter health check function and cleans up some unused interrupt related functions and macros. Signed-off-by: Mark Haverkamp <markh@osdl.org> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Adrian Bunk authored
On Sat, Oct 23, 2004 at 11:55:20AM +1000, Eyal Lebedinsky wrote: > Should the second line be indented? > > Qlogic QLA 1240/1x80/1x160 SCSI support (SCSI_QLOGIC_1280) [M/n/?] m > Qlogic QLA 1020/1040 SCSI support (SCSI_QLOGIC_1280_1040) [N/y/?] (NEW) y Correct, SCSI_QLOGIC_1280_1040 should depend on SCSI_QLOGIC_1280. The patch below does this. Additionally, it prevents the case that both drivers are built statically and both support the 1020/1040. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Bob Tracy authored
The attached minor patch to linux/drivers/scsi/pcmcia/sym53c500_cs.c allows interrupt sharing, which is evidently a "must have" feature for at least G4 PowerBooks (ppc architecture). The other user of the New Media Bus Toaster reports that his powerbook consistently assigns the yenta CardBus controller IRQ to whatever card he inserts. Signed-off-by: Bob Tracy <rct@frus.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
Brian King authored
The following patch fixes a race condition in sg of sg_cmd_done racing with sg_release. I've seen this bug hit several times on test machines and the following patch fixes it. The race is that if srp->done is set and the waiting thread gets a spurious wakeup immediately afterwards, then the waiting thread can end up executing and completing, then getting closed, freeing sfp before the wake_up_interruptible is called, which then will result in an oops. The oops is fixed by locking around the setting srp->done to 1 and the wake_up, and also locking around the checking of srp->done, which guarantees that the wake_up_interruptible will always occur before the sleeping thread gets a chance to run. Signed-off-by: Brian King <brking@us.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
- 15 Nov, 2004 1 commit
-
-
James Bottomley authored
From: Mike Christie <mikenc@us.ibm.com> > Oct 26 23:32:55 mina kernel: Unable to handle kernel paging request at > virtual address 6b6b6c7b > Oct 26 23:32:55 mina kernel: printing eip: > Oct 26 23:32:55 mina kernel: f882b8ce > Oct 26 23:32:55 mina kernel: *pde = 00000000 > Oct 26 23:32:55 mina kernel: Oops: 0000 [#1] > Oct 26 23:32:55 mina kernel: PREEMPT > Oct 26 23:32:55 mina kernel: Modules linked in: sd_mod usb_storage > ide_cd cdrom sg scsi_mod rd > Oct 26 23:32:55 mina kernel: CPU: 0 > Oct 26 23:32:55 mina kernel: EIP: 0060:[<f882b8ce>] Not tainted VLI > Oct 26 23:32:55 mina kernel: EFLAGS: 00010296 (2.6.10-rc1-mm1y) > Oct 26 23:32:55 mina kernel: EIP is at > scsi_block_when_processing_errors+0xe/0xe0 [scsi_mod] > Oct 26 23:32:55 mina kernel: eax: 00000000 ebx: 6b6b6b6b ecx: > f88ef640 edx: ec5b6578 > Oct 26 23:32:55 mina kernel: esi: e9baa4b8 edi: c17e9268 ebp: > e9677f0c esp: e9677eb4 > Oct 26 23:32:55 mina kernel: ds: 007b es: 007b ss: 0068 > Oct 26 23:32:55 mina kernel: Process fdisk (pid: 2891, > threadinfo=e9676000 task=ea0c61f0) > Oct 26 23:32:55 mina kernel: Stack: 00000000 00000001 00000000 00000000 > 00000000 00000000 00000000 00000000 > Oct 26 23:32:55 mina kernel: 00000000 00000000 00000003 e9677ef0 > c17e9268 0000006b c17e9268 e9677f0c > Oct 26 23:32:55 mina kernel: c0159761 c17e93e4 00000000 e9b98780 > e9baa4b8 c17e9268 e9677f24 f88ef6a8 > Oct 26 23:32:55 mina kernel: Call Trace: > Oct 26 23:32:55 mina kernel: [<c01056cf>] show_stack+0x7f/0xa0 > Oct 26 23:32:55 mina kernel: [<c0105876>] show_registers+0x156/0x1c0 > Oct 26 23:32:55 mina kernel: [<c0105af6>] die+0x156/0x2e0 > Oct 26 23:32:55 mina kernel: [<c011628d>] do_page_fault+0x36d/0x69c > Oct 26 23:32:55 mina kernel: [<c01051ed>] error_code+0x2d/0x38 > Oct 26 23:32:55 mina kernel: [<f88ef6a8>] sd_release+0x68/0xa0 [sd_mod] > Oct 26 23:32:55 mina kernel: [<c0184c03>] blkdev_put+0x183/0x1b0 > Oct 26 23:32:55 mina kernel: [<c01784ad>] __fput+0x14d/0x160 > Oct 26 23:32:55 mina kernel: [<c0176797>] filp_close+0x57/0x90 > Oct 26 23:32:55 mina kernel: [<c01768e3>] sys_close+0x113/0x240 > Oct 26 23:32:55 mina kernel: [<c0104ff1>] sysenter_past_esp+0x52/0x71 > Oct 26 23:32:55 mina kernel: Code: 0c 8b 43 04 8b 00 89 5c 24 04 c7 04 > 24 e4 d1 83 f8 89 44 24 08 e8 d3 21 8f c7 8d 76 00 55 89 e5 57 56 53 83 > ec 4c 8b 75 08 8b 1e <8b> 83 10 01 00 00 a8 08 74 7c fc 31 c0 8d 7d b4 > b9 05 00 00 00 The problem with using shost_for_each_device wrt to the above oops is that scsi_forget_host sets the state to SDEV_CANCEL, so that when scsi_host_cancel iterates over the devices using shost_for_each_device it cannot get a handle to the sdev (scsi_device_get fails becuase the state is set to SDEV_CANCEL). And, __scsi_iterate_devices does not clear the next pointer if this happens, so I think this is needed to fix just the refcount bug in shost_for_each_device. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-
- 14 Nov, 2004 3 commits
-
-
Linus Torvalds authored
-
Linus Torvalds authored
asked for it.
-
bk://bk.arm.linux.org.uk/linux-2.6-rmkLinus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
- 15 Nov, 2004 1 commit
-
-
Ben Dooks authored
Patch from Ben Dooks Update the s3c2410 machines for the new serial handling, as well as add the clock sources the bast and vr1000 rely on. Signed-off-by: Ben Dooks Signed-off-by: Russell King
-
- 14 Nov, 2004 5 commits
-
-
Ben Dooks authored
Patch from Ben Dooks Update the arch/arm/mach-s3c2410 core files for the new serial port bits, and fix the bugs with s3c2440 handling. Signed-off-by: Ben Dooks Signed-off-by: Russell King
-
Ben Dooks authored
Patch from Ben Dooks Clock code now uses the supplied device to check for the id of the clock, so uart clocks are now simply "uart" instead of "uart0", "uart1" and "uart2" Signed-off-by: Ben Dooks Signed-off-by: Russell King
-
Russell King authored
-
Russell King authored
-
Russell King authored
-