diff options
author | Mike Travis <travis@sgi.com> | 2008-04-04 21:11:10 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-04-19 13:44:59 -0400 |
commit | c5f59f0833df945eef7ff35f3dc6ba61c5f293dd (patch) | |
tree | 32c1a94847d0154051c79011212d401462723d55 /mm/slab.c | |
parent | b53e921ba1cff8453dc9a87a84052fa12d5b30bd (diff) |
nodemask: use new node_to_cpumask_ptr function
* Use new node_to_cpumask_ptr. This creates a pointer to the
cpumask for a given node. This definition is in mm patch:
asm-generic-add-node_to_cpumask_ptr-macro.patch
* Use new set_cpus_allowed_ptr function.
Depends on:
[mm-patch]: asm-generic-add-node_to_cpumask_ptr-macro.patch
[sched-devel]: sched: add new set_cpus_allowed_ptr function
[x86/latest]: x86: add cpus_scnprintf function
Cc: Greg Kroah-Hartman <gregkh@suse.de>
Cc: Greg Banks <gnb@melbourne.sgi.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Mike Travis <travis@sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'mm/slab.c')
-rw-r--r-- | mm/slab.c | 5 |
1 files changed, 2 insertions, 3 deletions
@@ -1160,14 +1160,13 @@ static void __cpuinit cpuup_canceled(long cpu) | |||
1160 | struct kmem_cache *cachep; | 1160 | struct kmem_cache *cachep; |
1161 | struct kmem_list3 *l3 = NULL; | 1161 | struct kmem_list3 *l3 = NULL; |
1162 | int node = cpu_to_node(cpu); | 1162 | int node = cpu_to_node(cpu); |
1163 | node_to_cpumask_ptr(mask, node); | ||
1163 | 1164 | ||
1164 | list_for_each_entry(cachep, &cache_chain, next) { | 1165 | list_for_each_entry(cachep, &cache_chain, next) { |
1165 | struct array_cache *nc; | 1166 | struct array_cache *nc; |
1166 | struct array_cache *shared; | 1167 | struct array_cache *shared; |
1167 | struct array_cache **alien; | 1168 | struct array_cache **alien; |
1168 | cpumask_t mask; | ||
1169 | 1169 | ||
1170 | mask = node_to_cpumask(node); | ||
1171 | /* cpu is dead; no one can alloc from it. */ | 1170 | /* cpu is dead; no one can alloc from it. */ |
1172 | nc = cachep->array[cpu]; | 1171 | nc = cachep->array[cpu]; |
1173 | cachep->array[cpu] = NULL; | 1172 | cachep->array[cpu] = NULL; |
@@ -1183,7 +1182,7 @@ static void __cpuinit cpuup_canceled(long cpu) | |||
1183 | if (nc) | 1182 | if (nc) |
1184 | free_block(cachep, nc->entry, nc->avail, node); | 1183 | free_block(cachep, nc->entry, nc->avail, node); |
1185 | 1184 | ||
1186 | if (!cpus_empty(mask)) { | 1185 | if (!cpus_empty(*mask)) { |
1187 | spin_unlock_irq(&l3->list_lock); | 1186 | spin_unlock_irq(&l3->list_lock); |
1188 | goto free_array_cache; | 1187 | goto free_array_cache; |
1189 | } | 1188 | } |