Google
  Web www.spinics.net

Re: warning on device removal

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


At Thu, 4 Sep 2008 14:36:48 +0200,
Oliver Neukum wrote:
> 
> Am Donnerstag 04 September 2008 14:20:22 schrieb Dmitry Baryshkov:
> > Hi,
> > 
> > I've got the following trace on one of my arm boards when removing
> > the usb masstorage device:
> > 
> > ------------[ cut here ]------------
> > WARNING: at /home/lumag/tosa-tree/arch/arm/mm/consistent.c:368 dma_free_coherent+0x34/0x248()
> > Modules linked in:
> > [<c0028fe4>] (dump_stack+0x0/0x14) from [<c003c810>] (warn_on_slowpath+0x4c/0x84)
> > [<c003c7c4>] (warn_on_slowpath+0x0/0x84) from [<c0029e54>] (dma_free_coherent+0x34/0x248)
> 
> Looks like a principal problem we have with that architecture.
> Is arm incapable of supporting buffer freeing in hard irq context
> or do we use the wrong API?

According to DMA-API.txt, dma_free_coherent() must be called with IRQ
enabled:

> void
> dma_free_coherent(struct device *dev, size_t size, void *cpu_addr,
>			   dma_addr_t dma_handle)
...
> Note that unlike their sibling allocation calls, these routines
> may only be called with IRQs enabled.


Takashi
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Home]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]    [Yosemite Photos]    [Video Projectors]     [PDAs]     [Free Online Dating]     [Hacking TiVo]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Devices]     [Big List of Linux Books]     [16.7MP]

Add to Google Powered by Linux