From markd@kermodei.com Sun Sep 18 19:26:45 2005 Return-Path: Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 81E6216A41F for ; Sun, 18 Sep 2005 19:26:45 +0000 (GMT) (envelope-from markd@kermodei.com) Received: from kermodei.com (kermodei.com [216.103.110.74]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3924843D45 for ; Sun, 18 Sep 2005 19:26:45 +0000 (GMT) (envelope-from markd@kermodei.com) Received: from localhost (localhost [127.0.0.1]) by kermodei.com (Postfix) with ESMTP id EB8165C7A for ; Sun, 18 Sep 2005 12:26:44 -0700 (PDT) Received: from kermodei.com ([127.0.0.1]) by localhost (osprey.kermodei.com [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id 40265-07 for ; Sun, 18 Sep 2005 12:26:42 -0700 (PDT) Received: by kermodei.com (Postfix, from userid 1000) id 8B1E95C71; Sun, 18 Sep 2005 12:26:42 -0700 (PDT) Message-Id: <20050918192642.8B1E95C71@kermodei.com> Date: Sun, 18 Sep 2005 12:26:42 -0700 (PDT) From: Mark Diekhans Reply-To: Mark Diekhans To: FreeBSD-gnats-submit@freebsd.org Cc: Subject: lock order reversal in if_iwi driver X-Send-Pr-Version: 3.113 X-GNATS-Notify: >Number: 86307 >Category: kern >Synopsis: [if_iwi] lock order reversal in if_iwi driver >Confidential: no >Severity: serious >Priority: high >Responsible: bz >State: closed >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Sep 18 19:30:04 GMT 2005 >Closed-Date: Sun Sep 18 20:38:50 GMT 2005 >Last-Modified: Mon Sep 19 00:17:25 GMT 2005 >Originator: Mark Diekhans >Release: FreeBSD 6.0-BETA4 i386 >Organization: >Environment: System: FreeBSD kestrel.kermodei.com 6.0-BETA4 FreeBSD 6.0-BETA4 #6: Wed Sep 14 19:35:49 PDT 2005 root@kestrel.kermodei.com:/usr/src/sys/i386/compile/X1 i386 >Description: lock order reversal in iwi driver occurs frequenly while using kldload-ed if_iwi driver. Sometimes performance will degrade or driver will become non-function; although it's not clear if this is related. initialization message: iwi0: mem 0xdfcff000-0xdfcfffff irq 9 at device 3.0 on pci2 iwi0: Ethernet address: 00:12:f0:62:ea:ab iwi0: link state changed to UP error: lock order reversal 1st 0xc062ec60 ifnet (ifnet) @ net/if.c:1159 2nd 0xc25d1b68 iwi0 (network driver) @ /usr/src/sys/modules/iwi/../../dev/iwi/if_iwi.c:1503 KDB: stack backtrace: witness_checkorder(c25d1b68,9,c2643e1f,5df) at witness_checkorder+0x350 _mtx_lock_flags(c25d1b68,0,c2643e1f,5df,c25d1004) at _mtx_lock_flags+0x40 iwi_watchdog(c2564400) at iwi_watchdog+0x2a if_slowtimo(0,c04eeb04,1b5b,1,0) at if_slowtimo+0x7f softclock(0,0,c2339624,0,c047bcec) at softclock+0x15a ithread_loop(c22e2400,e5353d38,c22e2400,c047bcec,0) at ithread_loop+0x194 fork_exit(c047bcec,c22e2400,e5353d38) at fork_exit+0x7d fork_trampoline() at fork_trampoline+0x8 --- trap 0x1, eip = 0, esp = 0xe5353d6c, ebp = 0 --- >How-To-Repeat: happens frequently, but exact sequence to reproduce is unclear. >Fix: >Release-Note: >Audit-Trail: State-Changed-From-To: open->closed State-Changed-By: bz State-Changed-When: Sun Sep 18 20:37:43 GMT 2005 State-Changed-Why: Already known: http://sources.zabbadoz.net/freebsd/lor.html#151 Responsible-Changed-From-To: freebsd-bugs->bz Responsible-Changed-By: bz Responsible-Changed-When: Sun Sep 18 20:37:43 GMT 2005 Responsible-Changed-Why: Assing to me to handle followups. I am documenting LORs. http://www.freebsd.org/cgi/query-pr.cgi?pr=86307 >Unformatted: