Benjamin, I was reading this when I saw Kiko's response, so he saved me some effort. Really good. It assumes that you understand the general memory allocator and other memory types, it might be an idea to sketch this out. More comments inline.
Dave
On Tue, 2011-09-06 at 19:40 -0300, Christian Robottom Reis wrote:
On Tue, Sep 06, 2011 at 02:13:38PM +0200, Benjamin Gaignard wrote:
I'm writing documentation about CMA ( https://wiki.linaro.org/OfficeofCTO/MemoryManagement?action=AttachFile&d... ) and DMA_Buf ( https://wiki.linaro.org/OfficeofCTO/MemoryManagement?action=AttachFile&d... )
The goal is to explain outside the Linaro community how CMA and DMA_Buf works.
This is great work, thanks for putting it together, Benjamin.
+1
Slide 3 of the CMA deck is a bit misleading when it starts by saying "grabs memory on system boot", but it's otherwise a good summary.
Does it not grab it at system start up?
Does it make sense to cover what happens when unmoveable pages are requested but there isn't enough memory available to allocate outside of the CMA area?
Fits with my comment about how the whole memory allocator works, including CMA.
The DMA buffer slides still need some work to put them in context, as it starts too low-level to help the reader get the big picture -- i.e. what problem are we trying to solve? But I trust you're planning on fleshing that out as you work on the slides.
Yes, should also cover IOMMU set up / tear down in future, no?
Can this be a lead-in to actually setting up an area in the wiki which organizes the current status on the various MM-related threads underway? I feel that now that we are putting together integration trees and documentation it would be a good time to invest in making them easy to find.
I like this idea. Also, this would make a good whitepaper or a presentation / training at an event.
Many thanks, Dave