Re: include/asm-arm/memory.h changes break zaurus sl-5500 boot

From: KAMEZAWA Hiroyuki
Date: Sun Apr 02 2006 - 20:17:47 EST


On Mon, 3 Apr 2006 00:23:14 +0200
Pavel Machek <pavel@xxxxxx> wrote:
> > Not surprising given this gem:
> >
> > > -#define arch_local_page_offset(pfn, nid) (LOCAL_MAP_NR((pfn) << PAGE_OFFSET))
> >
> > PAGE_OFFSET being 3GB - that's one hell of a shift value!
>
> Unfortunately this is mainline now. Is there some better fix than
> simply reverting the offending patches?

Maybe this one will fix (against 2.6.16-mm2)

LOCAL_MAP_NR(kaddr) returns page offset in a node.


-Kame
==
Index: linux-2.6.16-mm2/include/asm-arm/memory.h
===================================================================
--- linux-2.6.16-mm2.orig/include/asm-arm/memory.h
+++ linux-2.6.16-mm2/include/asm-arm/memory.h
@@ -188,7 +188,7 @@ static inline __deprecated void *bus_to_
*/
#include <linux/numa.h>
#define arch_pfn_to_nid(pfn) (PFN_TO_NID(pfn))
-#define arch_local_page_offset(pfn, nid) (LOCAL_MAP_NR((pfn) << PAGE_OFFSET))
+#define arch_local_page_offset(pfn, nid) (LOCAL_MAP_NR(__va((pfn) << PAGE_SHIFT)))

#define pfn_valid(pfn) \
({ \

-
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/