From owner-freebsd-current@FreeBSD.ORG Wed Sep 1 23:03:13 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 41DAD16A4CE; Wed, 1 Sep 2004 23:03:13 +0000 (GMT) Received: from mail.imp.ch (ns1.imp.ch [157.161.1.2]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9DF0443D4C; Wed, 1 Sep 2004 23:03:12 +0000 (GMT) (envelope-from pg@imp.ch) Received: from nbs.imp.ch (nbs.imp.ch [157.161.4.7]) by mail.imp.ch (8.12.9p2/8.12.3) with ESMTP id i81N35q9012951; Thu, 2 Sep 2004 01:03:07 +0200 (CEST) (envelope-from pg@imp.ch) Received: from murphy.imp.ch (murphy.imp.ch [157.161.4.77]) by nbs.imp.ch (8.12.10/8.12.3) with ESMTP id i81N35ir43516478; Thu, 2 Sep 2004 01:03:05 +0200 (MES) Date: Thu, 2 Sep 2004 00:59:07 +0000 (UTC) From: Patrick Guelat X-X-Sender: patg@murphy.imp.ch To: jhb@FreeBSD.org Message-ID: <20040902005757.T45986@murphy.imp.ch> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Spam-Checksum: 65d1d954f099d1efbe277194812b8a7f X-Virus-Message-Status: No X-Virus-Status: No, scantime="0.0014 seconds" X-Spam-Status: No, hits=-4.9 required=5 scantime="1.3474 seconds" tests=BAYES_00 X-Scanned-By: MIMEDefang 2.44 cc: freebsd-current@FreeBSD.org Subject: Re: Panic in propagate_priority() [5.3-BETA2] (fwd) 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, 01 Sep 2004 23:03:13 -0000 On Wed, 1 Sep 2004, John Baldwin wrote: > Seems the thread has an inhibitor of TDI_IWAIT which it should never be in > when it gets to this point. Perhaps a lock was leaked from an interrupt > handler. Running with INVARIANTS + WITNESS might help to catch this. > WITNESS especially might help as it would give a warning about what handler > returns with a lock held and which lock and where the lock was acquired. Tried with INVARIANTS and WITNESS .. no lor etc. happening, just the panic in propagate_priority(). This 'rip' lock is used both by netinet and netinet6, might this be a problem in this case ? OSPF6 uses a raw-ip socket to send ipv6 dgrams which are then encapsulated in gif0 in a raw ipv4 packet maybe using the lock twice ? BTW: This was working on 5.2-CURRENT with a kernel from around mid june. -Patrick I wrote: > I'm trying to run OSPF6 on a gif-tunnel between a Cisco-7206VXR > and a box running 5.3-BETA2 and get a panic everytime I start ospf6d (from > /usr/ports/net/quagga). > > It always ends in a panic in propagate_priority(), sometimes I get the > following panic-message: > > panic: process 37 (swi1: net):1 holds rip but isn't blocked on a lock > > "rip" is the lock defined in netinet/raw_ip.c which is also used by > the netinet6/raw_ip6.c. > > Tracing the userland-part nearly always ends at the sendmsg(2) > call on the raw socket, but sometimes the panic also occurs some time before > ospf6d sends it's first hello message (maybe during > the reception of the ipv6 ospf packet from the cisco ?)