Commit 27cc64c7 authored by David S. Miller's avatar David S. Miller

[SPARC64]: Rate limited kernel unaligned trap logging, ala IA64.

Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 20edac8a
...@@ -279,12 +279,21 @@ static void kernel_mna_trap_fault(void) ...@@ -279,12 +279,21 @@ static void kernel_mna_trap_fault(void)
asmlinkage void kernel_unaligned_trap(struct pt_regs *regs, unsigned int insn) asmlinkage void kernel_unaligned_trap(struct pt_regs *regs, unsigned int insn)
{ {
static unsigned long count, last_time;
enum direction dir = decode_direction(insn); enum direction dir = decode_direction(insn);
int size = decode_access_size(insn); int size = decode_access_size(insn);
current_thread_info()->kern_una_regs = regs; current_thread_info()->kern_una_regs = regs;
current_thread_info()->kern_una_insn = insn; current_thread_info()->kern_una_insn = insn;
if (jiffies - last_time > 5 * HZ)
count = 0;
if (count < 5) {
last_time = jiffies;
count++;
printk("Kernel unaligned access at TPC[%lx]\n", regs->tpc);
}
if (!ok_for_kernel(insn) || dir == both) { if (!ok_for_kernel(insn) || dir == both) {
printk("Unsupported unaligned load/store trap for kernel " printk("Unsupported unaligned load/store trap for kernel "
"at <%016lx>.\n", regs->tpc); "at <%016lx>.\n", regs->tpc);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment