Re: [PATCH] powerpc/mm: setting mmaped page cache property through device tree

From: Li Yang
Date: Tue Dec 01 2009 - 06:41:43 EST


On Tue, Dec 1, 2009 at 6:58 PM, Benjamin Herrenschmidt
<benh@xxxxxxxxxxxxxxxxxxx> wrote:
> On Tue, 2009-12-01 at 18:30 +0800, Li Yang wrote:
>> The patch adds the ability for powerpc architecture to set page cache
>> property of mmaped area through device tree. ÂThis is useful for two
>> cases. ÂFirst, for memory shared with other OS'es to have the same cache
>> property to avoid cache paradoxes. ÂSecond, enabling application to map
>> memory which is not managed by kernel as cacheable for better performance.
>
> But that doesn't solve the problem of those same pages being mapped
> cachable as part of the linear mapping does it ?

I think that it doesn't has this problem. Only regions out of
lmb.memory are configurable through device tree.

>
> Can you tell us more about your precise usage scenario ? What are you

The scenario for the first case is that in a multicore system running
ASMP which means different OS runs on different cores. They might
communicate through a shared memory region. The region on every OS
need to be mapped with the same cache perperty to avoid cache paradox.

The scenario for the second case is to pre-allocate some memory to a
certain application or device (probably through mem=XXX kernel
parameter or limit through device tree). The memory is not known to
kernel, but fully managed by the application/device. We need being
able to map the region cachable for better performance.

> trying to achieve here ? We can find a solution though it might involve
> a specific driver to handle that memory.

Right, but what the user to kernel API should be used? Is it ok to
use the O_SYNC flag as I previously proposed?

- Leo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/