Lines Matching +full:single +full:- +full:cpu
40 kdb_current_task = kgdb_info[ks->cpu].task; in kdb_common_init_state()
41 kdb_current_regs = kgdb_info[ks->cpu].debuggerinfo; in kdb_common_init_state()
47 kdb_initial_cpu = -1; in kdb_common_deinit_state()
57 unsigned long addr = kgdb_arch_pc(ks->ex_vector, ks->linux_regs); in kdb_stub()
66 addr = instruction_pointer(ks->linux_regs); in kdb_stub()
68 ks->pass_exception = 0; in kdb_stub()
72 if (ks->err_code == KDB_REASON_SYSTEM_NMI && ks->signo == SIGTRAP) in kdb_stub()
79 if ((bp->bp_enabled) && (bp->bp_addr == addr)) { in kdb_stub()
82 if (addr != instruction_pointer(ks->linux_regs)) in kdb_stub()
83 kgdb_arch_set_pc(ks->linux_regs, addr); in kdb_stub()
89 if (bp->bp_free) in kdb_stub()
91 if (bp->bp_addr == addr) { in kdb_stub()
92 bp->bp_delay = 1; in kdb_stub()
93 bp->bp_delayed = 1; in kdb_stub()
95 * SSBPT is set when the kernel debugger must single step a in kdb_stub()
96 * task in order to re-establish an instruction breakpoint in kdb_stub()
98 * cleared by any action that removes the need to single-step in kdb_stub()
109 if (reason != KDB_REASON_BREAK && ks->ex_vector == 0 && in kdb_stub()
110 ks->signo == SIGTRAP) { in kdb_stub()
117 /* Remove any breakpoints as needed by kdb and clear single step */ in kdb_stub()
121 if (ks->err_code == DIE_OOPS || reason == KDB_REASON_OOPS) { in kdb_stub()
122 ks->pass_exception = 1; in kdb_stub()
135 ks->err_code, db_result, ks->linux_regs); in kdb_stub()
148 kdb_bp_install(ks->linux_regs); in kdb_stub()
149 /* Set the exit state to a single step or a continue */ in kdb_stub()
158 kgdb_info[ks->cpu].ret_state = gdbstub_state(ks, "e"); in kdb_stub()
159 if (ks->pass_exception) in kdb_stub()
160 kgdb_info[ks->cpu].ret_state = 1; in kdb_stub()
164 * Force clear the single step bit because kdb emulates this in kdb_stub()
170 return kgdb_info[ks->cpu].ret_state; in kdb_stub()