diff options
author | bde <bde@FreeBSD.org> | 2006-10-10 07:26:54 +0000 |
---|---|---|
committer | bde <bde@FreeBSD.org> | 2006-10-10 07:26:54 +0000 |
commit | f79090f0c4a3cd4d98c3317eb143fb7417b55e02 (patch) | |
tree | a85116de8ffcc81b9dafad7de3b1073f4959f00b /sys/ddb | |
parent | 11fc90bf2d239d83a33478bdb65d47f47e88c7d4 (diff) | |
download | FreeBSD-src-f79090f0c4a3cd4d98c3317eb143fb7417b55e02.zip FreeBSD-src-f79090f0c4a3cd4d98c3317eb143fb7417b55e02.tar.gz |
The powerpc and sparc64 MD `reboot' commands should never have existed
since they just duplicated the MI `reset' command. Instead of removing
them, make `reboot' an MI alias for `reboot' since this gives a better
way of killing the `r' alias for `reset'. Remove the `registers' command
that was used to kill the alias.
Turn the powerpc and sparc64 MD `halt' command into an MI command.
A copy of sparc64/db_interface.c grew in sun4v just after I found the
extra reboot commands. It has not been changed, and is now not
identical. Duplicated commands come out duplicated in ddb's online
help, but cause large problems when used (e.g., on i386's with 2 halt's
and an hwatch, typing h doesn' give the expected message about an
ambiguous command, but hangs like the halt command or a looping parseri
would).
Diffstat (limited to 'sys/ddb')
-rw-r--r-- | sys/ddb/db_command.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/sys/ddb/db_command.c b/sys/ddb/db_command.c index 36c5112..98fd39a 100644 --- a/sys/ddb/db_command.c +++ b/sys/ddb/db_command.c @@ -68,6 +68,7 @@ SET_DECLARE(db_show_cmd_set, struct command); static db_cmdfcn_t db_fncall; static db_cmdfcn_t db_gdb; +static db_cmdfcn_t db_halt; static db_cmdfcn_t db_kill; static db_cmdfcn_t db_reset; static db_cmdfcn_t db_stack_trace; @@ -134,7 +135,8 @@ static struct command db_commands[] = { { "show", 0, 0, &db_show_table }, { "ps", db_ps, 0, 0 }, { "gdb", db_gdb, 0, 0 }, - { "registers", db_show_regs, 0, 0 }, + { "halt", db_halt, 0, 0 }, + { "reboot", db_reset, 0, 0 }, { "reset", db_reset, 0, 0 }, { "kill", db_kill, CS_OWN, 0 }, { "watchdog", db_watchdog, 0, 0 }, @@ -538,6 +540,13 @@ db_fncall(dummy1, dummy2, dummy3, dummy4) } static void +db_halt(db_expr_t dummy, boolean_t dummy2, db_expr_t dummy3, char *dummy4) +{ + + cpu_halt(); +} + +static void db_kill(dummy1, dummy2, dummy3, dummy4) db_expr_t dummy1; boolean_t dummy2; |