From owner-freebsd-current@FreeBSD.ORG Wed Dec 8 19:47:03 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 36EC916A4CE for ; Wed, 8 Dec 2004 19:47:03 +0000 (GMT) Received: from alternator.sgh.waw.pl (alternator.sgh.waw.pl [194.145.96.100]) by mx1.FreeBSD.org (Postfix) with ESMTP id E1D6343D4C for ; Wed, 8 Dec 2004 19:47:02 +0000 (GMT) (envelope-from dry@dry.pl) Received: from localhost (localhost [127.0.0.1]) by alternator.sgh.waw.pl (Postfix) with SMTP id 0DE152AA953 for ; Wed, 8 Dec 2004 20:47:02 +0100 (CET) Received: from prolongator.sgh.waw.pl (prolongator.sgh.waw.pl [194.145.96.30]) by alternator.sgh.waw.pl (Postfix) with ESMTP id 02DD12AA94A for ; Wed, 8 Dec 2004 20:47:02 +0100 (CET) Received: by prolongator.sgh.waw.pl (Postfix, from userid 5250) id B02B440AF; Wed, 8 Dec 2004 20:47:21 +0100 (CET) Date: Wed, 8 Dec 2004 20:47:21 +0100 From: Michal Suszko To: current@freebsd.org Message-ID: <20041208194721.GB1571@dry.pl> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.6i Subject: deadlocks in recent 6-CURRENT 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: Wed, 08 Dec 2004 19:47:03 -0000 Since switching to PF (few weeks ago) I'm frequently experiencing deadlocks. breaking to DDB works, and ps shows lock in PF, like here: 43273 c1ee57e0 1001 42753 43273 0004002 [LOCK pf task mtx c1c45040] dia Setting debug.mpsafenet to 0 helps a little (system runs without deadlock for few days) but doesn't eliminate it. PREEMPTION is on WITNESS show two kinds of LOR's: 1st 0xc1888414 inp (tcpinp) @ /usr/src/sys/netinet/tcp_syncache.c:1086 2nd 0xc06b9400 pf task mtx (pf task mtx) @ /usr/src/sys/contrib/pf/net/pf.c:5891 KDB: stack backtrace: witness_checkorder(c06b9400,9,c0668a25,1703,7) at witness_checkorder+0x388 _mtx_lock_flags(c06b9400,0,c0668a25,1703,cbc9c8f8) at _mtx_lock_flags+0x37 pf_test(2,c15ce000,cbc9ca08,c1888384,c163cba0) at pf_test+0x72 pf_check_out(0,cbc9ca08,c15ce000,2,c1888384) at pf_check_out+0x4e pfil_run_hooks(c06eafe0,cbc9ca94,c15ce000,2,c1888384) at pfil_run_hooks+0x145 ip_output(c16bad00,0,cbc9ca60,0,0) at ip_output+0x299 syncache_respond(cbc9cb20,c06eba40,1c,8,78) at syncache_respond+0x26a syncache_add(cbc9cbac,cbc9cbfc,c17a8034,cbc9cba8,c1773b00) at syncache_add+0x428 tcp_input(c1773b00,14,c15ce000,1,0) at tcp_input+0x1a87 ip_input(c1773b00,0,c06797c5,e8,18) at ip_input+0xd5 netisr_processqueue(cbc9ccdc,80246,c06bf1a0,8,c14f3c40) at netisr_processqueue+0x15 swi_net(0,0,c0670763,257,0) at swi_net+0x9f ithread_loop(c14fa500,cbc9cd48,c06705b6,318,c14fa500) at ithread_loop+0x1d2 fork_exit(c04d53e0,c14fa500,cbc9cd48) at fork_exit+0x70 fork_trampoline() at fork_trampoline+0x8 --- trap 0x1, eip = 0, esp = 0xcbc9cd7c, ebp = 0 --- 1st 0xc06eb44c tcp (tcp) @ /usr/src/sys/netinet/tcp_input.c:615 2nd 0xc06b9400 pf task mtx (pf task mtx) @ /usr/src/sys/contrib/pf/net/pf.c:5891 KDB: stack backtrace: witness_checkorder(c06b9400,9,c0668a25,1703,0) at witness_checkorder+0x388 _mtx_lock_flags(c06b9400,0,c0668a25,1703,c04e1dc9) at _mtx_lock_flags+0x37 pf_test(2,c16cf014,cbc9ca7c,0,c163cba0) at pf_test+0x72 pf_check_out(0,cbc9ca7c,c16cf014,2,0) at pf_check_out+0x4e pfil_run_hooks(c06eafe0,cbc9cb08,c16cf014,2,0) at pfil_run_hooks+0x145 ip_output(c16b6a00,0,cbc9cad4,0,0,0,0,0,c06a495c,c8) at ip_output+0x299 tcp_respond(0,c16b6a34,c16b6a48,c16b6a00,e5623f88) at tcp_respond+0x16e tcp_input(c16b6a00,14,c16cf014,1,0) at tcp_input+0x91e ip_input(c16b6a00,0,c06797c5,e8,18) at ip_input+0xd5 netisr_processqueue(cbc9ccdc,80246,c06bf1a0,8,c14f3c40) at netisr_processqueue+0x15 swi_net(0,0,c0670763,257,0) at swi_net+0x9f ithread_loop(c14fa500,cbc9cd48,c06705b6,318,c14fa500) at ithread_loop+0x1d2 fork_exit(c04d53e0,c14fa500,cbc9cd48) at fork_exit+0x70 fork_trampoline() at fork_trampoline+0x8 I can provide core dump along with kernel.debug and configuration files. Michal