171,13 → 171,13 |
thread_stop(); |
} |
|
static int task_connect(int taskid) |
static int task_connect(task_id_t task_id) |
{ |
int rc; |
unsigned evmask; |
|
cons_printf("ipc_connect_kbox(%d)... ", taskid); |
rc = ipc_connect_kbox(taskid); |
cons_printf("ipc_connect_kbox(%;;d)... ", task_id); |
rc = ipc_connect_kbox(task_id); |
cons_printf("-> %d\n", rc); |
app_phone = rc; |
if (rc < 0) return rc; |
328,7 → 328,7 |
fibril_add_ready(fid); |
} |
|
static void debug_active_task(void) |
static void debug_active_task(task_id_t task_id) |
{ |
int taskid; |
int i; |
338,18 → 338,14 |
int n_threads; |
|
cons_printf("Breakpoint Debugger\n"); |
cons_printf("Press 'c' to connect\n"); |
while ((i = getchar()) != 'c') |
putchar(i); |
|
taskid = /*13 mips32*/13; |
rc = task_connect(taskid); |
rc = task_connect(task_id); |
if (rc < 0) { |
cons_printf("Failed to connect to task %d\n", taskid); |
cons_printf("Failed to connect to task %lld\n", task_id); |
return; |
} |
|
cons_printf("Connected to task %d\n", taskid); |
cons_printf("Connected to task %lld\n", task_id); |
|
rc = get_thread_list(&thash_buffer, &n_threads); |
if (rc < 0) { |
390,13 → 386,32 |
cwt = NULL; |
} |
|
int main(void) |
static void print_syntax() |
{ |
main_init(); |
printf("syntax: debug <task_id>\n"); |
} |
|
while (1) { |
debug_active_task(); |
int main(int argc, char *argv[]) |
{ |
task_id_t task_id; |
char *err_p; |
|
if (argc != 2) { |
printf("Mising argument\n"); |
print_syntax(); |
return 1; |
} |
|
task_id = strtol(argv[1], &err_p, 10); |
|
if (*err_p) { |
printf("Task ID syntax error\n"); |
print_syntax(); |
return 1; |
} |
|
main_init(); |
debug_active_task(task_id); |
} |
|
/** @} |