current->mems_allowed is defined for CONFIG_CPUSETS. This broke !CPUSETS build. I compiled and linked tested both variants.
Signed-off-by: Bob Picco <[EMAIL PROTECTED]> include/linux/cpuset.h | 6 ++++++ mm/mempolicy.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) Index: linux-2.6.20-rc4-mm1/mm/mempolicy.c =================================================================== --- linux-2.6.20-rc4-mm1.orig/mm/mempolicy.c 2007-01-15 09:21:58.000000000 -0500 +++ linux-2.6.20-rc4-mm1/mm/mempolicy.c 2007-01-15 17:51:15.000000000 -0500 @@ -882,9 +882,9 @@ asmlinkage long sys_mbind(unsigned long int err; err = get_nodes(&nodes, nmask, maxnode); - nodes_and(nodes, nodes, current->mems_allowed); if (err) return err; + cpuset_nodes_allowed(&nodes); return do_mbind(start, len, mode, &nodes, flags); } Index: linux-2.6.20-rc4-mm1/include/linux/cpuset.h =================================================================== --- linux-2.6.20-rc4-mm1.orig/include/linux/cpuset.h 2007-01-15 09:21:32.000000000 -0500 +++ linux-2.6.20-rc4-mm1/include/linux/cpuset.h 2007-01-15 14:01:30.000000000 -0500 @@ -75,6 +75,11 @@ static inline int cpuset_do_slab_mem_spr extern void cpuset_track_online_nodes(void); +static inline void cpuset_nodes_allowed(nodemask_t *nodes) +{ + nodes_and(*nodes, *nodes, current->mems_allowed); +} + #else /* !CONFIG_CPUSETS */ static inline int cpuset_init_early(void) { return 0; } @@ -145,6 +150,7 @@ static inline int cpuset_do_slab_mem_spr } static inline void cpuset_track_online_nodes(void) {} +static inline void cpuset_nodes_allowed(nodemask_t *nodes) {} #endif /* !CONFIG_CPUSETS */ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/