Date: Thu, 22 Nov 2007 15:32:04 -0800 From: Nate Lawson <nate@root.org> To: Maxim Sobolev <sobomax@FreeBSD.org> Cc: cvs-src@FreeBSD.org, src-committers@FreeBSD.org, Robert Watson <rwatson@FreeBSD.org>, cvs-all@FreeBSD.org, =?ISO-8859-1?Q?S=F8ren_Schmidt?= <sos@deepcore.dk> Subject: Re: cvs commit: src/sys/dev/ata ata-all.h ata-chipset.c ata-dma.c ata-pci.c ata-pci.h atapi-cd.c atapi-fd.c atapi-tape.c Message-ID: <47461174.2060104@root.org> In-Reply-To: <4746075D.9000108@FreeBSD.org> References: <200711212115.lALLF16n017990@repoman.freebsd.org> <4744DE58.9090005@FreeBSD.org> <4744EF09.4060009@FreeBSD.org> <474533A4.3030106@deepcore.dk> <20071122082847.N60495@fledge.watson.org> <4746075D.9000108@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Maxim Sobolev wrote: > Robert Watson wrote: >> On Thu, 22 Nov 2007, Søren Schmidt wrote: >> >>>>>> FreeBSD src repository >>>>>> >>>>>> Modified files: (Branch: RELENG_7) >>>>>> sys/dev/ata ata-all.h ata-chipset.c ata-dma.c ata-pci.c >>>>>> ata-pci.h atapi-cd.c atapi-fd.c atapi-tape.c Log: >>>>>> Update with the latest fixes from -current. >>>>> >>>>> Please don't forget to merge at least atapi-cd.c fix into RELENG_6. >>>>> Currently CD is not working in Parallels with 6.3-PRERELEASE. >>>> >>>> Also, I see some "ad0: TIMEOUT - WRITE_DMA (retrying)" messages with >>>> Parallels using latest 6.3-PRERELEASE snapshot. Not sure if it's due >>>> to some changes between 6.2 and 6.3, but I've never seen this with >>>> 6.2. Any ideas? >>> >>> I have a complete backport of all the latest fixes done for 6.3 >>> awaiting approval. >>> >>> I've seen such a timeout once on 6.3 before I merged the latest >>> changes, since then I've not seen any, not that it means much though :) >> >> I see them any time I do anything involving significant disk load >> under Parallels--I've always assumed it was because there are several >> layers of indirection, including HFS+ and an expanding Parallels disk >> image, beween the FreeBSD ATA driver and hardware, leading to >> significantly longer delays than the ATA driver would expect from >> normal hardware. That said, I'm fine with being wrong and seeing a >> bug fixed :-). I usually get several each time I buildkernel, such as >> last night: >> >> ad0: TIMEOUT - READ_DMA retrying (1 retry left) LBA=5208191 >> ad0: TIMEOUT - READ_DMA retrying (1 retry left) LBA=23670111 >> ad0: TIMEOUT - READ_DMA retrying (1 retry left) LBA=5843715 >> ad0: TIMEOUT - WRITE_DMA retrying (1 retry left) LBA=40407615 > > Assuming that there are no actual bugs in the code, should not it make > sense to detect virtual hardware and treat it a little bit differently > with respect to timeouts? Given the growing popularity of virtualization > technology it's doesn't sound like a worthless project. Last time I looked at the ata code, I found the timeout was much too low for common drives (non-virtual). Anything that took a little longer to spin up from idle or under heavy shared irq load would time out and retry. I think I bumped it up to 30 seconds and kept retry count at 5. -- Nate
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?47461174.2060104>