Date: Wed, 27 Oct 2004 09:27:13 +0100 From: Gavin Atkinson <gavin.atkinson@ury.york.ac.uk> To: current@freebsd.org Subject: malloc(M_WAITOK) of "Mbuf" in nfs code Message-ID: <1098865633.17194.12.camel@buffy.york.ac.uk>
next in thread | raw e-mail | index | archive | help
Hey, I'm getting quite a few of these in my logs at the moment. The machine is both an NFS server (low bandwidth to several different hosts) and an NFS client (mounting several exports from a single host). This is with 5.3-RC1 as of Fri Oct 22 14:00:00 BST 2004 and the kernel is basically GENERIC but with all the extra debugging stuff re-enabled. I reported this some time back, but the only response was that it was beleved to be fixed in BETA5. It doesn't seem to have been. As far as I can tell, nobody else has seen this code path (through nfsm_dissect_xx() and nfsm_disct() ). I appreciate that it's probably not a major issue but thought I'd mention it as I haven't seen it mentioned before. Gavin malloc(M_WAITOK) of "Mbuf", forcing M_NOWAIT with the following non-sleepable locks held: exclusive sleep mutex nfsd_mtx r = 0 (0xc08f6f60) locked @ /usr/src/sys/nfsserver/nfs_srvsock.c:712 KDB: stack backtrace: kdb_backtrace(1,1,1,4,c101f9a0) at kdb_backtrace+0x29 witness_warn(5,0,c081525e,c07fa3cf,c06287f8) at witness_warn+0x19a uma_zalloc_arg(c101f9a0,cc71da18,2) at uma_zalloc_arg+0x41 nfsm_disct(cc71dac4,cc71dac8,1c,4,1c) at nfsm_disct+0xa2 nfsm_dissect_xx(1c,cc71dac4,cc71dac8) at nfsm_dissect_xx+0x31 nfsm_srvmtofh_xx(cc71db0c,c29e2700,cc71dac4,cc71dac8) at nfsm_srvmtofh_xx+0x50 nfsrv_write(c29e2700,c2c19900,c15e74b0,cc71dca8,cc71dca4) at nfsrv_write+0xdd nfssvc_nfsd(c15e74b0,c07fae5c,12b,c1638cc8,c1638c5c) at nfssvc_nfsd+0x3d5 nfssvc(c15e74b0,cc71dd14,2,0,296) at nfssvc+0x18c syscall(2f,2f,2f,bfbfeec4,4) at syscall+0x213 Xint0x80_syscall() at Xint0x80_syscall+0x1f --- syscall (155, FreeBSD ELF32, nfssvc), eip = 0x280cb9f7, esp = 0xbfbfeb1c, ebp = 0xbfbfeb38 --- malloc(M_WAITOK) of "Mbuf", forcing M_NOWAIT with the following non-sleepable locks held: exclusive sleep mutex nfsd_mtx r = 0 (0xc08f6f60) locked @ /usr/src/sys/nfsserver/nfs_srvsock.c:712 KDB: stack backtrace: kdb_backtrace(1,1,1,18,c101f9a0) at kdb_backtrace+0x29 witness_warn(5,0,c081525e,c07fa3cf,cc71dbdc) at witness_warn+0x19a uma_zalloc_arg(c101f9a0,cc71dbec,2) at uma_zalloc_arg+0x41 nfsm_disct(cc71dc38,cc71dc3c,28,18,c17f0a00) at nfsm_disct+0xa2 nfsm_dissect_xx(28,cc71dc38,cc71dc3c) at nfsm_dissect_xx+0x31 nfs_getreq(c2cb0d00,c1888400,1,c08f6f60,0) at nfs_getreq+0x49 nfsrv_dorec(c2c19900,c1888400,cc71dcac,cc71dca4,0) at nfsrv_dorec+0xc3 nfssvc_nfsd(c15e74b0,c07fae5c,12b,c1638cc8,c1638c5c) at nfssvc_nfsd+0x1df nfssvc(c15e74b0,cc71dd14,2,0,296) at nfssvc+0x18c syscall(2f,2f,2f,bfbfeec4,4) at syscall+0x213 Xint0x80_syscall() at Xint0x80_syscall+0x1f --- syscall (155, FreeBSD ELF32, nfssvc), eip = 0x280cb9f7, esp = 0xbfbfeb1c, ebp = 0xbfbfeb38 --- malloc(M_WAITOK) of "Mbuf", forcing M_NOWAIT with the following non-sleepable locks held: exclusive sleep mutex nfsd_mtx r = 0 (0xc08f6f60) locked @ /usr/src/sys/nfsserver/nfs_serv.c:1111 KDB: stack backtrace: kdb_backtrace(1,1,1,4,c101f9a0) at kdb_backtrace+0x29 witness_warn(5,0,c081525e,c07fa3cf,693) at witness_warn+0x19a uma_zalloc_arg(c101f9a0,cc71da3c,2) at uma_zalloc_arg+0x41 nfsm_disct(cc71dac4,cc71dac8,14,4,46) at nfsm_disct+0xa2 nfsm_dissect_xx(14,cc71dac4,cc71dac8) at nfsm_dissect_xx+0x31 nfsrv_write(c2ca9900,c2c19900,c15e74b0,cc71dca8,cc71dca4) at nfsrv_write+0x1e2 nfssvc_nfsd(c15e74b0,c07fae5c,12b,c1638cc8,c1638c5c) at nfssvc_nfsd+0x3d5 nfssvc(c15e74b0,cc71dd14,2,0,296) at nfssvc+0x18c syscall(2f,2f,2f,bfbfeec4,4) at syscall+0x213 Xint0x80_syscall() at Xint0x80_syscall+0x1f --- syscall (155, FreeBSD ELF32, nfssvc), eip = 0x280cb9f7, esp = 0xbfbfeb1c, ebp = 0xbfbfeb38 ---
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1098865633.17194.12.camel>