bus_dmamem_alloc confusion

Joerg Sonnenberger joerg at britannica.bec.de
Sun Oct 17 05:10:28 PDT 2004


On Fri, Oct 15, 2004 at 09:00:14PM -0700, Chuck Tuffli wrote:
> For a 4096 byte allocation the kva and
> bus address (b) were (a is the alignment)
> 
> Mem:  k=0xcc68f000 b=0x3c50000 a=0x1000

This is using the normal kernel slab allocator. The only think specialy
handled in bus_dmamem_alloc is that it is avoiding page crossing.

> 
> and for an 8096 byte allocation, the addresses come back
> 
> Mem:  k=0xcc6b4000 b=0x14000 a=0x2000

This is using contigmalloc, like all allocations over page size do.

How do you try to mmap the page?

Joerg





More information about the Kernel mailing list