slub: Do not dereference NULL pointer in node_match
authorChristoph Lameter <cl@linux.com>
Wed, 23 Jan 2013 21:45:47 +0000 (21:45 +0000)
committerPekka Enberg <penberg@kernel.org>
Fri, 5 Apr 2013 11:23:05 +0000 (14:23 +0300)
commit4d7868e6475d478172581828021bd8a356726679
treef8144ea29586a3f50278936c4a8a5ab02a61636c
parent338b2642290ef3193229ece8cfc776ac4fe8869d
slub: Do not dereference NULL pointer in node_match

The variables accessed in slab_alloc are volatile and therefore
the page pointer passed to node_match can be NULL. The processing
of data in slab_alloc is tentative until either the cmpxhchg
succeeds or the __slab_alloc slowpath is invoked. Both are
able to perform the same allocation from the freelist.

Check for the NULL pointer in node_match.

A false positive will lead to a retry of the loop in __slab_alloc.

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