[lkml]   [2007]   [Jun]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: Oops in a driver while using SLUB as a SLAB allocator
On Fri, Jun 22, 2007 at 05:26:33AM +0100, Hugh Dickins wrote:
> On Thu, 21 Jun 2007, Christoph Lameter wrote:
> > On Thu, 21 Jun 2007, Hugh Dickins wrote:
> >
> > > > The oops seems to occur after a page unmapping using dma_unmap_page() followed
> > > > by a flush_dcache_page() (in at91mci_post_dma_read()).
> >
> > Was the page allocated using slab calls?
> You've found yes (in the ARM case).
> > Well one may be better off allocating pages using the page allocator
> > instead of the slab allocator. I removed these things from i386 but I did
> > not check ARM.
> They may or may not be: I think that's a matter to discuss with rmk.

The coherent case on ARM is broken in more ways, not only because
it uses kmalloc, but it also takes no notice of the DMA mask.

However, AT91 isn't a coherent ARM architecture, so arch_is_coherent()
should be false. Therefore, we should never be allocating pages for
DMA from SLAB/SLUB for AT91 platforms.

Russell King
Linux kernel 2.6 ARM Linux -
maintainer of:
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2007-06-22 09:03    [W:0.176 / U:69.756 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site