From owner-freebsd-current@FreeBSD.ORG Tue Sep 13 07:01:40 2005 Return-Path: X-Original-To: freebsd-current@freebsd.org 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 8499416A41F for ; Tue, 13 Sep 2005 07:01:40 +0000 (GMT) (envelope-from pyunyh@gmail.com) Received: from zproxy.gmail.com (zproxy.gmail.com [64.233.162.207]) by mx1.FreeBSD.org (Postfix) with ESMTP id D2C4043D49 for ; Tue, 13 Sep 2005 07:01:39 +0000 (GMT) (envelope-from pyunyh@gmail.com) Received: by zproxy.gmail.com with SMTP id 40so240162nzk for ; Tue, 13 Sep 2005 00:01:38 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:date:from:to:cc:subject:message-id:reply-to:references:mime-version:content-type:content-disposition:content-transfer-encoding:in-reply-to:user-agent; b=LnUd6PtCrXq5KtHLpYGrYHkLeAtNuAKu3Rm3RbHLViUb3noUvA4ux2obCC0G41iJNqk/yp4FmSQo37ujq59gUgECsR/k8EkTUo4GTeFsQ0vdtIVh7EHIWuPpPh+xDsNfZIgfXqFPYS1VDCTTWYTjuIMqSVgLtXS3kXPWooFYa2k= Received: by 10.36.91.16 with SMTP id o16mr398257nzb; Tue, 13 Sep 2005 00:01:38 -0700 (PDT) Received: from michelle.rndsoft.co.kr ( [211.32.202.211]) by mx.gmail.com with ESMTP id 38sm8604711nza.2005.09.13.00.01.36; Tue, 13 Sep 2005 00:01:38 -0700 (PDT) Received: from michelle.rndsoft.co.kr (localhost.rndsoft.co.kr [127.0.0.1]) by michelle.rndsoft.co.kr (8.13.1/8.13.1) with ESMTP id j8D71nQc010842 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Tue, 13 Sep 2005 16:01:49 +0900 (KST) (envelope-from yongari@rndsoft.co.kr) Received: (from yongari@localhost) by michelle.rndsoft.co.kr (8.13.1/8.13.1/Submit) id j8D71nAD010841; Tue, 13 Sep 2005 16:01:49 +0900 (KST) (envelope-from yongari@rndsoft.co.kr) Date: Tue, 13 Sep 2005 16:01:49 +0900 From: Pyun YongHyeon To: Ben Kaduk Message-ID: <20050913070149.GE9481@rndsoft.co.kr> References: <47d0403c05091121047a037946@mail.gmail.com> <20050912044212.GC5182@rndsoft.co.kr> <47d0403c05091122276fd0a231@mail.gmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="8t9RHnE3ZwKMSgU+" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <47d0403c05091122276fd0a231@mail.gmail.com> User-Agent: Mutt/1.4.2.1i Cc: freebsd-current@freebsd.org Subject: Re: panic upon kldunload snd_ich (lor # 159) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: pyunyh@gmail.com List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Sep 2005 07:01:40 -0000 --8t9RHnE3ZwKMSgU+ Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit On Mon, Sep 12, 2005 at 05:27:00AM +0000, Ben Kaduk wrote: > On 9/12/05, Pyun YongHyeon wrote: > > > > On Mon, Sep 12, 2005 at 04:04:48AM +0000, Ben Kaduk wrote: > > > Hi everyone, > > > > > > I see that this panic is caused by lor #159 > > > http://sources.zabbadoz.net/freebsd/lor.html#159 > > > but I figured I'd report it to see if it will help anyone > > > > > > Booting to single user and issuing: > > > # kldload snd_ich > > > # kldunload snd_ich > > > > > > are sufficient to trigger the panic on my system. I know that Alexander > > > Leidinger has recently committed some bits to current in the sound code, > > but > > > it is unclear if it will fix my panic; I'm currently cvsup-ing and > > building > > > world to find out. > > > > > > The machine in question is: > > > > > > bash-2.05b$ uname -a > > > FreeBSD prolepsis.math.uiuc.edu < > > http://prolepsis.math.uiuc.edu> > > > 7.0-CURRENTFreeBSD > > > 7.0-CURRENT #9: Thu Aug 25 06:22:00 UTC 2005 > > > kaduk@prolepsis.math.uiuc.edu:/usr/obj/usr/src/sys/PROLEPSIS > > > i386 > > > > > > As shown below, I have a core to play with, so if this needs fixing, > > tell me > > > what I can do to help. > > > > > I think the LOR you seen is not cause of panic. As you've got core, would > > you please give us full back-trace with symbol information? > > See > > http://www.freebsd.org/doc/en_US.ISO8859-1/books/developers-handbook/kerneldebug-kld.htmlfor more datils. > > And make sure to rebuild sound driver module with debugging information > > too. > > -- > > Regards, > > Pyun YongHyeon > > > (sorry if this double-sent; gmail timed out) > > > Thanks for the link, Pyun. I think I found the right snd_ich.ko.debug > (luckily I got this before my buildworld finished and I nuked the old > modules), and this is all I can get: > > (kgdb) bt full > #0 doadump () at pcpu.h:165 > No locals. > #1 0xc04492fa in db_fncall (dummy1=0, dummy2=0, dummy3=1999, > dummy4=0xef8fca38 " Tt?") at /usr/src/sys/ddb/db_command.c:486 > fn_addr = -1068258876 > args = {0, -275789308, -1066987413, -1065742880, 28, -275789308, > -1069241393, 32, -1066323808, 2} > nargs = 0 > retval = 544870080 > t = 0 > #2 0xc04490a4 in db_command (last_cmdp=0xc0744b24, cmd_table=0x0, > aux_cmd_tablep=0xc070d9e4, aux_cmd_tablep_end=0xc070d9e8) > at /usr/src/sys/ddb/db_command.c:401 > cmd = (struct command *) 0xc0713220 > t = 0 > modif = " > Tt?\000\000\000\000T?\217?\r\000\000\000?>{?\r\000\000\000\001\000\000\000t?\217?\026ðh??\rz?\aK\000 > d?{? \206y? Tt?x\000\000\000 > Tt?\000\000\000\000\230?\217?\037´D?Y§n?Ø°D?\000\000\000\000\020\000\000\000\000\000\000\000 > Tt??§D? Tt?ØKt?x\000\000\000??\217?" > addr = 0 > count = 1999 > have_addr = 0 > result = 0 > ---Type to continue, or q to quit--- > #3 0xc0449195 in db_command_loop () at /usr/src/sys/ddb/db_command.c:452 > No locals. > #4 0xc044b039 in db_trap (type=3, code=0) at /usr/src/sys/ddb/db_main.c:221 > jb = {{_jb = {-275789060, -275789088, -275789008, -1025104320, 0, > -1069240360, 0, 0, 0, 0, -275789008, -1068140841}}} > prev_jb = (void *) 0x0 > bkpt = 0 > #5 0xc055775c in kdb_trap (type=0, code=0, tf=0xef8fcb84) > at /usr/src/sys/kern/subr_kdb.c:473 > handled = -275788924 > #6 0xc06adfea in trap (frame= > {tf_fs = -1066532856, tf_es = 40, tf_ds = -275840984, tf_edi = 1, tf_esi = > -1066488724, tf_ebp = -275788852, tf_isp = -275788880, tf_ebx = -275788796, > tf_edx = 1, tf_ecx = -1052684288, tf_eax = 18, tf_trapno = 3, tf_err = 0, > tf_eip = -1068141358, tf_cs = 32, tf_eflags = 646, tf_esp = -1066481942, > tf_ss = -1066490330}) > at /usr/src/sys/i386/i386/trap.c:601 > td = (struct thread *) 0xc2e62640 > p = (struct proc *) 0xc2e61c48 > sticks = 3226793233 > i = 0 > ucode = 0 > type = 3 > code = 0 > ---Type to continue, or q to quit--- > eva = 0 > #7 0xc069c18a in calltrap () at /usr/src/sys/i386/i386/exception.s:139 > No locals. > #8 0xc06e0008 in ?? () > No symbol table info available. > #9 0x00000028 in ?? () > No symbol table info available. > #10 0xef8f0028 in ?? () > No symbol table info available. > #11 0x00000001 in ?? () > No symbol table info available. > #12 0xc06eac6c in ?? () > No symbol table info available. > #13 0xef8fcbcc in ?? () > No symbol table info available. > #14 0xef8fcbb0 in ?? () > No symbol table info available. > #15 0xef8fcc04 in ?? () > No symbol table info available. > #16 0x00000001 in ?? () > No symbol table info available. > #17 0xc1415000 in ?? () > No symbol table info available. > ---Type to continue, or q to quit--- > #18 0x00000012 in ?? () > No symbol table info available. > #19 0x00000003 in ?? () > No symbol table info available. > #20 0x00000000 in ?? () > No symbol table info available. > #21 0xc05574d2 in kdb_enter (msg=0x0) at cpufunc.h:60 > No locals. > #22 0xc053b25c in panic (fmt=0xc06eac6c "%s (%s): holders or waiters\n") > at /usr/src/sys/kern/kern_shutdown.c:537 > td = (struct thread *) 0xc2e62640 > bootopt = 256 > newpanic = 1 > ap = 0xef8fcc04 "¶\232l??m?? ???$?\217??*?? ½??×m??g\001" > buf = "sx_destroy (sndstat): holders or waiters\n", '\0' > #23 0xc05412e2 in sx_destroy (sx=0xc2dbbda0) at > /usr/src/sys/kern/kern_sx.c:96 > __func__ = "sx_destroy" > #24 0xc2db2adb in ?? () > No symbol table info available. > #25 0xc2dbbda0 in ?? () > No symbol table info available. > #26 0xc2db6dd7 in ?? () > ---Type to continue, or q to quit--- > No symbol table info available. > #27 0x00000167 in ?? () > No symbol table info available. > #28 0xef8fcc50 in ?? () > No symbol table info available. > #29 0xc052ad83 in linker_file_sysuninit (lf=0x0) > at /usr/src/sys/kern/kern_linker.c:238 > start = (struct sysinit **) 0xc2db2adb > stop = (struct sysinit **) 0xc2dbbda0 > sipp = (struct sysinit **) 0xc2db74c8 > xipp = (struct sysinit **) 0x0 > save = (struct sysinit *) 0x0 > > > > > hope this helps; I should be able to get back with info about today's > current tomorrow night. > Would you try attached patch? > Ben Kaduk -- Regards, Pyun YongHyeon --8t9RHnE3ZwKMSgU+ Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="sndstat.patch" --- sys/dev/sound/pcm/sndstat.c.orig Mon Feb 28 07:14:23 2005 +++ sys/dev/sound/pcm/sndstat.c Tue Sep 13 16:10:32 2005 @@ -368,6 +368,7 @@ sndstat_dev = 0; splx(s); + sx_xunlock(&sndstat_lock); sx_destroy(&sndstat_lock); return 0; } @@ -387,7 +388,10 @@ static void sndstat_sysuninit(void *p) { - sndstat_uninit(); + int error; + + error = sndstat_uninit(); + KASSERT(error == 0, ("%s: error = %d", __func__, error)); } SYSINIT(sndstat_sysinit, SI_SUB_DRIVERS, SI_ORDER_FIRST, sndstat_sysinit, NULL); --8t9RHnE3ZwKMSgU+--