On Fri, 3 Aug 2012, David Holland wrote:
On Thu, Aug 02, 2012 at 10:57:28PM -0500, John D. Baker wrote:VOP_ABORTOP(0,da64ea08,c1e99b00,d,0,da64ea24,da64eb68,da64ea34,da64ea3c,0) at VOP_ABORTOP+0x1a nfsrv_rename(c5357cf8,c1e99b00,c2246800,da64eb68,0,0,0,da64ec30,0,1) at nfsrv_rename+0x749so, it's calling VOP_ABORTOP on a null vnode. printfs, or building a -g kernel and using the debug info to get a source line number for the offset to call site.
I built a kernel with 'makeoptions DEBUG="-g"', installed it, rebooted, repeated the crash. The crashdump indicates no address shifts. Loading the "netbsd.gdb" file shows the following: (gdb) list *nfsrv_rename+0x749 0xc03a92ea is in nfsrv_rename (/d0/nbsd/netbsd-6/src/sys/nfs/nfs_serv.c:2143). 2128 #ifdef notdef 2129 if (tdirp) 2130 vrele(tdirp); 2131 #endif 2132 if (tond.ni_cnd.cn_nameiop) { 2133 if (tond.ni_pathbuf != NULL) { 2134 pathbuf_destroy(tond.ni_pathbuf); 2135 tond.ni_pathbuf = NULL; 2136 } 2137 } 2138 if (localfs) { 2139 VFS_RENAMELOCK_EXIT(localfs); 2140 } 2141 if (fromnd.ni_cnd.cn_nameiop) { 2142 VOP_ABORTOP(fromnd.ni_dvp, &fromnd.ni_cnd); 2143 if (fromnd.ni_pathbuf != NULL) { 2144 pathbuf_destroy(fromnd.ni_pathbuf); 2145 fromnd.ni_pathbuf = NULL; 2146 } 2147 vrele(fromnd.ni_dvp); 2148 vrele(fvp); 2149 } 2150 return (error); 2151 }2152 2153 /*
2154 * nfs link service 2155 */ 2156 int 2157 nfsrv_link(struct nfsrv_descript *nfsd, struct nfssvc_sock *slp, struct lwp *lwp, struct mbuf **mrq) (gdb) (I used "list -" to back up and give more than gdb's usual 10 lines of context. I removed the intermediate prompts from the output.) -- |/"\ John D. Baker, KN5UKS NetBSD Darwin/MacOS X |\ / jdbaker[snail]mylinuxisp[flyspeck]com OpenBSD FreeBSD | X No HTML/proprietary data in email. BSD just sits there and works! |/ \ GPGkeyID: D703 4A7E 479F 63F8 D3F4 BD99 9572 8F23 E4AD 1645