Re: sysctl lock, system lockup

From: Tim Robbins <tim_at_robbins.dropbear.id.au>
Date: Mon, 31 May 2004 13:02:58 +1000
On Sun, May 30, 2004 at 10:18:34PM -0400, Don Bowman wrote:
> From: Tim Robbins [mailto:tim_at_robbins.dropbear.id.au]
> > On Sun, May 30, 2004 at 04:35:55PM -0400, Don Bowman wrote:
> > > From: Don Bowman [mailto:don_at_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 _at_?
> > 
> > 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
Received on Sun May 30 2004 - 18:02:10 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:55 UTC