Skip to content

Commit

Permalink
topology: alternate fix for ia64 tiger_defconfig build breakage
Browse files Browse the repository at this point in the history
Define stubs for the numa_*_id() generic percpu related functions for
non-NUMA configurations in <asm-generic/topology.h> where the other
non-numa stubs live.

Fixes ia64 !NUMA build breakage -- e.g., tiger_defconfig

Back out now unneeded '#ifndef CONFIG_NUMA' guards from ia64 smpboot.c

Signed-off-by: Lee Schermerhorn <lee.schermerhorn@hp.com>
Tested-by: Tony Luck <tony.luck@intel.com>
Acked-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
Lee Schermerhorn authored and Linus Torvalds committed Aug 10, 2010
1 parent b645bd1 commit 2510600
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 11 deletions.
3 changes: 1 addition & 2 deletions arch/ia64/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -499,8 +499,7 @@ config USE_PERCPU_NUMA_NODE_ID
depends on NUMA

config HAVE_MEMORYLESS_NODES
def_bool y
depends on NUMA
def_bool NUMA

config ARCH_PROC_KCORE_TEXT
def_bool y
Expand Down
4 changes: 0 additions & 4 deletions arch/ia64/kernel/smpboot.c
Original file line number Diff line number Diff line change
Expand Up @@ -390,13 +390,11 @@ smp_callin (void)

fix_b0_for_bsp();

#ifdef CONFIG_NUMA
/*
* numa_node_id() works after this.
*/
set_numa_node(cpu_to_node_map[cpuid]);
set_numa_mem(local_memory_node(cpu_to_node_map[cpuid]));
#endif

ipi_call_lock_irq();
spin_lock(&vector_lock);
Expand Down Expand Up @@ -640,9 +638,7 @@ void __devinit smp_prepare_boot_cpu(void)
{
cpu_set(smp_processor_id(), cpu_online_map);
cpu_set(smp_processor_id(), cpu_callin_map);
#ifdef CONFIG_NUMA
set_numa_node(cpu_to_node_map[smp_processor_id()]);
#endif
per_cpu(cpu_state, smp_processor_id()) = CPU_ONLINE;
paravirt_post_smp_prepare_boot_cpu();
}
Expand Down
20 changes: 19 additions & 1 deletion include/asm-generic/topology.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
*
* Copyright (C) 2002, IBM Corp.
*
* All rights reserved.
* All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
Expand Down Expand Up @@ -34,9 +34,16 @@
#ifndef cpu_to_node
#define cpu_to_node(cpu) ((void)(cpu),0)
#endif
#ifndef set_numa_node
#define set_numa_node(node)
#endif
#ifndef set_cpu_numa_node
#define set_cpu_numa_node(cpu, node)
#endif
#ifndef cpu_to_mem
#define cpu_to_mem(cpu) ((void)(cpu),0)
#endif

#ifndef parent_node
#define parent_node(node) ((void)(node),0)
#endif
Expand All @@ -55,4 +62,15 @@

#endif /* CONFIG_NUMA */

#if !defined(CONFIG_NUMA) || !defined(CONFIG_HAVE_MEMORYLESS_NODES)

#ifndef set_numa_mem
#define set_numa_mem(node)
#endif
#ifndef set_cpu_numa_mem
#define set_cpu_numa_mem(cpu, node)
#endif

#endif /* !CONFIG_NUMA || !CONFIG_HAVE_MEMORYLESS_NODES */

#endif /* _ASM_GENERIC_TOPOLOGY_H */
4 changes: 0 additions & 4 deletions include/linux/topology.h
Original file line number Diff line number Diff line change
Expand Up @@ -292,10 +292,6 @@ static inline void set_cpu_numa_mem(int cpu, int node)

#else /* !CONFIG_HAVE_MEMORYLESS_NODES */

static inline void set_numa_mem(int node) {}

static inline void set_cpu_numa_mem(int cpu, int node) {}

#ifndef numa_mem_id
/* Returns the number of the nearest Node with memory */
static inline int numa_mem_id(void)
Expand Down

0 comments on commit 2510600

Please sign in to comment.