diff options
Diffstat (limited to 'kernel/trace/trace_hw_branches.c')
-rw-r--r-- | kernel/trace/trace_hw_branches.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/kernel/trace/trace_hw_branches.c b/kernel/trace/trace_hw_branches.c index 3561aace075c..3335e807144b 100644 --- a/kernel/trace/trace_hw_branches.c +++ b/kernel/trace/trace_hw_branches.c | |||
@@ -127,20 +127,18 @@ static struct notifier_block bts_hotcpu_notifier __cpuinitdata = { | |||
127 | .notifier_call = bts_hotcpu_handler | 127 | .notifier_call = bts_hotcpu_handler |
128 | }; | 128 | }; |
129 | 129 | ||
130 | static int __cpuinit bts_trace_init(struct trace_array *tr) | 130 | static int bts_trace_init(struct trace_array *tr) |
131 | { | 131 | { |
132 | hw_branch_trace = tr; | 132 | hw_branch_trace = tr; |
133 | 133 | ||
134 | register_hotcpu_notifier(&bts_hotcpu_notifier); | ||
135 | bts_trace_start(tr); | 134 | bts_trace_start(tr); |
136 | 135 | ||
137 | return 0; | 136 | return 0; |
138 | } | 137 | } |
139 | 138 | ||
140 | static void __cpuinit bts_trace_reset(struct trace_array *tr) | 139 | static void bts_trace_reset(struct trace_array *tr) |
141 | { | 140 | { |
142 | bts_trace_stop(tr); | 141 | bts_trace_stop(tr); |
143 | unregister_hotcpu_notifier(&bts_hotcpu_notifier); | ||
144 | } | 142 | } |
145 | 143 | ||
146 | static void bts_trace_print_header(struct seq_file *m) | 144 | static void bts_trace_print_header(struct seq_file *m) |
@@ -299,6 +297,7 @@ struct tracer bts_tracer __read_mostly = | |||
299 | 297 | ||
300 | __init static int init_bts_trace(void) | 298 | __init static int init_bts_trace(void) |
301 | { | 299 | { |
300 | register_hotcpu_notifier(&bts_hotcpu_notifier); | ||
302 | return register_tracer(&bts_tracer); | 301 | return register_tracer(&bts_tracer); |
303 | } | 302 | } |
304 | device_initcall(init_bts_trace); | 303 | device_initcall(init_bts_trace); |