problems with dma_alloc_coherent and consistent_alloc

2 messages, 2 authors, 2005-10-06 · open the first message on its own page

problems with dma_alloc_coherent and consistent_alloc

From: Earl Olsen <hidden>
Date: 2005-10-05 21:21:02

(Sorry, I had trouble outlook and messed up the subject line)

We are using a PPC 750 with 512m of RAM.  

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,
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?

Thanks

--
Earl Olsen
Senior Software Engineer
Dilithium Networks, Inc.
TEL:+1 707-792-3925
earl.olsen@dilithiumnetworks.com
www.dilithiumnetworks.com

Communications for a Borderless World

This electronic message from Dilithium Networks contains information
which may be privileged or confidential. It is intended to be for the
use of the recipient(s) named above. If you are not the intended
recipient please return the message to the sender by replying to it and
then delete the message from your computer. Dilithium Networks shall not
be held liable to any person resulting from the use of any information
contained in this e-mail and shall not be liable to any person who acts
or omits to do anything in reliance upon it. Dilithium Networks does not
accept responsibility for changes made to this message after it was
sent.

Re: problems with dma_alloc_coherent and consistent_alloc

From: Marcelo Tosatti <hidden>
Date: 2005-10-06 13:52:33

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.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help