From owner-freebsd-bugs@FreeBSD.ORG Mon Apr 4 16:40:07 2005 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A172116A4CE for ; Mon, 4 Apr 2005 16:40:07 +0000 (GMT) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 75B1D43D2D for ; Mon, 4 Apr 2005 16:40:07 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.3/8.13.3) with ESMTP id j34Ge7Pn092368 for ; Mon, 4 Apr 2005 16:40:07 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.3/8.13.1/Submit) id j34Ge7gV092367; Mon, 4 Apr 2005 16:40:07 GMT (envelope-from gnats) Date: Mon, 4 Apr 2005 16:40:07 GMT Message-Id: <200504041640.j34Ge7gV092367@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: "Wojciech A. Koszek" Subject: Re: kern/79493: [PATCH] Reproducible if_tun panic X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: "Wojciech A. Koszek" List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Apr 2005 16:40:07 -0000 The following reply was made to PR kern/79493; it has been noted by GNATS. From: "Wojciech A. Koszek" To: freebsd-gnats-submit@FreeBSD.org, chris@unixpages.org Cc: Subject: Re: kern/79493: [PATCH] Reproducible if_tun panic Date: Mon, 4 Apr 2005 16:39:31 +0000 Hello Christian, Thanks for additional information! As I said in my mail, it because of mutex initialization, which is done twice -- either while loading if_tun.ko, or if_ppp.ko. I reported this earlier to one of developers, but even I didn't like my patches. It only happens with debugging options enabled in your kernel configuration. This is due assertion made in mtx_init() (/sys/kern/kern_mutex.c): KASSERT((lock->lo_flags & LO_INITIALIZED) == 0, ("mutex \"%s\" %p already initialized", name, m)); Christian proposed solution with MODULE_VERSION, but my question is: do we really need KASSERT in mtx_init()? Couldn't it just be replaced with conditional printf()?: http://freebsd.czest.pl/dunstan/FreeBSD/diff.0.kern_mutex.c Regards, -- * Wojciech A. Koszek && dunstan@FreeBSD.czest.pl