problems with dma_alloc_coherent and consistent_alloc
Marcelo Tosatti
marcelo.tosatti at cyclades.com
Thu Oct 6 09:05:32 EST 2005
On Wed, Oct 05, 2005 at 02:21:01PM -0700, Earl Olsen wrote:
>
> (Sorry, I had trouble outlook and messed up the subject line)
>
> We are using a PPC 750 with 512m of RAM.
I dont know much about your hardware, but I'll shoot anyway.
> 1) When we try to allocate memory using consistent_alloc we get a
> failure with get_pteptr - there is no pte.
>
> 2) When we try using dma_alloc_coherent the system locks up when
> we try to access that memory.
>
> I'm guessing these problems stem from the memory being allocated
> is from the 384 bytes of RAM that gets handed over to BATs 2 AND 3,
You mean Mbytes?
> not the remaining memory handled by the page table.
>
> In the first case, pages are allocated, but since if came from the
> BAT region, will not have a page table mapping.
>
> In the second case, if dma_alloc_init gets memory from the BAT
> region, then we have the BAT and page management mechanisms
> both trying to control the memory.
>
> Does this sound like a good theory? Has anybody encountered
> this problem before?
The kernel should create pte tables for all RAM, even if parts of
memory are not accessed through pagetable mappings.
More information about the Linuxppc-embedded
mailing list