Date: Fri, 3 Jan 2003 06:36:29 +1100 (EST) From: Bruce Evans <bde@zeta.org.au> To: Bruce Campbell <bruce@engmail.uwaterloo.ca> Cc: freebsd-hardware@FreeBSD.ORG, <freebsd-questions@FreeBSD.ORG> Subject: Re: Followup to "fallback to PIO mode" on dual processor AMD systems Message-ID: <20030103062516.F755-100000@gamplex.bde.org> In-Reply-To: <1041526384.3e146e708b8e4@www.nexusmail.uwaterloo.ca>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 2 Jan 2003, Bruce Campbell wrote: > At present, I don't suspect bad media because the error message is > "WRITE command timeout tag=0 serv=0" which doesn't suggest a specific > sector/track etc, and running with UDMA33 instead of UDMA100 makes the problem > appear to vanish. The fallback is clearly wrong because it turns isolated media errors into pessimized i/o for the whole disk at best, system hangs during resets next best, and system crashes at worst. I keep a disk with bad media on line for testing some of this, and zap the fallback using the following patch (hope this is complete; it was edited from a larger patch). %%% Index: ata-disk.c =================================================================== RCS file: /home/ncvs/src/sys/dev/ata/ata-disk.c,v retrieving revision 1.139 diff -u -2 -r1.139 ata-disk.c --- ata-disk.c 17 Dec 2002 16:26:22 -0000 1.139 +++ ata-disk.c 18 Dec 2002 01:03:37 -0000 @@ -597,5 +606,5 @@ else { ata_dmainit(adp->device, ata_pmode(adp->device->param), -1, -1); - printf(" falling back to PIO mode\n"); + printf(" NOT falling back to PIO mode\n"); } TAILQ_INSERT_HEAD(&adp->device->channel->ata_queue, request, chain); @@ -603,4 +612,5 @@ } +#if 0 /* if using DMA, try once again in PIO mode */ if (request->flags & ADR_F_DMA_USED) { @@ -613,4 +623,5 @@ return ATA_OP_FINISHED; } +#endif request->flags |= ADR_F_ERROR; %%% Bruce To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030103062516.F755-100000>