ddb(4) scripts not working in RELENG_7?
rwatson at FreeBSD.org
Sun Aug 3 13:49:01 UTC 2008
On Sun, 3 Aug 2008, Ulrich Spoerlein wrote:
> I was testing a patch and getting a panic (page fault while in kernel mode)
> in RELENG_7 running multiuser mode, but no scripts were automagically run,
> although I configured ddb_enable=YES in rc.conf.
> It simply dropped me to the interactive ddb(4) prompt, nothing more. Do you
> have any idea what I could be missing?
I have been using DDB scripts on 7-STABLE without any problems, but I'm not
sure I've tried it with a page fault, just regular panics. Could you try
entering the debugger via "sysctl debug.kdb.panic=1", which forces a panic,
and see if your scripts run then? Perhaps there's some inconsistency in how
we're entering the debugger. If things still appear not to be happening, try
setting up a kdb.enter.default script and see if that works?
The ddb(4) command provids a slightly more user-friendly way of accessing the
scripts from userspace -- you can just do "ddb scripts" to list them.
FWIW, using the exactly scripts you have below, I produced a textdump without
any problems on 7-STABLE.
> Btw, you might wanna update the ddb(8) manpage's History section, as the
> feature seems to first appear in 7.1 :)
Indeed. I'll update that, thanks!
Robert N M Watson
University of Cambridge
> % egrep "ddb|dump" /etc/rc.conf
> % sysctl debug.ddb.scripting.scripts
> debug.ddb.scripting.scripts: lockinfo=show locks; show alllocks; show lockedvnods
> kdb.enter.panic=textdump set; capture on; run lockinfo; show pcpu; bt; ps; alltrace; capture off; call doadump; reset
> kdb.enter.witness=run lockinfo
> Ulrich Spoerlein
> It is better to remain silent and be thought a fool,
> than to speak, and remove all doubt.
More information about the freebsd-stable