Re: ATA problem in Parallels: warnings -> failures

From: Gary Jennejohn <gary.jennejohn_at_freenet.de>
Date: Thu, 17 Apr 2008 19:34:30 +0200
On Thu, 17 Apr 2008 14:46:23 +0100 (BST)
Robert Watson <rwatson_at_FreeBSD.org> wrote:

> 
> Dear Soren,
> 
> Since my most recent kernel update, the intermittent TIMEOUT - READ_DMA 
> warnings I get on my parallels install appear to have become somewhat less 
> innocuous:
> 
> ad0: TIMEOUT - READ_DMA retrying (1 retry left) LBA=38669679
> ad0: FAILURE - already active DMA on this device
> ad0: setting up DMA failed
> g_vfs_done():ad0s1e[READ(offset=18188230656, length=2048)]error = 5
> cvs update: in directory modules/tx:
> cvs [update aborted]: cannot read CVS/Repository: Input/output error
> 
> In the past, this appeared to be a symptom of long and unexplained delays in 
> Parallel's ATA -> image file operation, but were not harmful as the retried 
> operation succeeded.  However, it seems that this is no longer the case, with 
> errors exposed to higher levels of the file system.  Do you have any 
> suggestions?
> 

I see this eror on real hardware (PATA DVD hooked to nVidia nForce MCP61
UDMA133 controller) with a kernel generated today:

Apr 17 13:11:07 peedub kernel: acd0: TIMEOUT - READ_BIG retrying (1 retry left)
Apr 17 13:11:07 peedub kernel: acd0: FAILURE - already active DMA on this device
Apr 17 13:11:07 peedub kernel: acd0: setting up DMA failed
Apr 17 13:11:07 peedub kernel: g_vfs_done():acd0[READ(offset=4315742208, length=65536)]error = 5
Apr 17 13:11:07 peedub kernel: g_vfs_done():acd0[READ(offset=29360128, length=65536)]error = 5
Apr 17 13:11:07 peedub kernel: g_vfs_done():acd0[READ(offset=33554432, length=65536)]error = 5
Apr 17 13:11:41 peedub kernel: g_vfs_done():acd0[READ(offset=1103101952, length=65536)]error = 5
Apr 17 13:12:08 peedub kernel: g_vfs_done():acd0[READ(offset=2172649472, length=65536)]error = 5
Apr 17 13:12:42 peedub kernel: g_vfs_done():acd0[READ(offset=3242196992, length=65536)]error = 5
Apr 17 13:13:15 peedub kernel: g_vfs_done():acd0[READ(offset=4311744512, length=65536)]error = 5
Apr 17 13:13:15 peedub kernel: g_vfs_done():acd0[READ(offset=563200, length=2048)]error = 5

It almost looks like the driver isn't cleaning up pending DMAs when a
hard error occurs.

---
Gary Jennejohn
Received on Thu Apr 17 2008 - 15:34:33 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:29 UTC