diff options
author | julian <julian@FreeBSD.org> | 2002-12-28 01:23:07 +0000 |
---|---|---|
committer | julian <julian@FreeBSD.org> | 2002-12-28 01:23:07 +0000 |
commit | dde96893c92bc25fb17bdfa957ab33af10fcd5b9 (patch) | |
tree | 34088f29c02f6a4d56466e7db0deb792a033cebc /sys/ddb/db_command.c | |
parent | f142c827ba04af2b614cc0c982e33765b2903821 (diff) | |
download | FreeBSD-src-dde96893c92bc25fb17bdfa957ab33af10fcd5b9.zip FreeBSD-src-dde96893c92bc25fb17bdfa957ab33af10fcd5b9.tar.gz |
Add code to ddb to allow backtracing an arbitrary thread.
(show thread {address})
Remove the IDLE kse state and replace it with a change in
the way threads sahre KSEs. Every KSE now has a thread, which is
considered its "owner" however a KSE may also be lent to other
threads in the same group to allow completion of in-kernel work.
n this case the owner remains the same and the KSE will revert to the
owner when the other work has been completed.
All creations of upcalls etc. is now done from
kse_reassign() which in turn is called from mi_switch or
thread_exit(). This means that special code can be removed from
msleep() and cv_wait().
kse_release() does not leave a KSE with no thread any more but
converts the existing thread into teh KSE's owner, and sets it up
for doing an upcall. It is just inhibitted from being scheduled until
there is some reason to do an upcall.
Remove all trace of the kse_idle queue since it is no-longer needed.
"Idle" KSEs are now on the loanable queue.
Diffstat (limited to 'sys/ddb/db_command.c')
-rw-r--r-- | sys/ddb/db_command.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/sys/ddb/db_command.c b/sys/ddb/db_command.c index 62ed306..f0aa6d2 100644 --- a/sys/ddb/db_command.c +++ b/sys/ddb/db_command.c @@ -383,9 +383,7 @@ static struct command db_show_cmds[] = { { "all", 0, 0, db_show_all_cmds }, { "registers", db_show_regs, 0, 0 }, { "breaks", db_listbreak_cmd, 0, 0 }, -#if 0 { "thread", db_show_one_thread, 0, 0 }, -#endif #if 0 { "port", ipc_port_print, 0, 0 }, #endif |