From owner-freebsd-current@FreeBSD.ORG Tue Jun 1 13:29:21 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 54FD016A4CE for ; Tue, 1 Jun 2004 13:29:21 -0700 (PDT) Received: from dan.emsphone.com (dan.emsphone.com [199.67.51.101]) by mx1.FreeBSD.org (Postfix) with ESMTP id E5B8343D3F for ; Tue, 1 Jun 2004 13:29:20 -0700 (PDT) (envelope-from dan@dan.emsphone.com) Received: (from dan@localhost) by dan.emsphone.com (8.12.10/8.12.10) id i51KTGEY049161; Tue, 1 Jun 2004 15:29:16 -0500 (CDT) (envelope-from dan) Date: Tue, 1 Jun 2004 15:29:16 -0500 From: Dan Nelson To: Niki Denev Message-ID: <20040601202916.GA31804@dan.emsphone.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-OS: FreeBSD 5.2-CURRENT X-message-flag: Outlook Error User-Agent: Mutt/1.5.6i cc: current@freebsd.org Subject: Re: malloc(M_WAITOK) of"Mbuf",forcing M_NOWAIT ...... X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Jun 2004 20:29:21 -0000 In the last episode (Jun 01), Niki Denev said: > I get lots of these messages on my console with a recent -CURRENT, is > this something known? It's sort-of known, but I don't think anyone's had a good look at it yet. Here's a full gdb trace of a similar one: malloc(M_WAITOK) of "Mbuf", forcing M_NOWAIT with the following non-sleepable locks held: exclusive sleep mutex inp (udpinp) r = 0 (0xc26b3f54) locked @ netinet/udp_usrreq.c:402 Stack backtrace: witness_warn(5,0,c077c12c,c0765859,1) at witness_warn+0x135 uma_zalloc_arg(c1023b00,d9d65ae0,2,fa,0) at uma_zalloc_arg+0x44 nfs_realign(d9d65b20,28,c0775161,206,0) at nfs_realign+0x114 nfsrv_rcv(c27ec4c4,c278c400,1,c26b3ec4,c26b7000) at nfsrv_rcv+0x168 sowakeup(c27ec4c4,c27ec514,c26b7000,c26b7000,0) at sowakeup+0xac udp_append(c26b3ec4,c26ca016,c26b7000,1c,108) at udp_append+0xcf udp_input(c26b7000,14,c076ff4c,8,0) at udp_input+0x4a4 ip_input(c26b7000,0,c076ff4c,95,18) at ip_input+0x6f9 netisr_processqueue(c0810ab8,8,c076ff55,fd,c2285040) at netisr_processqueue+0x8e swi_net(0,0,c07649bd,255,1) at swi_net+0xf8 ithread_loop(c225ce80,d9d65d48,c07647dd,328,0) at ithread_loop+0x240 fork_exit(c05709f0,c225ce80,d9d65d48) at fork_exit+0xa3 fork_trampoline() at fork_trampoline+0x8 --- trap 0x1, eip = 0, esp = 0xd9d65d7c, ebp = 0 --- ./gettrace 42 GNU gdb 5.2.1 (FreeBSD) Copyright 2002 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-undermydesk-freebsd"... panic: from debugger panic messages: --- panic: from debugger at line 453 in file ../../../ddb/db_command.c cpuid = 1; Stack backtrace: boot() called on cpu#1 Uptime: 36m0s Dumping 1023 MB Compressing 16>3 32>6 48>9 64>12 80>15 96>18 112>21 128>24 144>27 160>30 176>33 192>36 208>39 224>42 240>46 256>49 272>52 288>55 304>58 320>61 336>65 352>68 368>71 384>74 400>78 416>81 432>84 448>87 464>91 480>94 496>98 512>104 528>107 544>110 560>111 576>113 592>116 608>117 624>117 640>117 656>118 672>119 688>120 704>120 720>123 736>127 752>130 768>132 784>136 800>140 816>143 832>146 848>148 864>151 880>153 896>155 912>157 928>159 944>161 960>164 976>167 992>171 1008>174 Compressed to 183 MB Dumpsize = 192815104 Dump starting at 612522496 16 32 48 64 80 96 112 128 144 160 176 192 208 224 240 256 272 288 304 320 336 352 368 384 400 416 432 448 464 480 496 512 528 544 560 576 592 608 624 640 656 672 688 704 720 736 752 768 784 800 816 832 848 864 880 896 912 928 944 960 976 992 1008 --- #0 doadump () at ../../../kern/kern_shutdown.c:237 237 dumpsys(&dumper); #0 doadump () at ../../../kern/kern_shutdown.c:237 #1 0xc05856d8 in boot (howto=260) at ../../../kern/kern_shutdown.c:370 #2 0xc0585dbf in __panic (file=0xc074c764 "../../../ddb/db_command.c", line=453, fmt=0xc074c756 "from debugger") at ../../../kern/kern_shutdown.c:548 #3 0xc0477d84 in db_panic () at ../../../ddb/db_command.c:453 #4 0xc0477b9e in db_command (last_cmdp=0xc07da4e0, cmd_table=0x0, aux_cmd_tablep=0xffffffff, aux_cmd_tablep_end=0xffffffff) at ../../../ddb/db_command.c:348 #5 0xc0477dfd in db_command_loop () at ../../../ddb/db_command.c:475 #6 0xc047ade6 in db_trap (type=3, code=0) at ../../../ddb/db_trap.c:73 #7 0xc06f7836 in kdb_trap (type=3, code=0, regs=0xd9d65a1c) at ../../../i386/i386/db_interface.c:159 #8 0xc070f5df in trap (frame= {tf_fs = -1066008552, tf_es = -1067843568, tf_ds = -640286704, tf_edi = 4, tf_esi = -1, tf_ebp = -640263576, tf_isp = -640263608, tf_ebx = 0, tf_edx = 0, tf_ecx = 0, tf_eax = 25, tf_trapno = 3, tf_err = 0, tf_eip = -1066435671, tf_cs = 8, tf_eflags = 642, tf_esp = -1065880763, tf_ss = -1066162406}) at ../../../i386/i386/trap.c:579 #9 0xc06fb52a in calltrap () at {standard input}:95 #10 0xc05ae893 in witness_warn (flags=5, lock=0x0, fmt=0xc077c12c "malloc(M_WAITOK) of \"%s\", forcing M_NOWAIT") at ../../../kern/subr_witness.c:1152 #11 0xc06c41a4 in uma_zalloc_arg (zone=0xc1023b00, udata=0xd9d65ae0, flags=2) at ../../../vm/uma_core.c:1606 #12 0xc06648e4 in nfs_realign (pm=0xd9d65b20, hsiz=40) at ../../../sys/mbuf.h:334 #13 0xc0664de8 in nfsrv_rcv (so=0xc2e8ba7c, arg=0x0, waitflag=1) at ../../../nfsserver/nfs_srvsock.c:519 #14 0xc05ca06c in sowakeup (so=0xc2e8ba7c, sb=0xc2e8bacc) at ../../../kern/uipc_socket2.c:316 #15 0xc0631e1f in udp_append (last=0xc2e8bacc, ip=0x0, n=0xc2e8ba7c, off=0) at ../../../netinet/udp_usrreq.c:506 #16 0xc0631ae4 in udp_input (m=0xc2d83a00, off=20) at ../../../netinet/udp_usrreq.c:404 #17 0xc061c5b9 in ip_input (m=0xc2d83a00) at ../../../netinet/ip_input.c:939 #18 0xc05fd5ee in netisr_processqueue (ni=0xc2d83a00) at ../../../net/netisr.c:152 #19 0xc05fd9a8 in swi_net (dummy=0x0) at ../../../net/netisr.c:257 #20 0xc0570c30 in ithread_loop (arg=0xc225ce80) at ../../../kern/kern_intr.c:574 #21 0xc056fab3 in fork_exit (callout=0xc05709f0 , arg=0x0, frame=0x0) at ../../../kern/kern_fork.c:816 (root@dan) /var/crash># -- Dan Nelson dnelson@allantgroup.com