Russell King <[email protected]> wrote:
> Since we map the whole lot in one go, if you get one page, there's no
> reason why you shouldn't get the lot. This is why I'm wondering if
> it has something to do with your other modifications.
my colleage has found the bug: in the function dma_mmap in
arch/arm/mm/consistent.c the call to remap_pfn_range uses user_size in
PAGE_SIZE units, but looks like it is expected in bytes. When using
(user_size << PAGE_SHIFT), it works.
I don't know, where to fix it: Should the lower level calls get the size in
bytes (most function arguments in Linux kernel sources are not commented),
this means fixing the dma_mmap, or should PAGE_SIZE be used, then the lower
level functions needs to be fixed.
--
Frank Bu?, [email protected]
http://www.frank-buss.de, http://www.it4-systems.de