Date: Wed, 16 Nov 2005 16:01:36 +0100 (CET) From: "Lars Kristiansen" <lars+lister.freebsd@adventuras.no> To: freebsd-stable@freebsd.org Subject: Re: Swapfile problem in 6? Message-ID: <54759.213.236.228.129.1132153296.squirrel@mail.adventuras.no> In-Reply-To: <20051115103821.GJ39882@cirb503493.alcatel.com.au> References: <20051115065740.GH39882@cirb503493.alcatel.com.au> <20051115100813.74195.qmail@web36214.mail.mud.yahoo.com> <20051115103821.GJ39882@cirb503493.alcatel.com.au>
next in thread | previous in thread | raw e-mail | index | archive | help
> On Tue, 2005-Nov-15 02:08:12 -0800, Rob wrote: >> makeoptions DEBUG=-g >> options INVARIANTS >> options WITNESS >> options WITNESS_KDB >> options KDB >> options DDB >> options DDB_NUMSYM >> options GDB >> >>Is that enough? > > If your system is headless, you probably want 'options BREAK_TO_DEBUGGER' > as well. > > First question is: Does the system still deadlock? INVARIANTS and > WITNESS will have added sanity checks which might have picked up the > problem. > >>1) Can I debug a kernel that does not crash, but >> just hangs in a deadlock? Everything seems to >> be frozen, except pinging the PC.... > > Have a look at > http://www.freebsd.org/doc/en_US.ISO8859-1/books/developers-handbook/kerneldebug-online-ddb.html > and ddb(4). Unless you have another system handy, you might like to print > out ddb(4) - it's difficult to read man pages when you're in the kernel > debugger :-). > >>2) Is such debugging possible on a headless PC >> without a keyboard attached? >> I do have serial console access. > > Yes. See above URL. The advantage is that you can (hopefully) > capture a log of your debug session. Send a serial BREAK and you > should get a DDB> prompt. > > Basically, wait until your system deadlocks. BREAK into DDB. > As a start, run 'show lockedvnods', 'ps'. My guess is that you'll > see a lock that has a number of waiters - which is probably the > culprit. Use 'panic' to get a crashdump and then you can use kgdb > to rummage around once you reboot - see > http://www.freebsd.org/doc/en_US.ISO8859-1/books/developers-handbook/kerneldebug-gdb.html > > If in doubt, post the output from the above commands here and someone > will hopefully provide further input. Hello again, I am the "me too"-guy with console-access. I am not a programmer and it is the first time I see debugging screen. It deadlocked again, and I did as advised above: (ddb: show lockedvnods; ps ; panic) but did not understand much of the output. Looked maybe like syncer and swap_pager was locked? Do i need to write all this down or can I get the output saved somewhere? I got a 32MB coredump but the same lack of understanding applies. Please tell me if I can be of any help! This is fun. -- Lars > > -- > Peter Jeremy > _______________________________________________ > freebsd-stable@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-stable > To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org" >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?54759.213.236.228.129.1132153296.squirrel>