NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/49530: kernel crash with corrupt stack/invalid backtrace



The following reply was made to PR kern/49530; it has been noted by GNATS.

From: David Holland <dholland-bugs%netbsd.org@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: kern/49530: kernel crash with corrupt stack/invalid backtrace
Date: Tue, 10 Feb 2015 00:22:42 +0000

 On Sat, Jan 10, 2015 at 11:00:01AM +0000, Martin Husemann wrote:
  >  Could this just be a NULL vnode pointer used with VCALL?
 
 If it were a null vnode you'd get a fault reading the ops table before
 it jumped anywhere.
 
 (Is it expected that jumping to null loses the stack backtrace? That
 seems pretty feeble of ddb.)
 
 However, it does look like it jumped to null, so a reasonable
 conclusion is that it got a null function pointer out of the ops
 table... is it feasible to figure out the vnode address from the
 window dump and do "show vnode" on it? It is probably in a register
 but you probably need to disassemble the indirect call logic to figure
 out which one.
 
 There are also only a few vnode ops tables (especially since you
 probably aren't using any of the obscure fses) so you might try having
 it check vn->v_op and print or bail if it's not one of the tables
 belonging to one of the fses you're using.
 
 Another wild guess: assert in vn_lock that the vnode isn't a marker
 vnode. ((vn->v_iflag & VI_MARKER) == 0)
 
 -- 
 David A. Holland
 dholland%netbsd.org@localhost
 


Home | Main Index | Thread Index | Old Index