Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 02 Mar 2004 07:28:15 +0100
From:      =?ISO-8859-1?Q?S=F8ren_Schmidt?= <sos@DeepCore.dk>
To:        Kris Kennaway <kris@obsecurity.org>
Cc:        sos@FreeBSD.ORG
Subject:   Re: NFS or ATA driver causes FS corruption?
Message-ID:  <4044297F.1080701@DeepCore.dk>
In-Reply-To: <20040302031226.GA670@xor.obsecurity.org>
References:  <20040302031226.GA670@xor.obsecurity.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Kris Kennaway wrote:
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=9440
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=20736
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=117088
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=119760
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=49736
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=118184
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=211232
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=48336
> swap_pager: indefinite wait buffer: device: ad0d, blkno: 36509, size: 4096
> swap_pager: indefinite wait buffer: device: ad0d, blkno: 6033, size: 12288
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=35240
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=20904
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=117560
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=206664
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=30312
> ad0: WARNING - READ_DMA interrupt was seen but timeout fired LBA=35593400
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=174496
> ad0: WARNING - READ_DMA interrupt was seen but timeout fired LBA=34345128
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=384704

The above means that *something* is stomping on the taskqueue that 
should take care of returning finished requests to the system (they are 
finished as the interrupt has been seen). I can avoid this by putting it
all back in interrupt context again as it was before, but it would be
better to get whatever it is that causes this fixed..

> This machine has the following ATA controller:
> 
> FreeBSD 5.2-CURRENT #3: Sun Feb 29 17:41:39 PST 2004
> ...
> atapci0: <AMD 8111 UDMA133 controller> port 0xd000-0xd00f at device 7.1 on pci0
> ata0: at 0x1f0 irq 14 on atapci0
> ata0: [MPSAFE]
> ata1: at 0x170 irq 15 on atapci0
> ata1: [MPSAFE]
> 
> Has anyone else seen this?

I've got the same one in the amd64 machine I've got here, no problems 
whatsoever, I can beat the snot out of it and it doesn't show this 
behavior, it "just works" (tm). But I'm not using NFS here at all since 
that has not worked for me for a looong time, but thats probably just my 
Murphy field....


-- 
-Søren



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4044297F.1080701>