[Top] [All Lists]

Re: [PATCH] Revert fixrange_init() limiting to the FIXMAP region.

To: Kevin Cernekee <>
Subject: Re: [PATCH] Revert fixrange_init() limiting to the FIXMAP region.
From: "Yegoshin, Leonid" <>
Date: Tue, 10 Apr 2012 04:36:32 +0000
Accept-language: en-US
Cc: "Hill, Steven" <>, "" <>, "" <>
In-reply-to: <>
References: <> <> <>,<>
Thread-index: AQHNFmvjyxzTeoUc7kiyOTfHHJfdRZaT0n6A//+Mh9eAAIXyAP//lTTZ
Thread-topic: [PATCH] Revert fixrange_init() limiting to the FIXMAP region.
Yes, MIPS HIGHMEM patch for cache aliasing systems (published today) works 
beyond PKMAP region - extended kmap_atomic.

- Leonid.

On Apr 9, 2012, at 8:58 PM, "Kevin Cernekee" <> wrote:

> On Mon, Apr 9, 2012 at 7:59 PM, Yegoshin, Leonid <> wrote:
>> Sorry, it was a couple of months ago while I worked on HIGHMEM with cache 
>> aliasing. I got a soak test failure and rollback of this patch helped.
> Is it possible that HIGHMEM / kmap was using pages above the PKMAP
> range, and the bug was masked by re-enabling the old behavior (create
> PMDs all the way up to the top of the virtual address space)?
>> Besides that it is clearly wrong to add unmodified memory area length to 
>> aligned start address of that memory. It seems easy to fix but I hadn't time.
> On the pre-464fd83e implementation, that would have been a problem
> because of the "vaddr != end" terminating condition.
> On the post-464fd83e implementation, it should be fine because we are
> checking for "vaddr < end" instead.  This means we should get just
> enough PMDs to cover the requested range.
> I just checked one of my systems and it is calling
> fixrange_init(0xff000000, 0xff039000, pgd_base).  This creates a
> single PMD covering a 4MB range, as expected.

<Prev in Thread] Current Thread [Next in Thread>