| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
db_sym.h had not reached here.
|
|
|
|
|
|
|
| |
kernel compile.
This commit includes significant work to proper handle const arguments
for the DDB symbol routines.
|
|
|
|
|
| |
in db_lookup() to avoid the *cp = 0 / *cp = ':' combo ( temporary
nul-terminate-then-restore-original ) on a const char * string.
|
|
|
|
|
| |
<sys/linker_set.h> in those files that use only the linker set
definitions.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
for possible buffer overflow problems. Replaced most sprintf()'s
with snprintf(); for others cases, added terminating NUL bytes where
appropriate, replaced constants like "16" with sizeof(), etc.
These changes include several bug fixes, but most changes are for
maintainability's sake. Any instance where it wasn't "immediately
obvious" that a buffer overflow could not occur was made safer.
Reviewed by: Bruce Evans <bde@zeta.org.au>
Reviewed by: Matthew Dillon <dillon@apollo.backplane.com>
Reviewed by: Mike Spengler <mks@networkcs.com>
|
|
|
|
| |
tables that db_elf.c is expecting are not loaded in that format any more.
|
|
|
|
|
|
|
| |
get to all the symbol tables for all modules, not just the core kernel
symbol table. Yes, DDB can see KLD module symbols with this, both by
lookup and in tracebacks. No more references to _end from tracebacks
within an LKM. :-)
|
|
|
|
|
|
|
| |
because the alpha boot loader hasn't been converted yet, and because
it needs the full symbol tables with local symbols in order to make sense
of stack tracebacks. KLD will implement this (using full sybmol table
rather than the globals only) shortly.
|
|
|
|
|
|
| |
case it's possible to compile in something like ECOFF)
The three db_xxx.c symbol interfaces are "standard" because config isn't
flexible enough without forcing the user to know about it.
|
| |
|
|
|
|
|
|
|
|
| |
Use them to `make gcc -Wformat' check formats for all printf-like
and scanf-like functions in /usr/src except for the err()/warn()
family. err() isn't quite printf-like since its format arg can
legitimately be NULL. syslog() isn't quite printf-like, but gcc
already accepts %m, even for plain printf() when it shouldn't.
|
| |
|
|
|
|
|
| |
became `long *' for alpha, but should always have been `db_expr_t *'.
Fixed variable types to match.
|
| |
|
|
|
|
|
|
|
|
|
| |
(nonstandard %n and '+' with %x), and ones not found by -Wformat on
386's (some db_expr_t's are still printed as ints).
I decided not to change the arg type for %n from [unsigned] int to
register_t, since about half of the uses of %n are to print plain
ints and casting to [unsigned] long for %n is no harder than for %x.
|
|
|
|
| |
ensure that single stepping a branch to the next instruction works.
|
| |
|
| |
|
|
|
|
| |
Obtained from: NetBSD
|
|
|
|
|
| |
symbols so its not too useful. Changes to the kernel linker to allow it to
supply DDB with symbols will come later.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
work in progress and has never booted a real machine. Initial
development and testing was done using SimOS (see
http://simos.stanford.edu for details). On the SimOS simulator, this
port successfully reaches single-user mode and has been tested with
loads as high as one copy of /bin/ls :-).
Obtained from: partly from NetBSD/alpha
|
| |
|
|
|
|
| |
error.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
FreeBSD/alpha. The most significant item is to change the command
argument to ioctl functions from int to u_long. This change brings us
inline with various other BSD versions. Driver writers may like to
use (__FreeBSD_version == 300003) to detect this change.
The prototype FreeBSD/alpha machdep will follow in a couple of days
time.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Clean up (or if antipodic: down) some of the msgbuf stuff.
Use an inline function rather than a macro for timecounter delta.
Maintain process "on-cpu" time as 64 bits of microseconds to avoid
needless second rollover overhead.
Avoid calling microuptime the second time in mi_switch() if we do
not pass through _idle in cpu_switch()
This should reduce our context-switch overhead a bit, in particular
on pre-P5 and SMP systems.
WARNING: Programs which muck about with struct proc in userland
will have to be fixed.
Reviewed, but found imperfect by: bde
|
|
|
|
| |
Urged by: bde
|
| |
|
|
|
|
|
| |
command in each of them. This removes the need for hard-to-configure
dummy instantiations of the sets.
|
| |
|
|
|
|
|
|
|
|
| |
1) Fix the initialization of malloc structure that changed
due to perf opt.
2) Remove unneeded include.
3) An initialization assert added to malloc.
Submitted by: John Hood <cgull@smoke.marlboro.vt.us>
|
| |
|
|
|
|
|
| |
buffer instead of trying to use malloc() in the input routine.
Submitted by: john hood <cgull@smoke.marlboro.vt.us>
|
|
|
|
|
|
| |
failed.
This broke early debugging.
|
| |
|
| |
|
|
|
|
|
| |
I'm using "#if __i386__ && __FreeBSD__" to check for a ``potentially
syscons-relevant environment''. Hope that's ok...
|
| |
|
|
|
|
|
| |
as `int foo(char c) ...' if there is a bogus prototype `int foo(char c);'
in scope.
|
| |
|
|
|
|
|
| |
basic cursor movements. Assumes ANSI/DEC tty, but you can still resort
to plain emacs ^p/^n etc anyway.
|
| |
|
|
|
|
| |
isn't fatal. Backed out rev.1.6, which handled special cases of this.
|
|
|
|
| |
ready for it yet.
|