diff options
author | Christian Dietrich <christian.dietrich@informatik.uni-erlangen.de> | 2011-06-04 01:36:54 -0400 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2011-06-29 01:31:01 -0400 |
commit | 76462232c21dc011462522387ddad0598a4f11e4 (patch) | |
tree | a21be7280dd159e44f5a9a387c586a059a84485b /arch/powerpc | |
parent | 9a8f99fab02db296815d7f0ae8ba8ce169df0063 (diff) |
arch/powerpc: use printk_ratelimited instead of printk_ratelimit
Since printk_ratelimit() shouldn't be used anymore (see comment in
include/linux/printk.h), replace it with printk_ratelimited.
Signed-off-by: Christian Dietrich <christian.dietrich@informatik.uni-erlangen.de>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/kernel/signal_32.c | 57 | ||||
-rw-r--r-- | arch/powerpc/kernel/signal_64.c | 17 | ||||
-rw-r--r-- | arch/powerpc/kernel/traps.c | 22 | ||||
-rw-r--r-- | arch/powerpc/mm/fault.c | 10 | ||||
-rw-r--r-- | arch/powerpc/sysdev/mpic.c | 11 |
5 files changed, 60 insertions, 57 deletions
diff --git a/arch/powerpc/kernel/signal_32.c b/arch/powerpc/kernel/signal_32.c index b96a3a010c26..78b76dc54dfb 100644 --- a/arch/powerpc/kernel/signal_32.c +++ b/arch/powerpc/kernel/signal_32.c | |||
@@ -25,6 +25,7 @@ | |||
25 | #include <linux/errno.h> | 25 | #include <linux/errno.h> |
26 | #include <linux/elf.h> | 26 | #include <linux/elf.h> |
27 | #include <linux/ptrace.h> | 27 | #include <linux/ptrace.h> |
28 | #include <linux/ratelimit.h> | ||
28 | #ifdef CONFIG_PPC64 | 29 | #ifdef CONFIG_PPC64 |
29 | #include <linux/syscalls.h> | 30 | #include <linux/syscalls.h> |
30 | #include <linux/compat.h> | 31 | #include <linux/compat.h> |
@@ -892,11 +893,12 @@ badframe: | |||
892 | printk("badframe in handle_rt_signal, regs=%p frame=%p newsp=%lx\n", | 893 | printk("badframe in handle_rt_signal, regs=%p frame=%p newsp=%lx\n", |
893 | regs, frame, newsp); | 894 | regs, frame, newsp); |
894 | #endif | 895 | #endif |
895 | if (show_unhandled_signals && printk_ratelimit()) | 896 | if (show_unhandled_signals) |
896 | printk(KERN_INFO "%s[%d]: bad frame in handle_rt_signal32: " | 897 | printk_ratelimited(KERN_INFO |
897 | "%p nip %08lx lr %08lx\n", | 898 | "%s[%d]: bad frame in handle_rt_signal32: " |
898 | current->comm, current->pid, | 899 | "%p nip %08lx lr %08lx\n", |
899 | addr, regs->nip, regs->link); | 900 | current->comm, current->pid, |
901 | addr, regs->nip, regs->link); | ||
900 | 902 | ||
901 | force_sigsegv(sig, current); | 903 | force_sigsegv(sig, current); |
902 | return 0; | 904 | return 0; |
@@ -1058,11 +1060,12 @@ long sys_rt_sigreturn(int r3, int r4, int r5, int r6, int r7, int r8, | |||
1058 | return 0; | 1060 | return 0; |
1059 | 1061 | ||
1060 | bad: | 1062 | bad: |
1061 | if (show_unhandled_signals && printk_ratelimit()) | 1063 | if (show_unhandled_signals) |
1062 | printk(KERN_INFO "%s[%d]: bad frame in sys_rt_sigreturn: " | 1064 | printk_ratelimited(KERN_INFO |
1063 | "%p nip %08lx lr %08lx\n", | 1065 | "%s[%d]: bad frame in sys_rt_sigreturn: " |
1064 | current->comm, current->pid, | 1066 | "%p nip %08lx lr %08lx\n", |
1065 | rt_sf, regs->nip, regs->link); | 1067 | current->comm, current->pid, |
1068 | rt_sf, regs->nip, regs->link); | ||
1066 | 1069 | ||
1067 | force_sig(SIGSEGV, current); | 1070 | force_sig(SIGSEGV, current); |
1068 | return 0; | 1071 | return 0; |
@@ -1149,12 +1152,12 @@ int sys_debug_setcontext(struct ucontext __user *ctx, | |||
1149 | * We kill the task with a SIGSEGV in this situation. | 1152 | * We kill the task with a SIGSEGV in this situation. |
1150 | */ | 1153 | */ |
1151 | if (do_setcontext(ctx, regs, 1)) { | 1154 | if (do_setcontext(ctx, regs, 1)) { |
1152 | if (show_unhandled_signals && printk_ratelimit()) | 1155 | if (show_unhandled_signals) |
1153 | printk(KERN_INFO "%s[%d]: bad frame in " | 1156 | printk_ratelimited(KERN_INFO "%s[%d]: bad frame in " |
1154 | "sys_debug_setcontext: %p nip %08lx " | 1157 | "sys_debug_setcontext: %p nip %08lx " |
1155 | "lr %08lx\n", | 1158 | "lr %08lx\n", |
1156 | current->comm, current->pid, | 1159 | current->comm, current->pid, |
1157 | ctx, regs->nip, regs->link); | 1160 | ctx, regs->nip, regs->link); |
1158 | 1161 | ||
1159 | force_sig(SIGSEGV, current); | 1162 | force_sig(SIGSEGV, current); |
1160 | goto out; | 1163 | goto out; |
@@ -1236,11 +1239,12 @@ badframe: | |||
1236 | printk("badframe in handle_signal, regs=%p frame=%p newsp=%lx\n", | 1239 | printk("badframe in handle_signal, regs=%p frame=%p newsp=%lx\n", |
1237 | regs, frame, newsp); | 1240 | regs, frame, newsp); |
1238 | #endif | 1241 | #endif |
1239 | if (show_unhandled_signals && printk_ratelimit()) | 1242 | if (show_unhandled_signals) |
1240 | printk(KERN_INFO "%s[%d]: bad frame in handle_signal32: " | 1243 | printk_ratelimited(KERN_INFO |
1241 | "%p nip %08lx lr %08lx\n", | 1244 | "%s[%d]: bad frame in handle_signal32: " |
1242 | current->comm, current->pid, | 1245 | "%p nip %08lx lr %08lx\n", |
1243 | frame, regs->nip, regs->link); | 1246 | current->comm, current->pid, |
1247 | frame, regs->nip, regs->link); | ||
1244 | 1248 | ||
1245 | force_sigsegv(sig, current); | 1249 | force_sigsegv(sig, current); |
1246 | return 0; | 1250 | return 0; |
@@ -1288,11 +1292,12 @@ long sys_sigreturn(int r3, int r4, int r5, int r6, int r7, int r8, | |||
1288 | return 0; | 1292 | return 0; |
1289 | 1293 | ||
1290 | badframe: | 1294 | badframe: |
1291 | if (show_unhandled_signals && printk_ratelimit()) | 1295 | if (show_unhandled_signals) |
1292 | printk(KERN_INFO "%s[%d]: bad frame in sys_sigreturn: " | 1296 | printk_ratelimited(KERN_INFO |
1293 | "%p nip %08lx lr %08lx\n", | 1297 | "%s[%d]: bad frame in sys_sigreturn: " |
1294 | current->comm, current->pid, | 1298 | "%p nip %08lx lr %08lx\n", |
1295 | addr, regs->nip, regs->link); | 1299 | current->comm, current->pid, |
1300 | addr, regs->nip, regs->link); | ||
1296 | 1301 | ||
1297 | force_sig(SIGSEGV, current); | 1302 | force_sig(SIGSEGV, current); |
1298 | return 0; | 1303 | return 0; |
diff --git a/arch/powerpc/kernel/signal_64.c b/arch/powerpc/kernel/signal_64.c index da989fff19cc..e91c736cc842 100644 --- a/arch/powerpc/kernel/signal_64.c +++ b/arch/powerpc/kernel/signal_64.c | |||
@@ -24,6 +24,7 @@ | |||
24 | #include <linux/elf.h> | 24 | #include <linux/elf.h> |
25 | #include <linux/ptrace.h> | 25 | #include <linux/ptrace.h> |
26 | #include <linux/module.h> | 26 | #include <linux/module.h> |
27 | #include <linux/ratelimit.h> | ||
27 | 28 | ||
28 | #include <asm/sigcontext.h> | 29 | #include <asm/sigcontext.h> |
29 | #include <asm/ucontext.h> | 30 | #include <asm/ucontext.h> |
@@ -380,10 +381,10 @@ badframe: | |||
380 | printk("badframe in sys_rt_sigreturn, regs=%p uc=%p &uc->uc_mcontext=%p\n", | 381 | printk("badframe in sys_rt_sigreturn, regs=%p uc=%p &uc->uc_mcontext=%p\n", |
381 | regs, uc, &uc->uc_mcontext); | 382 | regs, uc, &uc->uc_mcontext); |
382 | #endif | 383 | #endif |
383 | if (show_unhandled_signals && printk_ratelimit()) | 384 | if (show_unhandled_signals) |
384 | printk(regs->msr & MSR_64BIT ? fmt64 : fmt32, | 385 | printk_ratelimited(regs->msr & MSR_64BIT ? fmt64 : fmt32, |
385 | current->comm, current->pid, "rt_sigreturn", | 386 | current->comm, current->pid, "rt_sigreturn", |
386 | (long)uc, regs->nip, regs->link); | 387 | (long)uc, regs->nip, regs->link); |
387 | 388 | ||
388 | force_sig(SIGSEGV, current); | 389 | force_sig(SIGSEGV, current); |
389 | return 0; | 390 | return 0; |
@@ -468,10 +469,10 @@ badframe: | |||
468 | printk("badframe in setup_rt_frame, regs=%p frame=%p newsp=%lx\n", | 469 | printk("badframe in setup_rt_frame, regs=%p frame=%p newsp=%lx\n", |
469 | regs, frame, newsp); | 470 | regs, frame, newsp); |
470 | #endif | 471 | #endif |
471 | if (show_unhandled_signals && printk_ratelimit()) | 472 | if (show_unhandled_signals) |
472 | printk(regs->msr & MSR_64BIT ? fmt64 : fmt32, | 473 | printk_ratelimited(regs->msr & MSR_64BIT ? fmt64 : fmt32, |
473 | current->comm, current->pid, "setup_rt_frame", | 474 | current->comm, current->pid, "setup_rt_frame", |
474 | (long)frame, regs->nip, regs->link); | 475 | (long)frame, regs->nip, regs->link); |
475 | 476 | ||
476 | force_sigsegv(signr, current); | 477 | force_sigsegv(signr, current); |
477 | return 0; | 478 | return 0; |
diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c index 6414a0d5ba65..1a0141426cda 100644 --- a/arch/powerpc/kernel/traps.c +++ b/arch/powerpc/kernel/traps.c | |||
@@ -34,6 +34,7 @@ | |||
34 | #include <linux/bug.h> | 34 | #include <linux/bug.h> |
35 | #include <linux/kdebug.h> | 35 | #include <linux/kdebug.h> |
36 | #include <linux/debugfs.h> | 36 | #include <linux/debugfs.h> |
37 | #include <linux/ratelimit.h> | ||
37 | 38 | ||
38 | #include <asm/emulated_ops.h> | 39 | #include <asm/emulated_ops.h> |
39 | #include <asm/pgtable.h> | 40 | #include <asm/pgtable.h> |
@@ -197,12 +198,11 @@ void _exception(int signr, struct pt_regs *regs, int code, unsigned long addr) | |||
197 | if (die("Exception in kernel mode", regs, signr)) | 198 | if (die("Exception in kernel mode", regs, signr)) |
198 | return; | 199 | return; |
199 | } else if (show_unhandled_signals && | 200 | } else if (show_unhandled_signals && |
200 | unhandled_signal(current, signr) && | 201 | unhandled_signal(current, signr)) { |
201 | printk_ratelimit()) { | 202 | printk_ratelimited(regs->msr & MSR_64BIT ? fmt64 : fmt32, |
202 | printk(regs->msr & MSR_64BIT ? fmt64 : fmt32, | 203 | current->comm, current->pid, signr, |
203 | current->comm, current->pid, signr, | 204 | addr, regs->nip, regs->link, code); |
204 | addr, regs->nip, regs->link, code); | 205 | } |
205 | } | ||
206 | 206 | ||
207 | memset(&info, 0, sizeof(info)); | 207 | memset(&info, 0, sizeof(info)); |
208 | info.si_signo = signr; | 208 | info.si_signo = signr; |
@@ -1342,9 +1342,8 @@ void altivec_assist_exception(struct pt_regs *regs) | |||
1342 | } else { | 1342 | } else { |
1343 | /* didn't recognize the instruction */ | 1343 | /* didn't recognize the instruction */ |
1344 | /* XXX quick hack for now: set the non-Java bit in the VSCR */ | 1344 | /* XXX quick hack for now: set the non-Java bit in the VSCR */ |
1345 | if (printk_ratelimit()) | 1345 | printk_ratelimited(KERN_ERR "Unrecognized altivec instruction " |
1346 | printk(KERN_ERR "Unrecognized altivec instruction " | 1346 | "in %s at %lx\n", current->comm, regs->nip); |
1347 | "in %s at %lx\n", current->comm, regs->nip); | ||
1348 | current->thread.vscr.u[3] |= 0x10000; | 1347 | current->thread.vscr.u[3] |= 0x10000; |
1349 | } | 1348 | } |
1350 | } | 1349 | } |
@@ -1548,9 +1547,8 @@ u32 ppc_warn_emulated; | |||
1548 | 1547 | ||
1549 | void ppc_warn_emulated_print(const char *type) | 1548 | void ppc_warn_emulated_print(const char *type) |
1550 | { | 1549 | { |
1551 | if (printk_ratelimit()) | 1550 | pr_warn_ratelimited("%s used emulated %s instruction\n", current->comm, |
1552 | pr_warning("%s used emulated %s instruction\n", current->comm, | 1551 | type); |
1553 | type); | ||
1554 | } | 1552 | } |
1555 | 1553 | ||
1556 | static int __init ppc_warn_emulated_init(void) | 1554 | static int __init ppc_warn_emulated_init(void) |
diff --git a/arch/powerpc/mm/fault.c b/arch/powerpc/mm/fault.c index 54f4fb994e99..ad35f66c69e8 100644 --- a/arch/powerpc/mm/fault.c +++ b/arch/powerpc/mm/fault.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include <linux/kdebug.h> | 31 | #include <linux/kdebug.h> |
32 | #include <linux/perf_event.h> | 32 | #include <linux/perf_event.h> |
33 | #include <linux/magic.h> | 33 | #include <linux/magic.h> |
34 | #include <linux/ratelimit.h> | ||
34 | 35 | ||
35 | #include <asm/firmware.h> | 36 | #include <asm/firmware.h> |
36 | #include <asm/page.h> | 37 | #include <asm/page.h> |
@@ -346,11 +347,10 @@ bad_area_nosemaphore: | |||
346 | return 0; | 347 | return 0; |
347 | } | 348 | } |
348 | 349 | ||
349 | if (is_exec && (error_code & DSISR_PROTFAULT) | 350 | if (is_exec && (error_code & DSISR_PROTFAULT)) |
350 | && printk_ratelimit()) | 351 | printk_ratelimited(KERN_CRIT "kernel tried to execute NX-protected" |
351 | printk(KERN_CRIT "kernel tried to execute NX-protected" | 352 | " page (%lx) - exploit attempt? (uid: %d)\n", |
352 | " page (%lx) - exploit attempt? (uid: %d)\n", | 353 | address, current_uid()); |
353 | address, current_uid()); | ||
354 | 354 | ||
355 | return SIGSEGV; | 355 | return SIGSEGV; |
356 | 356 | ||
diff --git a/arch/powerpc/sysdev/mpic.c b/arch/powerpc/sysdev/mpic.c index 3a8de5bb628a..58d7a534f877 100644 --- a/arch/powerpc/sysdev/mpic.c +++ b/arch/powerpc/sysdev/mpic.c | |||
@@ -29,6 +29,7 @@ | |||
29 | #include <linux/pci.h> | 29 | #include <linux/pci.h> |
30 | #include <linux/slab.h> | 30 | #include <linux/slab.h> |
31 | #include <linux/syscore_ops.h> | 31 | #include <linux/syscore_ops.h> |
32 | #include <linux/ratelimit.h> | ||
32 | 33 | ||
33 | #include <asm/ptrace.h> | 34 | #include <asm/ptrace.h> |
34 | #include <asm/signal.h> | 35 | #include <asm/signal.h> |
@@ -1648,9 +1649,8 @@ static unsigned int _mpic_get_one_irq(struct mpic *mpic, int reg) | |||
1648 | return NO_IRQ; | 1649 | return NO_IRQ; |
1649 | } | 1650 | } |
1650 | if (unlikely(mpic->protected && test_bit(src, mpic->protected))) { | 1651 | if (unlikely(mpic->protected && test_bit(src, mpic->protected))) { |
1651 | if (printk_ratelimit()) | 1652 | printk_ratelimited(KERN_WARNING "%s: Got protected source %d !\n", |
1652 | printk(KERN_WARNING "%s: Got protected source %d !\n", | 1653 | mpic->name, (int)src); |
1653 | mpic->name, (int)src); | ||
1654 | mpic_eoi(mpic); | 1654 | mpic_eoi(mpic); |
1655 | return NO_IRQ; | 1655 | return NO_IRQ; |
1656 | } | 1656 | } |
@@ -1688,9 +1688,8 @@ unsigned int mpic_get_coreint_irq(void) | |||
1688 | return NO_IRQ; | 1688 | return NO_IRQ; |
1689 | } | 1689 | } |
1690 | if (unlikely(mpic->protected && test_bit(src, mpic->protected))) { | 1690 | if (unlikely(mpic->protected && test_bit(src, mpic->protected))) { |
1691 | if (printk_ratelimit()) | 1691 | printk_ratelimited(KERN_WARNING "%s: Got protected source %d !\n", |
1692 | printk(KERN_WARNING "%s: Got protected source %d !\n", | 1692 | mpic->name, (int)src); |
1693 | mpic->name, (int)src); | ||
1694 | return NO_IRQ; | 1693 | return NO_IRQ; |
1695 | } | 1694 | } |
1696 | 1695 | ||