>From davide.italiano_at_gmail.com Wed Sep 25 19:00:09 2013 > >On Wed, Sep 25, 2013 at 5:30 PM, Anton Shterenlikht <mexas_at_bris.ac.uk> wrote: >> >From davide.italiano_at_gmail.com Wed Sep 25 16:12:47 2013 >>> >>>Can you please paste the output of 'show locks', 'show alllocks', >>>'show lockedvnods' at least? >>>Ideally you should provide all the informations listed here. >>>http://www.freebsd.org/doc/en/books/developers-handbook/kerneldebug-deadlocks.html >> >> ok, I'll need to study this. >> >> I've in the kernel: >> >> # Debugging support. Always need this: >> options KDB # Enable kernel debugger support. >> options KDB_TRACE # Print a stack trace for a panic. >> # For full debugger support use (turn off in stable branch): >> options DDB # Support DDB >> options GDB # Support remote GDB >> options DEADLKRES # Enable the deadlock resolver >> options INVARIANTS # Enable calls of extra sanity checking >> options INVARIANT_SUPPORT # required by INVARIANTS >> options WITNESS # Enable checks to detect deadlocks and cycles >> options WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed >> options MALLOC_DEBUG_MAXZONES=8 # Separate malloc(9) zones >> >> so I'm missing DEBUG_LOCKS, DEBUG_VFS_LOCKS and DIAGNOSTIC >> from the handbook list. >> >> What about all debug options in GENERIC which are >> not mentioned in your link? Specifically, do I need >> to have DEADLKRES? >> > >Yes, you need that option because it's DEADLKRES that triggers the panic. > >> I've never used trace. >> Also, I'm getting a panic, so cannot run ps, I think. >> > >You can run 'ps' from ddb prompt. >As an advice I suggest you to setup textdump(4) on your machine and >set up a script to gather the required informations, so that you can >get those informations pretty easily for report. The manpage has >detailed description about how to do this. Regarding textdump(4), I'm not clear where the following "scripts" should be located and used: *quote* EXAMPLES In the following example, the script kdb.enter.panic will run when the kernel debugger is entered as a result of a panic, enable output capture, dump several useful pieces of debugging information, and then invoke panic in order to force a kernel dump to be written out followed by a reboot: script kdb.enter.panic=textdump set; capture on; show allpcpu; bt; ps; alltrace; show alllocks; call doadump; reset In the following example, the script kdb.enter.witness will run when the kernel debugger is entered as a result of a witness violation, printing lock-related information for the user: script kdb.enter.witness=show locks These scripts may also be configured using the ddb(8) utility. *end quote* Are these ddb(8) commands? Or do I set these in /etc/rc.conf? Please advise Thanks AntonReceived on Thu Sep 26 2013 - 08:45:47 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:42 UTC