From owner-freebsd-bugs@FreeBSD.ORG Fri Oct 6 23:30:28 2006 Return-Path: X-Original-To: freebsd-bugs@hub.freebsd.org 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 2D92516A416 for ; Fri, 6 Oct 2006 23:30:28 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 899ED43D46 for ; Fri, 6 Oct 2006 23:30:27 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id k96NURfo068582 for ; Fri, 6 Oct 2006 23:30:27 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id k96NURPw068580; Fri, 6 Oct 2006 23:30:27 GMT (envelope-from gnats) Resent-Date: Fri, 6 Oct 2006 23:30:27 GMT Resent-Message-Id: <200610062330.k96NURPw068580@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Dmitry Pryanishnikov Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 17A1716A407 for ; Fri, 6 Oct 2006 23:24:23 +0000 (UTC) (envelope-from root@atlantis.dp.ua) Received: from postman.atlantis.dp.ua (postman.atlantis.dp.ua [193.108.47.1]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4417343D4C for ; Fri, 6 Oct 2006 23:24:21 +0000 (GMT) (envelope-from root@atlantis.dp.ua) Received: from homelynx.homenet (p160.atlantis.dp.ua [193.19.241.160]) by postman.atlantis.dp.ua (8.13.1/8.13.1) with ESMTP id k96NO8ov083168 for ; Sat, 7 Oct 2006 02:24:08 +0300 (EEST) (envelope-from root@atlantis.dp.ua) Received: from homelynx.homenet (localhost [127.0.0.1]) by homelynx.homenet (8.13.8/8.13.8) with ESMTP id k96NO7md001383 for ; Sat, 7 Oct 2006 02:24:07 +0300 (EEST) (envelope-from root@homelynx.homenet) Received: (from root@localhost) by homelynx.homenet (8.13.8/8.13.8/Submit) id k96NO77v001382; Sat, 7 Oct 2006 02:24:07 +0300 (EEST) (envelope-from root) Message-Id: <200610062324.k96NO77v001382@homelynx.homenet> Date: Sat, 7 Oct 2006 02:24:07 +0300 (EEST) From: Dmitry Pryanishnikov To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: Subject: kern/104079: kldunload fdc.ko leads to panic: mutex Giant owned X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Dmitry Pryanishnikov List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 06 Oct 2006 23:30:28 -0000 >Number: 104079 >Category: kern >Synopsis: kldunload fdc.ko leads to panic: mutex Giant owned >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Oct 06 23:30:26 GMT 2006 >Closed-Date: >Last-Modified: >Originator: Dmitry Pryanishnikov >Release: FreeBSD 6.2-PRERELEASE i386 >Organization: Atlantis ISP >Environment: System: FreeBSD homelynx.homenet 6.2-PRERELEASE FreeBSD 6.2-PRERELEASE #0: Fri Oct 6 23:51:35 EEST 2006 root@homelynx.homenet:/usr/obj/usr/RELENG_6/src/sys/lynx i386 >Description: When fdc.ko loaded via loader and then unloaded by 'kldunload fdc.ko', the following panic happens using INVARIANTS-enabled kernel: panic: mutex Giant owned at /usr/RELENG_6/src/sys/modules/fdc/../../dev/fdc/fdc.c:1984 Here is the relevant part of the backtrace: #11 0xc04999d3 in panic (fmt=0xc05eda72 "mutex %s owned at %s:%d") at /usr/RELENG_6/src/sys/kern/kern_shutdown.c:549 td = (struct thread *) 0xc36aea80 bootopt = 256 newpanic = 1 ap = 0xe56abbdc "7Û^ÀËs}ÀÀ\a" buf = "mutex Giant owned at /usr/RELENG_6/src/sys/modules/fdc/../../dev/fdc/fdc.c:1984", '\0' #12 0xc0491ed8 in _mtx_assert (m=0xc063f7c0, what=-1056878592, file=0xc07d73cb "/usr/RELENG_6/src/sys/modules/fdc/../../dev/fdc/fdc.c", line=1984) at /usr/RELENG_6/src/sys/kern/kern_mutex.c:781 No locals. #13 0xc07d65c2 in fd_detach (dev=0xc36d1200) at /usr/RELENG_6/src/sys/modules/fdc/../../dev/fdc/fdc.c:1984 fd = (struct fd_data *) 0xc36e0300 #14 0xc04adddc in device_detach (dev=0xc36d1200) at device_if.h:211 No locals. #15 0xc04acb18 in devclass_delete_driver (busclass=0xc3634400, driver=0xc07d8030) at /usr/RELENG_6/src/sys/kern/subr_bus.c:927 dc = 0xc36343c0 dl = 0xc360f840 dev = 0xc36d1200 i = 0 error = 18 #16 0xc04af6a1 in driver_module_handler (mod=0xc328a780, what=1, arg=0xc07d801c) at /usr/RELENG_6/src/sys/kern/subr_bus.c:3743 error = -1016904704 dmd = (struct driver_module_data *) 0xc07d801c bus_devclass = 0xc3634400 driver = 0x1 #17 0xc0491437 in module_unload (mod=0xc328a780, flags=0) at /usr/RELENG_6/src/sys/kern/kern_module.c:240 error = 18 #18 0xc048bfb6 in linker_file_unload (file=0xc35a0700, flags=0) at /usr/RELENG_6/src/sys/kern/kern_linker.c:512 mod = 0xc328a780 next = 0xc328a740 ml = 0xc1015000 nextml = 0xc328a780 cp = (struct common_symbol *) 0xc1015000 error = 0 i = -1020745856 #19 0xc048c748 in kern_kldunload (td=0xc35a0700, fileid=26, flags=0) at /usr/RELENG_6/src/sys/kern/kern_linker.c:828 lf = 0xc35a0700 error = 2 #20 0xc048c7a6 in kldunloadf (td=0xc36aea80, uap=0x0) at /usr/RELENG_6/src/sys/kern/kern_linker.c:858 No locals. #21 0xc05c3feb in syscall (frame= {tf_fs = 59, tf_es = 59, tf_ds = 59, tf_edi = 26, tf_esi = -1077940458, tf _ebp = -1077940696, tf_isp = -445989532, tf_ebx = 1, tf_edx = 0, tf_ecx = 1, tf_ eax = 444, tf_trapno = 12, tf_err = 2, tf_eip = -2012504617, tf_cs = 51, tf_efla gs = 658, tf_esp = -1077941828, tf_ss = 59}) at /usr/RELENG_6/src/sys/i386/i386/trap.c:983 params = 0xbfbfe9c0
callp = (struct sysent *) 0xc061a7b0 td = (struct thread *) 0xc36aea80 >How-To-Repeat: Build the kernel w/o fdc and with INVARIANTS, add fdc_load="YES" into the /boot/loader.conf, reboot into single-user mode (just to prevent possible FS corruptions), configure crash dump device with dumpon -v /dev/_your_swap_partition_ and just do kldunload fdc.ko >Fix: Unknown. >Release-Note: >Audit-Trail: >Unformatted: