slub: Remove CONFIG_CMPXCHG_LOCAL ifdeffery
authorChristoph Lameter <cl@linux.com>
Thu, 5 May 2011 20:23:54 +0000 (15:23 -0500)
committerPekka Enberg <penberg@kernel.org>
Sat, 7 May 2011 17:25:38 +0000 (20:25 +0300)
commit1759415e630e5db0dd2390df9f94892cbfb9a8a2
treebfae4443c70ee88c54aa9743ca19ed122af45f8f
parent8dc16c6c04b1a82d00a8464ccc08e1fe17d0ff82
slub: Remove CONFIG_CMPXCHG_LOCAL ifdeffery

Remove the #ifdefs. This means that the irqsafe_cpu_cmpxchg_double() is used
everywhere.

There may be performance implications since:

A. We now have to manage a transaction ID for all arches

B. The interrupt holdoff for arches not supporting CONFIG_CMPXCHG_LOCAL is reduced
to a very short irqoff section.

There are no multiple irqoff/irqon sequences as a result of this change. Even in the fallback
case we only have to do one disable and enable like before.

Signed-off-by: Christoph Lameter <cl@linux.com>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
include/linux/slub_def.h
mm/slub.c