x86/UV: Fix NULL pointer dereference in uv_flush_tlb_others() if the 'nobau' boot...
authorcpw <cpw@sgi.com>
Tue, 3 Dec 2013 23:15:30 +0000 (17:15 -0600)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 20 Dec 2013 15:49:01 +0000 (07:49 -0800)
commit6a4204b8c03b92947d338c804132ac782a24cc7d
tree7a99fe7f869f08944eb949f908914908116e1f75
parent9952005841964ea98f24bd402e22b13fd8398368
x86/UV: Fix NULL pointer dereference in uv_flush_tlb_others() if the 'nobau' boot option is used

commit 3eae49ca8954f958b2001ab5643ef302cb7b67c7 upstream.

The SGI UV tlb shootdown code panics the system with a NULL
pointer deference if 'nobau' is specified on the boot
commandline.

uv_flush_tlb_other() gets called for every flush, whether the
BAU is disabled or not.  It should not be keeping the s_enters
statistic while the BAU is disabled.

The panic occurs because during initialization
init_per_cpu_tunables() does not set the bcp->statp pointer if
'nobau' was specified.

Signed-off-by: Cliff Wickman <cpw@sgi.com>
Link: http://lkml.kernel.org/r/E1VnzBi-0005yF-MU@eag09.americas.sgi.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/x86/platform/uv/tlb_uv.c