diff options
-rw-r--r-- | Documentation/trace/ftrace-design.txt | 2 | ||||
-rw-r--r-- | arch/arm/kernel/ftrace.c | 2 | ||||
-rw-r--r-- | arch/blackfin/kernel/ftrace.c | 2 | ||||
-rw-r--r-- | arch/ia64/kernel/ftrace.c | 2 | ||||
-rw-r--r-- | arch/metag/kernel/ftrace.c | 2 | ||||
-rw-r--r-- | arch/microblaze/kernel/ftrace.c | 2 | ||||
-rw-r--r-- | arch/mips/kernel/ftrace.c | 2 | ||||
-rw-r--r-- | arch/powerpc/kernel/ftrace.c | 2 | ||||
-rw-r--r-- | arch/s390/kernel/ftrace.c | 2 | ||||
-rw-r--r-- | arch/sh/kernel/ftrace.c | 2 | ||||
-rw-r--r-- | arch/sparc/kernel/ftrace.c | 2 | ||||
-rw-r--r-- | arch/tile/kernel/ftrace.c | 2 | ||||
-rw-r--r-- | arch/x86/kernel/ftrace.c | 2 | ||||
-rw-r--r-- | include/linux/ftrace.h | 2 | ||||
-rw-r--r-- | kernel/trace/ftrace.c | 7 |
15 files changed, 16 insertions, 19 deletions
diff --git a/Documentation/trace/ftrace-design.txt b/Documentation/trace/ftrace-design.txt index 117168884023..3f669b9e8852 100644 --- a/Documentation/trace/ftrace-design.txt +++ b/Documentation/trace/ftrace-design.txt | |||
@@ -358,7 +358,7 @@ Every arch has an init callback function. If you need to do something early on | |||
358 | to initialize some state, this is the time to do that. Otherwise, this simple | 358 | to initialize some state, this is the time to do that. Otherwise, this simple |
359 | function below should be sufficient for most people: | 359 | function below should be sufficient for most people: |
360 | 360 | ||
361 | int __init ftrace_dyn_arch_init(void *data) | 361 | int __init ftrace_dyn_arch_init(void) |
362 | { | 362 | { |
363 | return 0; | 363 | return 0; |
364 | } | 364 | } |
diff --git a/arch/arm/kernel/ftrace.c b/arch/arm/kernel/ftrace.c index 5cd0d05edf35..c108ddcb9ba4 100644 --- a/arch/arm/kernel/ftrace.c +++ b/arch/arm/kernel/ftrace.c | |||
@@ -156,7 +156,7 @@ int ftrace_make_nop(struct module *mod, | |||
156 | return ret; | 156 | return ret; |
157 | } | 157 | } |
158 | 158 | ||
159 | int __init ftrace_dyn_arch_init(void *data) | 159 | int __init ftrace_dyn_arch_init(void) |
160 | { | 160 | { |
161 | return 0; | 161 | return 0; |
162 | } | 162 | } |
diff --git a/arch/blackfin/kernel/ftrace.c b/arch/blackfin/kernel/ftrace.c index f74c5ae6a25b..095de0fa044d 100644 --- a/arch/blackfin/kernel/ftrace.c +++ b/arch/blackfin/kernel/ftrace.c | |||
@@ -65,7 +65,7 @@ int ftrace_update_ftrace_func(ftrace_func_t func) | |||
65 | return ftrace_modify_code(ip, call, sizeof(call)); | 65 | return ftrace_modify_code(ip, call, sizeof(call)); |
66 | } | 66 | } |
67 | 67 | ||
68 | int __init ftrace_dyn_arch_init(void *data) | 68 | int __init ftrace_dyn_arch_init(void) |
69 | { | 69 | { |
70 | return 0; | 70 | return 0; |
71 | } | 71 | } |
diff --git a/arch/ia64/kernel/ftrace.c b/arch/ia64/kernel/ftrace.c index cfaa93a8bbdf..3b0c2aa07857 100644 --- a/arch/ia64/kernel/ftrace.c +++ b/arch/ia64/kernel/ftrace.c | |||
@@ -198,7 +198,7 @@ int ftrace_update_ftrace_func(ftrace_func_t func) | |||
198 | } | 198 | } |
199 | 199 | ||
200 | /* run from kstop_machine */ | 200 | /* run from kstop_machine */ |
201 | int __init ftrace_dyn_arch_init(void *data) | 201 | int __init ftrace_dyn_arch_init(void) |
202 | { | 202 | { |
203 | return 0; | 203 | return 0; |
204 | } | 204 | } |
diff --git a/arch/metag/kernel/ftrace.c b/arch/metag/kernel/ftrace.c index bf593932b353..ed1d685157c2 100644 --- a/arch/metag/kernel/ftrace.c +++ b/arch/metag/kernel/ftrace.c | |||
@@ -117,7 +117,7 @@ int ftrace_make_call(struct dyn_ftrace *rec, unsigned long addr) | |||
117 | } | 117 | } |
118 | 118 | ||
119 | /* run from kstop_machine */ | 119 | /* run from kstop_machine */ |
120 | int __init ftrace_dyn_arch_init(void *data) | 120 | int __init ftrace_dyn_arch_init(void) |
121 | { | 121 | { |
122 | return 0; | 122 | return 0; |
123 | } | 123 | } |
diff --git a/arch/microblaze/kernel/ftrace.c b/arch/microblaze/kernel/ftrace.c index ffa595c7fec2..bbcd2533766c 100644 --- a/arch/microblaze/kernel/ftrace.c +++ b/arch/microblaze/kernel/ftrace.c | |||
@@ -171,7 +171,7 @@ int ftrace_make_call(struct dyn_ftrace *rec, unsigned long addr) | |||
171 | return ret; | 171 | return ret; |
172 | } | 172 | } |
173 | 173 | ||
174 | int __init ftrace_dyn_arch_init(void *data) | 174 | int __init ftrace_dyn_arch_init(void) |
175 | { | 175 | { |
176 | return 0; | 176 | return 0; |
177 | } | 177 | } |
diff --git a/arch/mips/kernel/ftrace.c b/arch/mips/kernel/ftrace.c index 013016bec9e1..1ba7afe6ab74 100644 --- a/arch/mips/kernel/ftrace.c +++ b/arch/mips/kernel/ftrace.c | |||
@@ -198,7 +198,7 @@ int ftrace_update_ftrace_func(ftrace_func_t func) | |||
198 | return ftrace_modify_code(FTRACE_CALL_IP, new); | 198 | return ftrace_modify_code(FTRACE_CALL_IP, new); |
199 | } | 199 | } |
200 | 200 | ||
201 | int __init ftrace_dyn_arch_init(void *data) | 201 | int __init ftrace_dyn_arch_init(void) |
202 | { | 202 | { |
203 | /* Encode the instructions when booting */ | 203 | /* Encode the instructions when booting */ |
204 | ftrace_dyn_arch_init_insns(); | 204 | ftrace_dyn_arch_init_insns(); |
diff --git a/arch/powerpc/kernel/ftrace.c b/arch/powerpc/kernel/ftrace.c index d059664cdf16..71ce4cbb7e9f 100644 --- a/arch/powerpc/kernel/ftrace.c +++ b/arch/powerpc/kernel/ftrace.c | |||
@@ -531,7 +531,7 @@ void arch_ftrace_update_code(int command) | |||
531 | ftrace_disable_ftrace_graph_caller(); | 531 | ftrace_disable_ftrace_graph_caller(); |
532 | } | 532 | } |
533 | 533 | ||
534 | int __init ftrace_dyn_arch_init(void *data) | 534 | int __init ftrace_dyn_arch_init(void) |
535 | { | 535 | { |
536 | return 0; | 536 | return 0; |
537 | } | 537 | } |
diff --git a/arch/s390/kernel/ftrace.c b/arch/s390/kernel/ftrace.c index 77b2f3a1f50a..54d6493c4a56 100644 --- a/arch/s390/kernel/ftrace.c +++ b/arch/s390/kernel/ftrace.c | |||
@@ -130,7 +130,7 @@ int ftrace_update_ftrace_func(ftrace_func_t func) | |||
130 | return 0; | 130 | return 0; |
131 | } | 131 | } |
132 | 132 | ||
133 | int __init ftrace_dyn_arch_init(void *data) | 133 | int __init ftrace_dyn_arch_init(void) |
134 | { | 134 | { |
135 | return 0; | 135 | return 0; |
136 | } | 136 | } |
diff --git a/arch/sh/kernel/ftrace.c b/arch/sh/kernel/ftrace.c index 493997541d2c..3c74f53db6db 100644 --- a/arch/sh/kernel/ftrace.c +++ b/arch/sh/kernel/ftrace.c | |||
@@ -272,7 +272,7 @@ int ftrace_make_call(struct dyn_ftrace *rec, unsigned long addr) | |||
272 | return ftrace_modify_code(rec->ip, old, new); | 272 | return ftrace_modify_code(rec->ip, old, new); |
273 | } | 273 | } |
274 | 274 | ||
275 | int __init ftrace_dyn_arch_init(void *data) | 275 | int __init ftrace_dyn_arch_init(void) |
276 | { | 276 | { |
277 | return 0; | 277 | return 0; |
278 | } | 278 | } |
diff --git a/arch/sparc/kernel/ftrace.c b/arch/sparc/kernel/ftrace.c index ee813b82da49..0a2d2ddff543 100644 --- a/arch/sparc/kernel/ftrace.c +++ b/arch/sparc/kernel/ftrace.c | |||
@@ -82,7 +82,7 @@ int ftrace_update_ftrace_func(ftrace_func_t func) | |||
82 | return ftrace_modify_code(ip, old, new); | 82 | return ftrace_modify_code(ip, old, new); |
83 | } | 83 | } |
84 | 84 | ||
85 | int __init ftrace_dyn_arch_init(void *data) | 85 | int __init ftrace_dyn_arch_init(void) |
86 | { | 86 | { |
87 | return 0; | 87 | return 0; |
88 | } | 88 | } |
diff --git a/arch/tile/kernel/ftrace.c b/arch/tile/kernel/ftrace.c index 34d9ea0bca9f..8d52d83cc516 100644 --- a/arch/tile/kernel/ftrace.c +++ b/arch/tile/kernel/ftrace.c | |||
@@ -167,7 +167,7 @@ int ftrace_make_nop(struct module *mod, | |||
167 | return ret; | 167 | return ret; |
168 | } | 168 | } |
169 | 169 | ||
170 | int __init ftrace_dyn_arch_init(void *data) | 170 | int __init ftrace_dyn_arch_init(void) |
171 | { | 171 | { |
172 | return 0; | 172 | return 0; |
173 | } | 173 | } |
diff --git a/arch/x86/kernel/ftrace.c b/arch/x86/kernel/ftrace.c index bbe5a5b88aad..4b66adf17369 100644 --- a/arch/x86/kernel/ftrace.c +++ b/arch/x86/kernel/ftrace.c | |||
@@ -668,7 +668,7 @@ void arch_ftrace_update_code(int command) | |||
668 | atomic_dec(&modifying_ftrace_code); | 668 | atomic_dec(&modifying_ftrace_code); |
669 | } | 669 | } |
670 | 670 | ||
671 | int __init ftrace_dyn_arch_init(void *data) | 671 | int __init ftrace_dyn_arch_init(void) |
672 | { | 672 | { |
673 | return 0; | 673 | return 0; |
674 | } | 674 | } |
diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h index e6141be2fad5..1bbb2cd631de 100644 --- a/include/linux/ftrace.h +++ b/include/linux/ftrace.h | |||
@@ -423,7 +423,7 @@ ftrace_set_early_filter(struct ftrace_ops *ops, char *buf, int enable); | |||
423 | 423 | ||
424 | /* defined in arch */ | 424 | /* defined in arch */ |
425 | extern int ftrace_ip_converted(unsigned long ip); | 425 | extern int ftrace_ip_converted(unsigned long ip); |
426 | extern int ftrace_dyn_arch_init(void *data); | 426 | extern int ftrace_dyn_arch_init(void); |
427 | extern void ftrace_replace_code(int enable); | 427 | extern void ftrace_replace_code(int enable); |
428 | extern int ftrace_update_ftrace_func(ftrace_func_t func); | 428 | extern int ftrace_update_ftrace_func(ftrace_func_t func); |
429 | extern void ftrace_caller(void); | 429 | extern void ftrace_caller(void); |
diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c index 083c6d5fce25..5bd70e8b09b0 100644 --- a/kernel/trace/ftrace.c +++ b/kernel/trace/ftrace.c | |||
@@ -4372,14 +4372,11 @@ void __init ftrace_init(void) | |||
4372 | { | 4372 | { |
4373 | extern unsigned long __start_mcount_loc[]; | 4373 | extern unsigned long __start_mcount_loc[]; |
4374 | extern unsigned long __stop_mcount_loc[]; | 4374 | extern unsigned long __stop_mcount_loc[]; |
4375 | unsigned long count, addr, flags; | 4375 | unsigned long count, flags; |
4376 | int ret; | 4376 | int ret; |
4377 | 4377 | ||
4378 | /* Keep the ftrace pointer to the stub */ | ||
4379 | addr = (unsigned long)ftrace_stub; | ||
4380 | |||
4381 | local_irq_save(flags); | 4378 | local_irq_save(flags); |
4382 | ret = ftrace_dyn_arch_init(&addr); | 4379 | ret = ftrace_dyn_arch_init(); |
4383 | local_irq_restore(flags); | 4380 | local_irq_restore(flags); |
4384 | if (ret) | 4381 | if (ret) |
4385 | goto failed; | 4382 | goto failed; |