Lines Matching refs:ks
414 static int kgdb_reenter_check(struct kgdb_state *ks) in kgdb_reenter_check() argument
423 addr = kgdb_arch_pc(ks->ex_vector, ks->linux_regs); in kgdb_reenter_check()
434 kgdb_skipexception(ks->ex_vector, ks->linux_regs); in kgdb_reenter_check()
442 kgdb_skipexception(ks->ex_vector, ks->linux_regs); in kgdb_reenter_check()
467 static int kgdb_cpu_enter(struct kgdb_state *ks, struct pt_regs *regs, in kgdb_cpu_enter() argument
478 kgdb_info[ks->cpu].enter_kgdb++; in kgdb_cpu_enter()
479 kgdb_info[ks->cpu].exception_state |= exception_state; in kgdb_cpu_enter()
496 cpu = ks->cpu; in kgdb_cpu_enter()
574 if (kgdb_skipexception(ks->ex_vector, ks->linux_regs)) in kgdb_cpu_enter()
590 if (ks->send_ready) in kgdb_cpu_enter()
591 atomic_set(ks->send_ready, 1); in kgdb_cpu_enter()
625 error = kdb_stub(ks); in kgdb_cpu_enter()
630 error = gdb_serial_stub(ks); in kgdb_cpu_enter()
694 struct kgdb_state *ks = &kgdb_var; in kgdb_handle_exception() local
708 memset(ks, 0, sizeof(struct kgdb_state)); in kgdb_handle_exception()
709 ks->cpu = raw_smp_processor_id(); in kgdb_handle_exception()
710 ks->ex_vector = evector; in kgdb_handle_exception()
711 ks->signo = signo; in kgdb_handle_exception()
712 ks->err_code = ecode; in kgdb_handle_exception()
713 ks->linux_regs = regs; in kgdb_handle_exception()
715 if (kgdb_reenter_check(ks)) in kgdb_handle_exception()
717 if (kgdb_info[ks->cpu].enter_kgdb != 0) in kgdb_handle_exception()
720 ret = kgdb_cpu_enter(ks, regs, DCPU_WANT_MASTER); in kgdb_handle_exception()
747 struct kgdb_state *ks = &kgdb_var; in kgdb_nmicallback() local
749 memset(ks, 0, sizeof(struct kgdb_state)); in kgdb_nmicallback()
750 ks->cpu = cpu; in kgdb_nmicallback()
751 ks->linux_regs = regs; in kgdb_nmicallback()
753 if (kgdb_info[ks->cpu].enter_kgdb == 0 && in kgdb_nmicallback()
755 kgdb_cpu_enter(ks, regs, DCPU_IS_SLAVE); in kgdb_nmicallback()
771 struct kgdb_state *ks = &kgdb_var; in kgdb_nmicallin() local
773 memset(ks, 0, sizeof(struct kgdb_state)); in kgdb_nmicallin()
774 ks->cpu = cpu; in kgdb_nmicallin()
775 ks->ex_vector = trapnr; in kgdb_nmicallin()
776 ks->signo = SIGTRAP; in kgdb_nmicallin()
777 ks->err_code = err_code; in kgdb_nmicallin()
778 ks->linux_regs = regs; in kgdb_nmicallin()
779 ks->send_ready = send_ready; in kgdb_nmicallin()
780 kgdb_cpu_enter(ks, regs, DCPU_WANT_MASTER); in kgdb_nmicallin()