Commit Graph

176 Commits

Author SHA1 Message Date
kleink
522cbf0248 Update to match new SVR4-style definition names in <sys/exec_elf.h>. 1999-10-25 13:55:06 +00:00
erh
59b90d4a0e Remove ELFNAME macros which are already defines in exec_elf.h 1999-10-21 21:17:08 +00:00
jdolecek
9933da44b8 remove the MI Debugger() added recently. It doesn't make sense in
it's current form.
make Debugger just an alias for cpu_Debugger
1999-10-14 18:42:15 +00:00
jdolecek
7f589dba84 rename the MD Debugger() to cpu_Debugger()
add MI Debugger() which switches to console if wscons is used prior
to calling cpu_Debugger()
1999-10-12 17:08:56 +00:00
thorpej
40c08923a8 XXX LOCKING XXX of allproc; DDB runs with interrupts blocked, and MD
code should suspend other processors, so this probably isn't a problem,
but the comment is added anyhow.
1999-07-22 21:11:26 +00:00
simonb
3187dcd798 Fix tyop in error message. 1999-06-26 16:58:12 +00:00
thorpej
fed8519457 Don't load the symbol table if it's corrupted. 1999-06-15 00:23:19 +00:00
pk
56aa5f9391 Cast ptrdiff_t to long for printf purposes. 1999-06-05 08:36:29 +00:00
ross
66ffb4e4d6 New format modifier: L' gives true long' vs l' or legacy' long. 1999-05-31 06:53:45 +00:00
thorpej
4b6d8943c2 Improve the pool allocator's diagnostic helpers, adding the ability to
log on a per-pool basis, reentrancy checking, and dumping various pool
information from DDB.
1999-05-10 21:13:05 +00:00
christos
c3564f7b88 Don't go dereferencing pointers before verifying they are aligned. 1999-04-29 11:28:42 +00:00
thorpej
dc63f8c31a Fix a problem where SOFTWARE_SSTEP would skip one instruction each time
on the Alpha.
1999-04-21 00:00:06 +00:00
pk
b13e5d1469 Quote "AS IS" as in the majority of Carnegy Mellon notices. 1999-04-12 20:38:17 +00:00
pk
c40eb1cd97 Fix a pasto in copyright text which has been procreating like rabbits.. 1999-04-06 20:09:18 +00:00
mrg
d2397ac5f7 completely remove Mach VM support. all that is left is the all the
header files as UVM still uses (most of) these.
1999-03-24 05:50:49 +00:00
thorpej
1ab6db8e5f Fix printf format problems on Alpha. 1999-02-12 00:50:09 +00:00
augustss
332d7c138f Avoid arithmetic on `void *' since that's not ANSI C. 1999-01-08 18:10:35 +00:00
thorpej
c89493522f - Make the ddb_init() interface consistent for a.out and ELF.
- Allow DDB to run-time switch for a.out or ELF symbol table support.
1998-12-04 20:18:05 +00:00
mycroft
26a93b8985 Do branch forking for inst_return() instructions, too. 1998-11-25 06:38:03 +00:00
jonathan
3ac3cbcfb8 Add options DDB_FROMCONSOLE and sysctl ddb.fromconsole, analagous to
DDB_ONPANIC. Lets user ignore breaks but enter DDB on panic.  Intended
for machines where debug on panic is useful, but DDB entry is not,
(public-access console, or terminal-servers which send spurious breaks)

Add new ddb hook, console_debugger(), which decides whether or not to
ignore console ddb requests. Console drivers should be updated to call
console_debugger(), not Debugger(), in response to serial-console
break or ddb keyboard sequence.
1998-10-29 21:22:32 +00:00
thorpej
970e60efb8 - Use proclists[], rather than checking allproc and zombproc explicitly.
- Add some comments about locking.
1998-09-08 23:50:13 +00:00
christos
bd52ba3c5a Assign copyright to TNF. 1998-09-05 14:42:05 +00:00
rvb
e2ea9195fe Indent to 4 space for tabs 2 and 3 like the rest of the code 1998-08-16 03:29:16 +00:00
ross
c291189ae9 Have to fix the `(int)curproc' lossage now; kernel builds die here on alpha.
BTW, KNF requires the additional, not-technically-need `!= NULL'.
1998-08-15 00:04:00 +00:00
rvb
a5f4270a21 Print program name when entering the debugger 1998-08-14 19:57:01 +00:00
eeh
a2dd74ed79 Merge paddr_t changes into the main branch. 1998-08-13 02:10:37 +00:00
perry
e1601dc2ca bzero->memset, bcopy->memcpy, bcmp->memcmp 1998-08-09 20:36:58 +00:00
tron
870e46e9c4 Include required "opt_ddb.h" header file. 1998-07-05 14:33:56 +00:00
jonathan
466e784ee1 defopt DDB. 1998-07-04 22:18:13 +00:00
tv
00ede2160e Change ddb_init() for a.out to provision for kernels which are not booted by
the current 'bootblock' method, like the Shark, which preloads and preformats
the symbol table right in the boot code.
1998-06-09 01:57:41 +00:00
thorpej
38f367e1a0 Whitespace. 1998-05-03 18:49:54 +00:00
pk
df2b26547d If `SOFTWARE_SSTEP' is defined then kgdb_stub.c needs the single-step
emulation in db_run.c:

	- re-arrange `db_*_single_step()' and `db_*_temp_breakpoint()' -
	  which are only used in the `SOFTWARE_SSTEP' case - so these
	  are available to the KGDB code.
	- make other code in db_run.c conditional on `DDB'.
1998-04-03 19:45:12 +00:00
mrg
d90485202c - add defopt's for UVM, UVMHIST and PMAP_NEW.
- remove unnecessary UVMHIST_DECL's.
1998-02-10 14:08:44 +00:00
mrg
1a8c7604f4 initial import of the new virtual memory system, UVM, into -current.
UVM was written by chuck cranor <chuck@maria.wustl.edu>, with some
minor portions derived from the old Mach code.  i provided some help
getting swap and paging working, and other bug fixes/ideas.  chuck
silvers <chuq@chuq.com> also provided some other fixes.

this is the rest of the MI portion changes.

this will be KNF'd shortly.  :-)
1998-02-05 07:59:28 +00:00
ross
9b463a1108 Print more info on ps/w, note the current proc, and properly declare db_maxoff. 1998-01-31 04:14:46 +00:00
pk
1581707b5d Fixes for software-assisted single-stepping from Chuck Silvers. 1997-12-10 23:09:31 +00:00
drochner
9d7d537acb Clean up usage of printf() vs db_printf(): The diagnostic messages
when symbol tables are loaded don't belong to the user interaction,
their output lines should not be counted by ddb's builtin pager.
1997-11-30 15:49:34 +00:00
lukem
4e3ba1ea9e s/DB_HISTORY_SIZE/DDB_HISTORY_SIZE/, for consistency with other DDB #defines 1997-11-16 23:51:23 +00:00
christos
ab417737fa Add declaration for db_delete_line 1997-11-16 22:46:39 +00:00
christos
98ec14c8e6 PR/4504: Tero Kivinen: Add DB_HISTORY_SIZE option to enable history in ddb 1997-11-16 22:24:47 +00:00
chuck
e0ced7363a fix printf formatting of "ps" (aka "show all proc") so that lines never
overflow (always hated that).

replaced "/m" flag with:
	/a == show process address info
	/n == show normal process info [currently the default]
	/w == show process wait/emul info
1997-10-24 18:26:36 +00:00
chuck
c33b782b4e kill db_ksprintn, db_printf_guts, kdbprintf, db_printf.
db_printf moves to kern/subr_prf.c and uses the new kprintf located there.
1997-10-24 18:20:23 +00:00
chuck
58034fb20c kill kdbprintf [use db_printf] 1997-10-24 18:16:46 +00:00
pk
6282a103eb Last loop variable type change causes undesirable non-terminating loops.
Change for-loop expressions to get the intended effect again.
1997-09-13 18:44:55 +00:00
scottr
4658336eda Add a 'reboot' command with a single parameter specifying the boot flags. 1997-09-11 06:55:56 +00:00
pk
ae6bc354b9 Use the macro PC_ADVANCE(), if defined, to skip over a breakpoint. 1997-09-10 19:37:31 +00:00
mycroft
b74cbfe5ed Eliminate signed-unsigned comparisons. 1997-09-09 18:59:23 +00:00
thorpej
f576b48b39 Make sure debugging symbol sections are aligned. 1997-09-05 21:46:59 +00:00
thorpej
5accaea913 Add support for Elf symbol tables to DDB, written from scratch by me.
Known to work in DDB under NetBSD/alpha.
1997-07-01 18:36:36 +00:00
thorpej
9ec5f78d39 Pass the current DDB symbol table to X_db_symbol_values(). 1997-06-26 01:19:07 +00:00
thorpej
d9f8d88a35 Fixup the software single-step code (used on architectures where there
is no hardware support for single-stepping):
- Fix branch prediction and delay slot computation (for the MIPS).
- Correctly deal with branch taken vs. branch not taken cases, and
  self-branches.
- General cleanup, including types botches.
Partially from Mach 3, with a bunch of cleanup work by me.
1997-06-26 01:18:11 +00:00
thorpej
1d7e4d35d9 Update prototypes for new function signatures. Note, the ddb_init()
signature is currently different for the DB_AOUT_SYMBOLS vs. the
DB_ELF_SYMBOLS cases. (XXX)
1997-06-26 01:14:16 +00:00
thorpej
84c0797eda Use db_expr_t rather than int when reading a value from the kernel
address space, to avoid type-size problems.
1997-06-26 01:13:11 +00:00
thorpej
0ae10b0d60 In the db_breakpoint_t, use a db_expr_t to store the original instruction,
not an int.
1997-06-26 01:12:05 +00:00
thorpej
76fbbf772d A few small changes to make it easier to support non-a.out symbol table
formats in DDB:
- Reverse the sense of the symbol format #ifdef... i.e. instead of
  "#ifndef DB_NO_AOUT", use "#ifdef DB_AOUT_SYMBOLS".  This is pulled
  in from <machine/db_machdep.h>.
- Change the signature of X_db_sym_init().  Instead of int * and char *,
  it now takes void *'s for the start and end of the symbol table.
- In X_db_sym_init(), check that the pointer to the beginning of
  the symbol table is aligned.
- X_db_symbol_values() now takes a "db_symtab_t *symtab" argument.
1997-06-26 01:11:00 +00:00
thorpej
c95e0b0782 Use db_expr_t rather than int in a few strategic places to avoid
type-size problems.
1997-06-26 01:06:46 +00:00
gwr
25bdbcc1dc Move some DDB stuff here from kern_clock.c and kern_proc.c 1997-05-21 19:54:00 +00:00
gwr
84e0c3eb4b Add a "kill" command that calls db_kill_proc(). 1997-05-07 18:51:58 +00:00
gwr
8ae8b46853 Add db_kill_proc(). 1997-05-07 18:50:50 +00:00
gwr
ea3925f508 FIXUP_PC_AFTER_BREAK now takes an arg of type db_regs_t * 1997-02-06 21:16:28 +00:00
cgd
a9295bf811 make variable pointers (in variable declaration structs) be 'long *', so
that the common case can be handled with no hassles on all machines.
fix up the various internal variables which are also exported via sysctl
(and which therefore must be 'int's) to do the right thing via a special
read/write function.
1997-02-04 00:33:32 +00:00
cgd
bd0be84b0a fix printf format widths 1997-02-04 00:32:09 +00:00
mycroft
12da023cd4 db_expr_t became a long. 1997-02-03 23:36:09 +00:00
cgd
a34fffe676 part of the SOFTWARE_SSTEP code was mips-specific. #ifdef it appropriately.
fix various 64-bitness bugs.
fix various -Wall bugs.
1997-02-03 19:57:41 +00:00
cgd
3e34fdf8ac fix various 64-bitness bugs.
fix various db_printf format bugs (long vs. int, etc.).
1997-02-03 19:57:03 +00:00
cgd
4e829562bb needs systm.h for prototypes 1997-02-03 19:56:24 +00:00
cgd
65a65d45b2 fix various 64-bitness bugs. 1997-02-03 19:56:03 +00:00
thorpej
c14ce368af Define db_onpanic variable; if non-zero, the DDB will be entered when
the kernel panics.  It may be initialized to 0 with the kernel option
"DDB_ONPANIC=0", and is patchable.  It may be changed at run-time
from within the DDB (as a DDB variable) or via the ddb.onpanic sysctl
node.

Export all DDB built-in variables via sysctl.
1997-01-09 05:37:02 +00:00
fvdl
d5f094e14f Make this compile with -Wcast-qual 1996-10-28 08:42:13 +00:00
christos
17f5b2a175 backout previous kprintf changes 1996-10-13 04:10:34 +00:00
christos
5476886e52 printf -> kprintf, sprintf -> ksprintf 1996-10-10 17:47:29 +00:00
christos
3f15a06497 Recognize %.2x as %02x 1996-09-25 21:03:06 +00:00
cgd
34829de7f9 change more __kprintf__ format attributes to use __kprintf_attribute__,
rather than just __attribute__, so they can be #defined out on non-NetBSD
versions of gcc.
1996-04-04 05:13:50 +00:00
christos
6bfb8e5ce7 Fix cut'n'paste'o in %p previous fix. 1996-04-01 17:27:14 +00:00
christos
e86e25ba54 Add __kprintf__ attributes to the printf functions 1996-03-31 21:43:17 +00:00
christos
9352303b25 Recognize %p formats so that ps/m works in ddb 1996-03-31 21:42:42 +00:00
christos
f9c1d40866 Fix db_printf format specifications. 1996-03-30 22:30:03 +00:00
christos
73a848c28f - Fix db_printf format args.
- Recognize ':' as recursive printf; fixes PR/835
- cleanup error(1) output.
1996-03-30 22:28:45 +00:00
christos
b4a31b1fc7 Kernel version of longjmp() does not take the return value of setjmp() as
an argument. setjmp() always returns 1.
1996-03-13 21:06:38 +00:00
christos
bdc697d910 Bring setjmp/longjmp prototypes into scope. 1996-03-07 14:33:39 +00:00
gwr
5688147b3a Eliminate dependency on /usr/include/* 1996-02-27 20:54:43 +00:00
gwr
eebcc06b89 eliminate setjmp.h 1996-02-13 17:39:01 +00:00
christos
8c2e3b4b11 DDB prototype changes. 1996-02-05 01:56:47 +00:00
cgd
f5655b153b fix paste-o 1995-11-24 22:13:08 +00:00
cgd
5cd2526d5c db_lastsym (cast from pointer) should be long not int. db_maxoff -> db_expr_t 1995-11-23 01:42:08 +00:00
gwr
e3c55a3fdd Need to include <vm/vm.h> 1995-10-26 14:52:33 +00:00
mycroft
c32738aa00 Fix nits pointed out by GCC 2.7. 1995-10-16 05:28:14 +00:00
gwr
e7f3fdcd35 Avoid printing values as "end+0x...." 1995-05-24 20:21:00 +00:00
gwr
138e648f63 Leave db_recover as it was on entry to avoid endless "exception in ddb"...
(Don't need to frob it at all here because db_command_loop does it.)
1994-12-02 06:07:37 +00:00
gwr
df82cd38bb Make x/a print the address; simplify slightly. 1994-11-17 04:51:50 +00:00
gwr
21a1e8e747 When use default form when printing location (i.e. after step).
Use less space printing longs (so you can fit four per line).
1994-11-14 20:40:04 +00:00
mycroft
f77d6c1435 Remove bogus definition of cnpollc(). 1994-10-26 17:57:50 +00:00
mycroft
4f0f8fdfc4 db_error() does not return. 1994-10-09 08:56:23 +00:00
mycroft
72fa9c8429 Get rid of unneeded `extern's. 1994-10-09 08:41:20 +00:00
mycroft
07dbafe712 Use BYTE_ORDER, not BYTE_[LM]SF. 1994-10-09 08:37:35 +00:00
mycroft
9085601009 Clean up #includes. 1994-10-09 08:29:55 +00:00
mycroft
da4e97dcc4 Add prototypes. 1994-10-09 08:19:29 +00:00
mycroft
17ac077f4b Fix some weird formatting. 1994-10-06 05:20:42 +00:00
gwr
3e676d4221 Fix data size specifiers and multiple format specifiers, like:
db> x/bxxxx  ADDRESS
1994-09-26 17:10:15 +00:00
gwr
e49a8e54d0 Make "examine" (x/i) always print the address. 1994-06-30 12:49:54 +00:00