Swapfile problem in 6?
Lars Kristiansen
lars+lister.freebsd at adventuras.no
Wed Nov 16 07:01:57 PST 2005
> 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 at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe at freebsd.org"
>
More information about the freebsd-stable
mailing list