Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Jul 2013 16:09:47 -0600
From:      Will Andrews <will@firepipe.net>
To:        Jordan Hubbard <jkh@mail.turbofuzz.com>
Cc:        hackers@freebsd.org
Subject:   Re: Kernel dumps [was Re: possible changes from Panzura]
Message-ID:  <CADBaqmgCT=5gnJtU31MnLGiNMtT4%2BQq5uQsHLd-pLLVkEyGzyw@mail.gmail.com>
In-Reply-To: <3592BFB7-0663-4381-AFF5-C7DE0AE16858@mail.turbofuzz.com>
References:  <FDEEB55D-823B-4899-8EEC-7F5306D91F5B@elischer.org> <9890DFF1-892A-4DCA-9E33-B70681154F43@mail.turbofuzz.com> <CAOtMX2hLvYnQsZnCn9hC8GjukBy4ad=48yLpqJfuT_7Utq2vEA@mail.gmail.com> <3592BFB7-0663-4381-AFF5-C7DE0AE16858@mail.turbofuzz.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Jul 10, 2013 at 3:50 PM, Jordan Hubbard <jkh@mail.turbofuzz.com> wr=
ote:
> Absolutely.  In fact, before the advent of remote network debugging, FW w=
as totally the debugging method of choice since firewire target DMA lets yo=
u do all kinds of useful things (as well as a few things that simply scare =
the security guys to death ;-) ).
>
> My point was more that actually being able to debug a machine over the ne=
twork is such a step up in terms of convenience/awesomeness that if anyone =
is thinking of putting any time and attention into this area at all, that's=
 definitely the target to go for.
>
> Looking at http://www.opensource.apple.com/tarballs/xnu/xnu-2050.22.13.ta=
r.gz there's even reasonable "documentation" on the kernel debugging protoc=
ol in xnu/osfmk/kdp.  Folks could do worse than try to clone it.  The gdb d=
ebugger macros in support of it are also in xnu/kgmacros.  None of it is go=
ing to be 'drop in' for FreeBSD by any stretch of the imagination, but it's=
 always easier to get to a destination when you have a map. :-)    Anyone w=
ith a Mac can also ""nvram boot-args=3D"debug=3D0x144"" and test-drive it a=
round, just to see how it works in actual practice.  See also:  https://dev=
eloper.apple.com/library/mac/#documentation/Darwin/Conceptual/KEXTConcept/K=
EXTConceptDebugger/debug_tutorial.html


Speaking of Apple solutions, I've recently used Apple's kgdb with the
kernel debug kit & kdp remote debugging, to debug a panic'd OS X host.
 It's really quite nice, because the debug kit comes with a ton of
macros, similar to kdb, and you also get the benefit of source
debugging.  I think FreeBSD would benefit massively from finding some
way to share macros between kdb and kgdb, in addition to having an
"emergency network stack" like you suggest.

As Alan says, until then, there's firewire, and also gdbsx if your
FreeBSD system is running as a Xen guest.

--Will.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CADBaqmgCT=5gnJtU31MnLGiNMtT4%2BQq5uQsHLd-pLLVkEyGzyw>