[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1233907006.17724.83.camel@macbook.infradead.org>
Date: Fri, 06 Feb 2009 07:56:46 +0000
From: David Woodhouse <dwmw2@...radead.org>
To: Chris Wright <chrisw@...s-sol.org>
Cc: Joerg Roedel <joerg.roedel@....com>, fujita.tomonori@....ntt.co.jp,
netdev@...r.kernel.org, iommu@...ts.linux-foundation.org,
mingo@...hat.com, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 0/16] DMA-API debugging facility v2
On Thu, 2009-02-05 at 18:05 -0800, Chris Wright wrote:
> extra tab
Thanks. Your code to hook it up is better than mine too. I'll steal
that.
> Sample output below (2 of ~2500 faults), pages don't appear to be
> mapped:
What machine did you get that on?
Yeah, I saw one of those. If could be a driver bug, of course -- it
could be unmapping a range before it's actually finished with it. But
that's unlikely.
An alternative explanation... The DMA is aborted¹, and the device
interrupts us to tell us about it at the _same_ time that the IOMMU
interrupts us to tell us about the fault. We process the device
interrupt first, unmap that buffer. And then we process the IOMMU
interrupt... and the buffer is already gone from the list.
It might be interesting to make this code also remember and print the
last range that was unmapped, as well as the currently-mapped ranges.
> (interesting hash_fn spread ;-)
Yeah, that's a little suboptimal, isn't it :)
--
David Woodhouse Open Source Technology Centre
David.Woodhouse@...el.com Intel Corporation
¹ due to the bug we're chasing now. The range _is_ supposed to be mapped.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists