[PATCH] ARM: relax conditions required for enabling Contiguous Memory Allocator
Russell King - ARM Linux
linux at arm.linux.org.uk
Tue Aug 21 08:12:56 EDT 2012
On Mon, Aug 20, 2012 at 08:01:23PM +0000, Arnd Bergmann wrote:
> The patch looks simple, but I want a better explanation for it.
> When we went through all possible cases, we decided that:
>
> * ARMv6+ need CMA to avoid the double mapping problem.
> * ARMv4/v5 cannot generally use CMA because it doesn't work
> together with DMABOUNCE. I don't remember if it was the
> only problem, but I definitely remember this was intentional.
> * We want a common kernel for all ARMv6+ eventually, and a
> separate kernel for all ARMv4/v5 ones.
>
> If the reasoning has changed, please try to explain the full
> situation.
Indeed.
> On a related topic, what happened to the idea that
> ARMv6+ is broken without CMA? I noticed that it's optional
> now.
With Marek's patch, it's always selected for MMU-based builds (it can't
be disabled). Before the patch, it was always selected for V6 and later
CPUs.
And the description doesn't make sense:
"Contiguous Memory Allocator requires only paging and MMU enabled not
particular CPU architectures,"
what does "only paging and MMU enabled" mean? Are you trying to say that
CMA only requires a kernel with MMU support?
More information about the linux-arm-kernel
mailing list