SLUB: Fix per-cpu merge conflict
Stephen Rothwell [Mon, 1 Mar 2010 05:04:45 +0000 (16:04 +1100)]
The slab tree adds a percpu variable usage case (commit
9dfc6e68bfe6ee452efb1a4e9ca26a9007f2b864 "SLUB: Use this_cpu operations in
slub"), but the percpu tree removes the prefixing of percpu variables (commit
dd17c8f72993f9461e9c19250e3f155d6d99df22 "percpu: remove per_cpu__ prefix"),
thus causing the following compilation error:

CC mm/slub.o
  mm/slub.c: In function ‘alloc_kmem_cache_cpus’:
  mm/slub.c:2078: error: implicit declaration of function ‘per_cpu_var’
  mm/slub.c:2078: warning: assignment makes pointer from integer without a cast
  make[1]: *** [mm/slub.o] Error 1

Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>

mm/slub.c

index 3525a4e..0bfd386 100644 (file)
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -2075,7 +2075,7 @@ static inline int alloc_kmem_cache_cpus(struct kmem_cache *s, gfp_t flags)
                 * Boot time creation of the kmalloc array. Use static per cpu data
                 * since the per cpu allocator is not available yet.
                 */
-               s->cpu_slab = per_cpu_var(kmalloc_percpu) + (s - kmalloc_caches);
+               s->cpu_slab = kmalloc_percpu + (s - kmalloc_caches);
        else
                s->cpu_slab =  alloc_percpu(struct kmem_cache_cpu);