From owner-freebsd-current@FreeBSD.ORG Tue Nov 28 18:12:28 2006 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id CDD3916A4D8 for ; Tue, 28 Nov 2006 18:12:28 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6CAF443CB7 for ; Tue, 28 Nov 2006 18:09:25 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id 2EDBC46D25; Tue, 28 Nov 2006 13:09:27 -0500 (EST) Date: Tue, 28 Nov 2006 18:09:27 +0000 (GMT) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Munehiro Matsuda In-Reply-To: <20061129.015826.74756053.haro@h4.dion.ne.jp> Message-ID: <20061128180811.P95096@fledge.watson.org> References: <20061129.015826.74756053.haro@h4.dion.ne.jp> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: freebsd-current@freebsd.org Subject: Re: LOR with netisr changes X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 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, 28 Nov 2006 18:12:28 -0000 On Wed, 29 Nov 2006, Munehiro Matsuda wrote: > JFYI, I got following LOR started after the netisr changes: In general, device driver locks should not be held over entry to the network stack. However, things get a bit tricky in the 802.11 code due to lock sharing, I believe, so it could be a bit more tricky to fix that. Robert N M Watson Computer Laboratory University of Cambridge > > lock order reversal: > 1st 0xc366db54 iwi0 (network driver) @ /home/haro/tmp/sys-7/modules/iwi/../../dev/iwi/if_iwi.c:1649 > 2nd 0xc07eec48 in_multi_mtx (in_multi_mtx) @ netinet/ip_input.c:562 > KDB: stack backtrace: > db_trace_self_wrapper(c071660b) at db_trace_self_wrapper+0x25 > kdb_backtrace(0,ffffffff,c07af450,c07b09b8,c07610c4,...) at kdb_backtrace+0x29 > witness_checkorder(c07eec48,9,c07237b8,232) at witness_checkorder+0x586 > _mtx_lock_flags(c07eec48,0,c07237af,232,c0789ce0,...) at _mtx_lock_flags+0x84 > ip_input(c3691e00) at ip_input+0x40a > netisr_dispatch(2,c3691e00,0,c367c400,c36d0800,...) at netisr_dispatch+0x58 > ether_demux(c367c400,c3691e00,c3691e00,c367c400,db31ec1c,...) at ether_demux+0x28a > ether_input(c367c400,c3691e00) at ether_input+0x202 > ieee80211_deliver_data(c366d004,c37fbc00,c3691e00,c0535785,c366d6b0,...) at ieee80211_deliver_data+0x129 > ieee80211_input(c366d004,c3691e00,c37fbc00,4f,0,...) at ieee80211_input+0x83e > iwi_intr(c366d000) at iwi_intr+0x4cc > ithread_execute_handlers(c35c3af0,c35aa180) at ithread_execute_handlers+0x122 > ithread_loop(c3650b30,db31ed38) at ithread_loop+0x67 > fork_exit(c0529a18,c3650b30,db31ed38) at fork_exit+0xac > fork_trampoline() at fork_trampoline+0x8 > --- trap 0x1, eip = 0, esp = 0xdb31ed6c, ebp = 0 --- > > =------------------------------------------------------------------------------ > _ _ Munehiro (haro) Matsuda > -|- /_\ |_|_| Internet Solution Dept., KGT Inc. > /|\ |_| |_|_| 2-8-8 Shinjuku Shinjuku-ku Tokyo 160-0022, Japan > Tel: +81-3-3225-0767 Fax: +81-3-3225-0740 > _______________________________________________ > freebsd-current@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org" >