Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 5 Jun 2006 19:22:10 +0200 (CEST)
From:      Christian Laursen <xi@borderworlds.dk>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   kern/98538: Kernel panic on ggate destroy 
Message-ID:  <200606051722.k55HMAkk000941@hest.borderworlds.dk>
Resent-Message-ID: <200606051620.k55GKH9k039167@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         98538
>Category:       kern
>Synopsis:       Kernel panic on ggate destroy
>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:   Mon Jun 05 16:20:17 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Christian Laursen
>Release:        FreeBSD 7.0-CURRENT i386
>Organization:
The Border Worlds 
>Environment:
System: FreeBSD hest.borderworlds.dk 7.0-CURRENT FreeBSD 7.0-CURRENT #0: Mon Jun 5 17:48:41 CEST 2006 root@hest.borderworlds.dk:/usr/obj/usr/src/sys/HEST i386


	
>Description:
When destroying two ggate providers after each other the kernel panics.

The backtrace looks like this:
#0  doadump () at pcpu.h:166
#1  0xc06984a4 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:409
#2  0xc06987b9 in panic (fmt=0xc08da3ee "%s")
    at /usr/src/sys/kern/kern_shutdown.c:565
#3  0xc0892f12 in trap_fatal (frame=0xc8506a54, eva=3735929054)
    at /usr/src/sys/i386/i386/trap.c:870
#4  0xc0892c1b in trap_pfault (frame=0xc8506a54, usermode=0, eva=3735929054)
    at /usr/src/sys/i386/i386/trap.c:778
#5  0xc0892839 in trap (frame=
      {tf_fs = 8, tf_es = 40, tf_ds = 40, tf_edi = 0, tf_esi = 1, tf_ebp = -934253932, tf_isp = -934253952, tf_ebx = -1064209282, tf_edx = -559038242, tf_ecx = 0, tf_eax = -559038242, tf_trapno = 12, tf_err = 0, tf_eip = -1066392268, tf_cs = 32, tf_eflags = 66118, tf_esp = -934253728, tf_ss = -1066705864})
    at /usr/src/sys/i386/i386/trap.c:463
#6  0xc087d9aa in calltrap () at /usr/src/sys/i386/i386/exception.s:138
#7  0xc0702534 in strlen (str=0xdeadc0de <Address 0xdeadc0de out of bounds>)
    at /usr/src/sys/libkern/strlen.c:41
#8  0xc06b5c38 in kvprintf (fmt=0xc091747e " @ %s:%d", 
    func=0xc06b5540 <snprintf_func>, arg=0xc8506b7c, radix=10, 
    ap=0xc8506bc4 ".#\233Á\035\002") at /usr/src/sys/kern/subr_prf.c:681
#9  0xc06b54dd in vsnprintf (
    str=0xdeadc0de <Address 0xdeadc0de out of bounds>, size=3735929054, 
    format=0xc0917463 "mtx_lock() of spin mutex %s @ %s:%d", 
    ap=0xc8506bc0 "ÞÀ­Þ.#\233Á\035\002") at /usr/src/sys/kern/subr_prf.c:414
#10 0xc06986f6 in panic (fmt=0xc0917463 "mtx_lock() of spin mutex %s @ %s:%d")
    at /usr/src/sys/kern/kern_shutdown.c:532
#11 0xc068fd0a in _mtx_lock_flags (m=0xc1980038, opts=0, 
    file=0xc19b232e "/usr/src/sys/modules/geom/geom_gate/../../../geom/gate/g_gate.c", line=541) at /usr/src/sys/kern/kern_mutex.c:279
#12 0xc19b17aa in ?? ()
#13 0xc1980038 in ?? ()
#14 0x00000000 in ?? ()
#15 0xc19b232e in ?? ()
#16 0x0000021d in ?? ()
#17 0xc1980010 in ?? ()
#18 0x00000000 in ?? ()
#19 0xc0913fef in ?? ()
#20 0x00000044 in ?? ()
#21 0xc8506c10 in ?? ()
#22 0xc0671d72 in dev_refthread (dev=0xc1980000)
    at /usr/src/sys/kern/kern_conf.c:124
#23 0xc064c43f in devfs_ioctl_f (fp=0xc1980038, com=3245738024, 
    data=0xc172f940, cred=0xc18c3680, td=0xc178fd80)
    at /usr/src/sys/fs/devfs/devfs_vnops.c:401
#24 0xc06c0d8c in ioctl (td=0xc178fd80, uap=0xc8506d04) at file.h:265
#25 0xc0893216 in syscall (frame=
      {tf_fs = 59, tf_es = 59, tf_ds = 59, tf_edi = 0, tf_esi = 0, tf_ebp = -1078074552, tf_isp = -934253212, tf_ebx = 0, tf_edx = -1077943392, tf_ecx = 0, tf_eax = 54, tf_trapno = 22, tf_err = 2, tf_eip = 672789399, tf_cs = 51, tf_eflags = 662, tf_esp = -1078074580, tf_ss = 59}) at /usr/src/sys/i386/i386/trap.c:1016
#26 0xc087d9ff in Xint0x80_syscall () at /usr/src/sys/i386/i386/exception.s:191
#27 0x00000033 in ?? ()


	
>How-To-Repeat:
I have reproduced this on both 7.0-CURRENT and 6.1-RELEASE.

The following sequence of commands triggers the panic every time I try:

# ggatec create -o rw 10.1.0.2 /tmp/fil1.img
ggate0
# ggatec create -o rw 10.1.0.2 /tmp/fil1.img
ggate1
# ggatec destroy -u 0; ggatec destroy -u 1

	
>Fix:

	


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200606051722.k55HMAkk000941>