Re: 2.6.22-rc4-mm2

From: Andrew Morton
Date: Thu Jun 07 2007 - 03:19:46 EST


On Thu, 7 Jun 2007 00:05:13 -0700 William Lee Irwin III <wli@xxxxxxxxxxxxxx> wrote:

> On Thu, Jun 07, 2007 at 12:01:25AM -0700, Andrew Morton wrote:
> >> config, please?
>
> On Thu, Jun 07, 2007 at 12:04:07AM -0700, William Lee Irwin III wrote:
> > It's the sparc32 defconfig. Included below for completeness.
>
> The error output looks like the following.
>
>
> ERROR: "movable_zone" [fs/romfs/romfs.ko] undefined!
> ERROR: "movable_zone" [fs/isofs/isofs.ko] undefined!
> ERROR: "movable_zone" [fs/cifs/cifs.ko] undefined!
> ERROR: "movable_zone" [fs/afs/kafs.ko] undefined!
> ERROR: "movable_zone" [drivers/block/loop.ko] undefined!
> make[1]: *** [__modpost] Error 1
> make: *** [modules] Error 2
> make: *** Waiting for unfinished jobs....
> arch/sparc/mm/built-in.o: In function `kmap_atomic':
> (.text+0x433c): undefined reference to `movable_zone'
> arch/sparc/mm/built-in.o: In function `kmap_atomic':
> (.text+0x4348): undefined reference to `movable_zone'
> mm/built-in.o: In function `iov_iter_copy_from_user':
> (.text+0x770): undefined reference to `movable_zone'
> mm/built-in.o: In function `iov_iter_copy_from_user':
> (.text+0x844): undefined reference to `movable_zone'
> mm/built-in.o: In function `iov_iter_copy_from_user':
> (.text+0x850): undefined reference to `movable_zone'
> mm/built-in.o:(.text+0x870): more undefined references to `movable_zone' follow
> make[1]: *** [arch/sparc/boot/image] Error 1

hm, OK, this seems to work:

--- a/include/linux/mmzone.h~a
+++ a/include/linux/mmzone.h
@@ -541,10 +541,13 @@ static inline int populated_zone(struct
return (!!zone->present_pages);
}

+#ifdef CONFIG_ARCH_POPULATES_NODE_MAP
extern int movable_zone;
+#endif
+
static inline int zone_movable_is_highmem(void)
{
-#ifdef CONFIG_HIGHMEM
+#if defined(CONFIG_HIGHMEM) && defined(CONFIG_ARCH_POPULATES_NODE_MAP)
return movable_zone == ZONE_HIGHMEM;
#else
return 0;
_

(the first ifdef is just there to trip things at compile time rather than
link time)
-
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/