Loading arch/sparc/include/asm/pil.h +1 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ #define PIL_DEVICE_IRQ 5 #define PIL_SMP_CALL_FUNC_SNGL 6 #define PIL_DEFERRED_PCR_WORK 7 #define PIL_KGDB_CAPTURE 8 #define PIL_NORMAL_MAX 14 #define PIL_NMI 15 Loading arch/sparc/kernel/kgdb_64.c +1 −1 Original line number Diff line number Diff line Loading @@ -108,7 +108,7 @@ void gdb_regs_to_pt_regs(unsigned long *gdb_regs, struct pt_regs *regs) } #ifdef CONFIG_SMP void smp_kgdb_capture_client(struct pt_regs *regs) void smp_kgdb_capture_client(int irq, struct pt_regs *regs) { unsigned long flags; Loading arch/sparc/kernel/pci_common.c +1 −1 Original line number Diff line number Diff line Loading @@ -368,7 +368,7 @@ static void pci_register_iommu_region(struct pci_pbm_info *pbm) const u32 *vdma = of_get_property(pbm->op->node, "virtual-dma", NULL); if (vdma) { struct resource *rp = kmalloc(sizeof(*rp), GFP_KERNEL); struct resource *rp = kzalloc(sizeof(*rp), GFP_KERNEL); if (!rp) { prom_printf("Cannot allocate IOMMU resource.\n"); Loading arch/sparc/kernel/ttable.S +6 −1 Original line number Diff line number Diff line Loading @@ -64,7 +64,12 @@ tl0_irq6: TRAP_IRQ(smp_call_function_single_client, 6) tl0_irq6: BTRAP(0x46) #endif tl0_irq7: TRAP_IRQ(deferred_pcr_work_irq, 7) tl0_irq8: BTRAP(0x48) BTRAP(0x49) #ifdef CONFIG_KGDB tl0_irq8: TRAP_IRQ(smp_kgdb_capture_client, 8) #else tl0_irq8: BTRAP(0x48) #endif tl0_irq9: BTRAP(0x49) tl0_irq10: BTRAP(0x4a) BTRAP(0x4b) BTRAP(0x4c) BTRAP(0x4d) tl0_irq14: TRAP_IRQ(timer_interrupt, 14) tl0_irq15: TRAP_NMI_IRQ(perfctr_irq, 15) Loading arch/sparc/mm/ultra.S +2 −22 Original line number Diff line number Diff line Loading @@ -679,28 +679,8 @@ xcall_new_mmu_context_version: #ifdef CONFIG_KGDB .globl xcall_kgdb_capture xcall_kgdb_capture: 661: rdpr %pstate, %g2 wrpr %g2, PSTATE_IG | PSTATE_AG, %pstate .section .sun4v_2insn_patch, "ax" .word 661b nop nop .previous rdpr %pil, %g2 wrpr %g0, PIL_NORMAL_MAX, %pil sethi %hi(109f), %g7 ba,pt %xcc, etrap_irq 109: or %g7, %lo(109b), %g7 #ifdef CONFIG_TRACE_IRQFLAGS call trace_hardirqs_off nop #endif call smp_kgdb_capture_client add %sp, PTREGS_OFF, %o0 /* Has to be a non-v9 branch due to the large distance. */ ba rtrap_xcall ldx [%sp + PTREGS_OFF + PT_V9_TSTATE], %l1 wr %g0, (1 << PIL_KGDB_CAPTURE), %set_softint retry #endif #endif /* CONFIG_SMP */ Loading Loading
arch/sparc/include/asm/pil.h +1 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ #define PIL_DEVICE_IRQ 5 #define PIL_SMP_CALL_FUNC_SNGL 6 #define PIL_DEFERRED_PCR_WORK 7 #define PIL_KGDB_CAPTURE 8 #define PIL_NORMAL_MAX 14 #define PIL_NMI 15 Loading
arch/sparc/kernel/kgdb_64.c +1 −1 Original line number Diff line number Diff line Loading @@ -108,7 +108,7 @@ void gdb_regs_to_pt_regs(unsigned long *gdb_regs, struct pt_regs *regs) } #ifdef CONFIG_SMP void smp_kgdb_capture_client(struct pt_regs *regs) void smp_kgdb_capture_client(int irq, struct pt_regs *regs) { unsigned long flags; Loading
arch/sparc/kernel/pci_common.c +1 −1 Original line number Diff line number Diff line Loading @@ -368,7 +368,7 @@ static void pci_register_iommu_region(struct pci_pbm_info *pbm) const u32 *vdma = of_get_property(pbm->op->node, "virtual-dma", NULL); if (vdma) { struct resource *rp = kmalloc(sizeof(*rp), GFP_KERNEL); struct resource *rp = kzalloc(sizeof(*rp), GFP_KERNEL); if (!rp) { prom_printf("Cannot allocate IOMMU resource.\n"); Loading
arch/sparc/kernel/ttable.S +6 −1 Original line number Diff line number Diff line Loading @@ -64,7 +64,12 @@ tl0_irq6: TRAP_IRQ(smp_call_function_single_client, 6) tl0_irq6: BTRAP(0x46) #endif tl0_irq7: TRAP_IRQ(deferred_pcr_work_irq, 7) tl0_irq8: BTRAP(0x48) BTRAP(0x49) #ifdef CONFIG_KGDB tl0_irq8: TRAP_IRQ(smp_kgdb_capture_client, 8) #else tl0_irq8: BTRAP(0x48) #endif tl0_irq9: BTRAP(0x49) tl0_irq10: BTRAP(0x4a) BTRAP(0x4b) BTRAP(0x4c) BTRAP(0x4d) tl0_irq14: TRAP_IRQ(timer_interrupt, 14) tl0_irq15: TRAP_NMI_IRQ(perfctr_irq, 15) Loading
arch/sparc/mm/ultra.S +2 −22 Original line number Diff line number Diff line Loading @@ -679,28 +679,8 @@ xcall_new_mmu_context_version: #ifdef CONFIG_KGDB .globl xcall_kgdb_capture xcall_kgdb_capture: 661: rdpr %pstate, %g2 wrpr %g2, PSTATE_IG | PSTATE_AG, %pstate .section .sun4v_2insn_patch, "ax" .word 661b nop nop .previous rdpr %pil, %g2 wrpr %g0, PIL_NORMAL_MAX, %pil sethi %hi(109f), %g7 ba,pt %xcc, etrap_irq 109: or %g7, %lo(109b), %g7 #ifdef CONFIG_TRACE_IRQFLAGS call trace_hardirqs_off nop #endif call smp_kgdb_capture_client add %sp, PTREGS_OFF, %o0 /* Has to be a non-v9 branch due to the large distance. */ ba rtrap_xcall ldx [%sp + PTREGS_OFF + PT_V9_TSTATE], %l1 wr %g0, (1 << PIL_KGDB_CAPTURE), %set_softint retry #endif #endif /* CONFIG_SMP */ Loading