Date: Mon, 31 May 2004 13:02:58 +1000 From: Tim Robbins <tim@robbins.dropbear.id.au> To: Don Bowman <don@sandvine.com> Cc: "'current@freebsd.org'" <current@freebsd.org> Subject: Re: sysctl lock, system lockup Message-ID: <20040531030258.GA13448@cat.robbins.dropbear.id.au> In-Reply-To: <FE045D4D9F7AED4CBFF1B3B813C85337051D8DEC@mail.sandvine.com> References: <FE045D4D9F7AED4CBFF1B3B813C85337051D8DEC@mail.sandvine.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, May 30, 2004 at 10:18:34PM -0400, Don Bowman wrote:
> From: Tim Robbins [mailto:tim@robbins.dropbear.id.au]
> > On Sun, May 30, 2004 at 04:35:55PM -0400, Don Bowman wrote:
> > > From: Don Bowman [mailto:don@sandvine.com]
> > > > On the console i ran 'top', but it wouldn't start,
> > > > giving:
> > > >
> > > > load: 0.00 cmd: top 4282 [sysctl lock] 0.00u 0.00s 0% 180k
> > > >
> > > > as the status. I can't ^C it, can't ssh in.
> > > > can still ping the device.
> > > >
> > > > It was doing a backgound fsck from an earlier hang.
> > > >
> > > > i have called panic from db, not sure if the core will
> > > > work properly or not.
> > >
> > > As a followup... i did get a vmcore, and matching kernel.debug,
> > > if someone can suggest what i might look @?
> >
> > print sysctllock (or just sysctllock.sx_xholder if you don't have a
> > serial console set up.)
>
> (kgdb) print sysctllock
> $1 = {sx_object = {lo_class = 0xc070dacc, lo_name = 0xc06ce43d "sysctl
> lock",
> lo_type = 0xc06ce43d "sysctl lock", lo_flags = 3866624, lo_list = {
> tqe_next = 0xc074f9e0, tqe_prev = 0xc0747ab0}, lo_witness =
> 0xc0751410},
> sx_lock = 0xc0748e80, sx_cnt = -1, sx_shrd_cv = {
> cv_description = 0xc06ce43d "sysctl lock", cv_waiters = 0},
> sx_shrd_wcnt = 0, sx_excl_cv = {cv_description = 0xc06ce43d "sysctl lock",
>
> cv_waiters = 9}, sx_excl_wcnt = 9, sx_xholder = 0xc8ee2150}
Hmm. How about the value of sysctllock.sx_xholder->td_proc? Then, if possible,
switch to that process (with gdb's proc command) and try to get a backtrace.
(I admit to not having used this feature recently; I'm not completely sure
that it still works. You may need to pass it a thread pointer instead.)
Tim
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040531030258.GA13448>
