tracing: Fix initialization failure path in tracing_set_tracer()
authorAnton Vorontsov <anton.vorontsov@linaro.org>
Tue, 10 Jul 2012 00:10:39 +0000 (17:10 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 17 Jul 2012 16:50:53 +0000 (09:50 -0700)
commitb2ad368bebc0f772613668e893fa176396e9094c
treef2c14b8eea287afdab9eb5eba59792e1048b212a
parentc1743cbc8d20d208bb1d2b10598204f2d89b144c
tracing: Fix initialization failure path in tracing_set_tracer()

If tracer->init() fails, current code will leave current_tracer pointing
to an unusable tracer, which at best makes 'current_tracer' report
inaccurate value.

Fix the issue by pointing current_tracer to nop tracer, and only update
current_tracer with the new one after all the initialization succeeds.

Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
Acked-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
kernel/trace/trace.c