Lines Matching refs:ks
531 static int kgdb_reenter_check(struct kgdb_state *ks) in kgdb_reenter_check() argument
540 addr = kgdb_arch_pc(ks->ex_vector, ks->linux_regs); in kgdb_reenter_check()
551 kgdb_skipexception(ks->ex_vector, ks->linux_regs); in kgdb_reenter_check()
559 kgdb_skipexception(ks->ex_vector, ks->linux_regs); in kgdb_reenter_check()
587 static int kgdb_cpu_enter(struct kgdb_state *ks, struct pt_regs *regs, in kgdb_cpu_enter() argument
598 kgdb_info[ks->cpu].enter_kgdb++; in kgdb_cpu_enter()
599 kgdb_info[ks->cpu].exception_state |= exception_state; in kgdb_cpu_enter()
617 cpu = ks->cpu; in kgdb_cpu_enter()
702 if (kgdb_skipexception(ks->ex_vector, ks->linux_regs)) in kgdb_cpu_enter()
720 if (ks->send_ready) in kgdb_cpu_enter()
721 atomic_set(ks->send_ready, 1); in kgdb_cpu_enter()
755 error = kdb_stub(ks); in kgdb_cpu_enter()
783 error = gdb_serial_stub(ks); in kgdb_cpu_enter()
855 struct kgdb_state *ks = &kgdb_var; in kgdb_handle_exception() local
869 memset(ks, 0, sizeof(struct kgdb_state)); in kgdb_handle_exception()
870 ks->cpu = raw_smp_processor_id(); in kgdb_handle_exception()
871 ks->ex_vector = evector; in kgdb_handle_exception()
872 ks->signo = signo; in kgdb_handle_exception()
873 ks->err_code = ecode; in kgdb_handle_exception()
874 ks->linux_regs = regs; in kgdb_handle_exception()
876 if (kgdb_reenter_check(ks)) in kgdb_handle_exception()
878 if (kgdb_info[ks->cpu].enter_kgdb != 0) in kgdb_handle_exception()
881 ret = kgdb_cpu_enter(ks, regs, DCPU_WANT_MASTER); in kgdb_handle_exception()
906 struct kgdb_state *ks = &kgdb_var; in kgdb_nmicallback() local
910 memset(ks, 0, sizeof(struct kgdb_state)); in kgdb_nmicallback()
911 ks->cpu = cpu; in kgdb_nmicallback()
912 ks->linux_regs = regs; in kgdb_nmicallback()
914 if (kgdb_info[ks->cpu].enter_kgdb == 0 && in kgdb_nmicallback()
916 kgdb_cpu_enter(ks, regs, DCPU_IS_SLAVE); in kgdb_nmicallback()
933 struct kgdb_state *ks = &kgdb_var; in kgdb_nmicallin() local
935 memset(ks, 0, sizeof(struct kgdb_state)); in kgdb_nmicallin()
936 ks->cpu = cpu; in kgdb_nmicallin()
937 ks->ex_vector = trapnr; in kgdb_nmicallin()
938 ks->signo = SIGTRAP; in kgdb_nmicallin()
939 ks->err_code = err_code; in kgdb_nmicallin()
940 ks->linux_regs = regs; in kgdb_nmicallin()
941 ks->send_ready = send_ready; in kgdb_nmicallin()
942 kgdb_cpu_enter(ks, regs, DCPU_WANT_MASTER); in kgdb_nmicallin()