Eric Dumazet 364fbb29a0 SLAB: use num_possible_cpus() in enable_cpucache()
The existing comment in mm/slab.c is *perfect*, so I reproduce it :

         /*
          * CPU bound tasks (e.g. network routing) can exhibit cpu bound
          * allocation behaviour: Most allocs on one cpu, most free operations
          * on another cpu. For these cases, an efficient object passing between
          * cpus is necessary. This is provided by a shared array. The array
          * replaces Bonwick's magazine layer.
          * On uniprocessor, it's functionally equivalent (but less efficient)
          * to a larger limit. Thus disabled by default.
          */

As most shiped linux kernels are now compiled with CONFIG_SMP, there is no way
a preprocessor #if can detect if the machine is UP or SMP. Better to use
num_possible_cpus().

This means on UP we allocate a 'size=0 shared array', to be more efficient.

Another patch can later avoid the allocations of 'empty shared arrays', to
save some memory.

Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Acked-by: Pekka Enberg <penberg@cs.helsinki.fi>
Acked-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-07 12:12:52 -07:00
..
2007-03-27 08:52:47 +02:00
2007-05-07 12:12:52 -07:00
2006-12-22 08:55:49 -08:00
2006-09-26 08:48:44 -07:00
2007-01-11 18:18:20 -08:00
2007-02-15 09:57:03 -08:00
2006-12-07 08:39:22 -08:00
2006-09-26 08:48:45 -07:00
2007-05-07 12:12:51 -07:00
2005-04-16 15:20:36 -07:00
2007-05-07 12:12:52 -07:00
2007-04-27 16:01:46 +02:00
2007-05-07 12:12:50 -07:00