diff options
author | Richard Braun <rbraun@sceen.net> | 2017-02-08 21:58:38 +0100 |
---|---|---|
committer | Richard Braun <rbraun@sceen.net> | 2017-02-08 21:58:38 +0100 |
commit | e69a4c4c3ca62d816bb4542792bcc741a7360af2 (patch) | |
tree | 19516cdd779a8a759e26db3cbde4bc4103946dbc /kern/task.c | |
parent | 05f3b97ee07e6af26613dfbfe57619a700aa349a (diff) |
kern/thread: add wait channels
Diffstat (limited to 'kern/task.c')
-rw-r--r-- | kern/task.c | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/kern/task.c b/kern/task.c index e415cb65..f4586eed 100644 --- a/kern/task.c +++ b/kern/task.c @@ -29,6 +29,12 @@ #include <vm/vm_kmem.h> #include <vm/vm_map.h> +#ifdef __LP64__ +#define TASK_INFO_ADDR_FMT "%016lx" +#else /* __LP64__ */ +#define TASK_INFO_ADDR_FMT "%08lx" +#endif /* __LP64__ */ + /* * Kernel task and storage. */ @@ -138,9 +144,15 @@ task_info(struct task *task) printk("task: name: %s, threads:\n", task->name); list_for_each_entry(&task->threads, thread, task_node) { - printk("task: %s: %p %c %.2s:%02hu %s\n", task->name, thread, - thread_state_to_chr(thread), thread_schedclass_to_str(thread), - thread_priority(thread), thread->name); + printk("task: " TASK_INFO_ADDR_FMT " %c %8s:" TASK_INFO_ADDR_FMT + " %.2s:%02hu %s\n", + (unsigned long)thread, + thread_state_to_chr(thread), + thread_wchan_desc(thread), + (unsigned long)thread_wchan_addr(thread), + thread_schedclass_to_str(thread), + thread_priority(thread), + thread->name); } spinlock_unlock(&task->lock); |