Re: [PATCH, RFD]: Unbreak no-mmu mmap

Greg Ungerer
2007-06-27T05:51:18Z

Bryan Wu wrote:
> On Wed, 2007-06-20 at 12:00 +0900, Paul Mundt wrote:
>> On Fri, Jun 08, 2007 at 03:53:49PM +0200, Bernd Schmidt wrote:
>>> diff --git a/mm/nommu.c b/mm/nommu.c
>>> index 2b16b00..7480a95 100644
>>> --- a/mm/nommu.c
>>> +++ b/mm/nommu.c
>> [snip]
>>> + /*
>>> + * Must always set the VM_SPLIT_PAGES flag for single-page allocations,
>>> + * to avoid trying to get the order of the compound page later on.
>>> + */
>>> + if (len == PAGE_SIZE)
>>> + vma->vm_flags |= VM_SPLIT_PAGES;
>>> + else if (flags & MAP_SPLIT_PAGES
>> And now you've just broken every non-blackfin nommu platform, as you've
>> only defined MAP_SPLIT_PAGES in asm-blackfin/mman.h.
>>
>>> +#ifdef CONFIG_NP2
>>> + || len < total_len
>>> +#endif
>> And what is this? It only shows up in the blackfin defconfig. This is not
>> the place to be putting board-specific hacks.
>
> Yes, it is our own NP2 memory allocator option. I think Bernd will fix
> it.

Theres no reason you can't add the MAP_SPLIT_PAGES define in
all the necessary places too.

>> On Tue, Jun 19, 2007 at 07:26:19PM -0400, Robin Getz wrote:
>>> I'm assuming that since no one had any large objections, that this is OK, and
>>> we should send to Andrew to live in -mm for awhile?
>>>
>> No real objections to the approach, but it would be nice if these sorts
>> of things were test compiled for at least one platform that isn't yours,
>> so the obviously broken stuff is fixed before it's posted and someone
>> else has to find out about it later.
>
> Exactly, Could please do some simple test on your SH-NOMMU platform? And
> we are waiting for some feedback from other nommu arch maintainers.
>
> David and Grep could you please help on this? Maybe Robin got some m68k
> nommu by hand which can be used for testing, I only have Blackfin, -:))

I have compiled the patch on m68knommu (after adding a MAP_SPLIT_PAGES
define). And it seems to work ok with simple testing.

I don't have a problem with the change, though please do add that
MAP_SPLIT_PAGES define in the appropriate mman.h includes. And like Paul
said there is no place for CONFIG_NP2 in it currently. Please take
that out.

Regards
Greg

------------------------------------------------------------------------
Greg Ungerer -- Chief Software Dude EMAIL: gerg@snapgear.com
Secure Computing Corporation PHONE: +61 7 3435 2888
825 Stanley St, FAX: +61 7 3891 3630
Woolloongabba, QLD, 4102, Australia WEB: http://www.SnapGear.com