diff options
Diffstat (limited to 'arch/powerpc/kernel/ftrace.c')
-rw-r--r-- | arch/powerpc/kernel/ftrace.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/powerpc/kernel/ftrace.c b/arch/powerpc/kernel/ftrace.c index 8fc0c1742498..96efc664b49d 100644 --- a/arch/powerpc/kernel/ftrace.c +++ b/arch/powerpc/kernel/ftrace.c | |||
@@ -105,7 +105,7 @@ __ftrace_make_nop(struct module *mod, | |||
105 | struct dyn_ftrace *rec, unsigned long addr) | 105 | struct dyn_ftrace *rec, unsigned long addr) |
106 | { | 106 | { |
107 | unsigned int op; | 107 | unsigned int op; |
108 | unsigned long ptr; | 108 | unsigned long entry, ptr; |
109 | unsigned long ip = rec->ip; | 109 | unsigned long ip = rec->ip; |
110 | void *tramp; | 110 | void *tramp; |
111 | 111 | ||
@@ -136,10 +136,11 @@ __ftrace_make_nop(struct module *mod, | |||
136 | 136 | ||
137 | pr_devel("trampoline target %lx", ptr); | 137 | pr_devel("trampoline target %lx", ptr); |
138 | 138 | ||
139 | entry = ppc_global_function_entry((void *)addr); | ||
139 | /* This should match what was called */ | 140 | /* This should match what was called */ |
140 | if (ptr != ppc_function_entry((void *)addr)) { | 141 | if (ptr != entry) { |
141 | printk(KERN_ERR "addr %lx does not match expected %lx\n", | 142 | printk(KERN_ERR "addr %lx does not match expected %lx\n", |
142 | ptr, ppc_function_entry((void *)addr)); | 143 | ptr, entry); |
143 | return -EINVAL; | 144 | return -EINVAL; |
144 | } | 145 | } |
145 | 146 | ||