On Sun, Mar 10, 2002 at 05:46:19PM +0100, Peter Osterlund wrote:
On Sat, 9 Mar 2002, Paul wrote:
Previously, using packet-2.4.18-pre4.patch, it worked, but I would get loads of these messages:
Feb 20 21:29:27 squish kernel: Device 0b:00 not ready: cmd=0, sector=10124, nr_sectors=116 ...
Now, I get these guys, but just every second or so, when writing.
Mar 9 23:04:38 squish kernel: scsi : aborting command due to timeout : pid 3160, scsi0, channel 0, id 0, lun 0 0x35 00 00 00 00 00 00 00 00 00
It looks like the flush cache command needs more than 5 seconds to finish. Does this patch help?
--- linux/drivers/block/pktcdvd.c.old Sun Mar 10 17:22:01 2002 +++ linux/drivers/block/pktcdvd.c Sun Mar 10 17:21:36 2002 @@ -1633,6 +1633,7 @@ init_cdrom_command(&cgc, NULL, 0, CGC_DATA_NONE); cgc.cmd[0] = GPCMD_FLUSH_CACHE; cgc.quiet = 1; + cgc.timeout = 20*HZ;
/* * the IMMED bit -- we default to not setting it, although that
I still get scsi timeouts with the timeout set to 20*HZ. Increasing it to 60*HZ got a large write to complete. I'd assume the required value would actually be based on the cache size of the drive and the write speed. (a huge cache writing at 1x being the worst case). Ben