Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 11 Mar 2001 11:50:21 -0500 (EST)
From:      Mikhail Teterin <mi@aldan.algebra.com>
To:        current@freebsd.org
Subject:   panic trying to play Civillization (with trace, etc.)
Message-ID:  <200103111650.f2BGoMm00816@aldan.algebra.com>

next in thread | raw e-mail | index | archive | help
Hi! All of  a sudden I can't play  my game :( The new  kernels all crash
just trying to start the executable...

Here is  the trace with my  attempts to browse through  it. The bzip2-ed
kernel  and vmcore,  as  well  as the  /sys  subtree  are available  for
examination at:
	http://aldan.algebra.com:8015/~mi/civctp-crash/

The  panic-triggering (Linux)  binary is  also there  (civctp). I  don't
think  you  can  play  the  game with  it  without  the  data-files  and
libraries, so Loki games should not  object :) Most probably you will be
able to get the  same panic by just trying to  run the executable, which
worked  just fine  with the  Feb 22  current-kernel. I  link all  of the
modules into the kernel.

I can  also give an account  or two (the  machine is on a  static-IP DSL
link) to  those who wish  to take a closer  look, but can  not reproduce
this locally. Thanks!

#0  dumpsys () at ../../kern/kern_shutdown.c:478
#1  0xc01de0d0 in boot (howto=260) at ../../kern/kern_shutdown.c:321
#2  0xc01de4ec in poweroff_wait (junk=0xc0342fcf, howto=-822364608)
    at ../../kern/kern_shutdown.c:571
#3  0xc02e8f65 in trap_fatal (frame=0xcf02adc4, eva=0)
    at ../../i386/i386/trap.c:987
#4  0xc02e8c99 in trap_pfault (frame=0xcf02adc4, usermode=0, eva=0)
    at ../../i386/i386/trap.c:901
#5  0xc02e858f in trap (frame={tf_fs = -1069744104, tf_es = 16, 
      tf_ds = -821952496, tf_edi = -822364608, tf_esi = -1069645600, 
      tf_ebp = -821907952, tf_isp = -821907984, tf_ebx = 0, 
      tf_edx = -822364608, tf_ecx = 86, tf_eax = 1, tf_trapno = 12, 
      tf_err = 0, tf_eip = -1071804515, tf_cs = 8, tf_eflags = 65538, 
      tf_esp = 4, tf_ss = 1}) at ../../i386/i386/trap.c:448
#6  0xc01d8f9d in _mtx_unlock_sleep (m=0xc03e80e0, opts=4, 
    file=0xc0324024 "../../kern/kern_shutdown.c", line=258)
    at ../../kern/kern_mutex.c:525
#7  0xc01ddde5 in boot (howto=256) at ../../kern/kern_shutdown.c:258
#8  0xc01de4ec in poweroff_wait (junk=0xc0342fcf, howto=-822364608)
    at ../../kern/kern_shutdown.c:571
#9  0xc02e8f65 in trap_fatal (frame=0xcf02aef4, eva=0)
    at ../../i386/i386/trap.c:987
#10 0xc02e8c99 in trap_pfault (frame=0xcf02aef4, usermode=0, eva=0)
    at ../../i386/i386/trap.c:901
#11 0xc02e858f in trap (frame={tf_fs = -1051459560, tf_es = 16, tf_ds = 16, 
      tf_edi = -822364608, tf_esi = -1069645600, tf_ebp = -821907648, 
      tf_isp = -821907680, tf_ebx = 0, tf_edx = 1, tf_ecx = 598, tf_eax = 598, 
      tf_trapno = 12, tf_err = 0, tf_eip = -1071804515, tf_cs = 8, 
      tf_eflags = 65666, tf_esp = -822364608, tf_ss = -1069645600})
    at ../../i386/i386/trap.c:448
#12 0xc01d8f9d in _mtx_unlock_sleep (m=0xc03e80e0, opts=0, 
    file=0xc034305c "../../i386/i386/trap.c", line=1247)
    at ../../kern/kern_mutex.c:525
#13 0xc02e979d in syscall (frame={tf_fs = 47, tf_es = 47, tf_ds = 47, 
      tf_edi = 144704672, tf_esi = -1077937872, tf_ebp = -1077937588, 
      tf_isp = -821907500, tf_ebx = 4, tf_edx = 148, tf_ecx = -1077937736, 
      tf_eax = 148, tf_trapno = 12, tf_err = 2, tf_eip = 139025316, 
      tf_cs = 31, tf_eflags = 598, tf_esp = -1077937900, tf_ss = 47})
    at ../../i386/i386/trap.c:1247
#14 0xc02d705d in syscall_with_err_pushed ()
#15 0x8461eab in ?? ()
#16 0x83e012f in ?? ()
#17 0x83dfeeb in ?? ()
#18 0x81be0df in ?? ()
#19 0x81aa7c9 in ?? ()
#20 0x804b271 in ?? ()
#21 0x84b2f66 in ?? ()
#22 0x80480de in ?? ()
#23 0x846dc94 in ?? ()
(kgdb)  up 12
#12 0xc01d8f9d in _mtx_unlock_sleep (m=0xc03e80e0, opts=0, 
    file=0xc034305c "../../i386/i386/trap.c", line=1247)
    at ../../kern/kern_mutex.c:525
525             p1 = TAILQ_FIRST(&m->mtx_blocked);
(kgdb) p m
$1 = (struct mtx *) 0xc03e80e0
(kgdb) p *m
$2 = {mtx_lock = 3472602691, mtx_recurse = 1, mtx_saveintr = 0, mtx_flags = 2, 
  mtx_description = 0xc0341df9 "Giant", mtx_blocked = {tqh_first = 0x0, 
    tqh_last = 0xcefbd400}, mtx_contested = {le_next = 0xc03e80e0, 
    le_prev = 0xcefbb7e0}, mtx_next = 0xc03dae60, mtx_prev = 0xc03e82a0, 
  mtx_debug = 0x0}
(kgdb) p m->mtx_blocked
$3 = {tqh_first = 0x0, tqh_last = 0xcefbd400}
(kgdb) l 
520
521             mtx_lock_spin(&sched_lock);
522             if ((opts & MTX_QUIET) == 0)
523                     CTR1(KTR_LOCK, "_mtx_unlock_sleep: %p contested", m);
524
525             p1 = TAILQ_FIRST(&m->mtx_blocked);
526             MPASS(p->p_magic == P_MAGIC);
527             MPASS(p1->p_magic == P_MAGIC);
528
529             TAILQ_REMOVE(&m->mtx_blocked, p1, p_procq);
(kgdb) up
#13 0xc02e979d in syscall (frame={tf_fs = 47, tf_es = 47, tf_ds = 47, 
      tf_edi = 144704672, tf_esi = -1077937872, tf_ebp = -1077937588, 
      tf_isp = -821907500, tf_ebx = 4, tf_edx = 148, tf_ecx = -1077937736, 
      tf_eax = 148, tf_trapno = 12, tf_err = 2, tf_eip = 139025316, 
      tf_cs = 31, tf_eflags = 598, tf_esp = -1077937900, tf_ss = 47})
    at ../../i386/i386/trap.c:1247
1247                    mtx_unlock(&Giant);
(kgdb) l
1242
1243            /*
1244             * Release Giant if we had to get it
1245             */
1246            if (mtx_owned(&Giant))
1247                    mtx_unlock(&Giant);
1248
1249            /*
1250             * This works because errno is findable through the
1251             * register set.  If we ever support an emulation where this
[.......]

	-mi

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




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