Re: [PATCH 0/16] DMA-API debugging facility v2

From: FUJITA Tomonori
Date: Sun Jan 11 2009 - 01:27:34 EST


On Fri, 9 Jan 2009 23:37:47 +0100
Joerg Roedel <joro@xxxxxxxxxx> wrote:

> On Fri, Jan 09, 2009 at 11:33:27PM +0100, Joerg Roedel wrote:
> > > This was triggered during pci_unmap_page() -> dma_unmap_single() where
> > > check_unmap() did not find the entry.
> > >
> > > The original mapping was done in bnx2 using pci_map_page(). I did not
> > > see how the debug entry was added to the hash during the call to
> > > pci_map_page() -> dma_map_page(). Did I miss something?
> >
> > dma_map_page() results in dma_map_single() -> debug_map_single() call on
> > x86. This way the entry would be added. Maybe the error from a double
> > free?
>
> Ah, it only calls ops->map_single. Thanks for pointing that out. I will
> add a call to debug_map_single to dma_map_page too. So the error above
> may be a false positive.

Then you will find that the interface of debug_map_single is wrong.
You can't use cpu address here. I explained this to you before:

http://marc.info/?t=123116736500005&r=1&w=2
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/