crash while switching vts between x and console
Matthew Dillon
dillon at apollo.backplane.com
Sun Oct 31 09:13:06 PDT 2010
: dumped core - see /var/crash/vmcore.0
:
:Sun Oct 31 00:39:05 PDT 2010
:
:Version String: DragonFly v2.9.0.89.gcd3c6-DEVELOPMENT #2: Sat Oct 30
:14:14:38 PDT 2010 root@:/usr/obj/usr/src/sys/EAGLE
:
:panic: assertion: gd->gd_spinlocks_wr == 0 in bsd4_schedulerclock
:...
:exchange_scr(c05674a0,fffffffd,20007604,cec3f880,d22b8b80) at
:exchange_scr+0x138
:finish_vt_rel(d22b8c18,7,c064a7a0,c286ca98,c02bc049) at finish_vt_rel+0x55
:scioctl(d22b8b8c,c05619a8,cecf3110,20007604,d22b8c18) at scioctl+0xae5
:dev_dioctl(cecf3110,20007604,d22b8c18,7,cc850620) at dev_dioctl+0xb0
:devfs_fo_ioctl(cc8737f0,20007604,d22b8c18,cc850620,d22b8cf0) at
Try removing the crit_exit/crit_enter in do_switch_scr().
/usr/src/sys/dev/misc/syscons/syscons.c line ~2540
static void
do_switch_scr(sc_softc_t *sc)
{
lwkt_gettoken(&tty_token);
vt_proc_alive(sc->new_scp);
crit_exit(); <--- remove
exchange_scr(sc); (keep)
crit_enter(); <--- remove
/* sc->cur_scp == sc->new_scp
-Matt
More information about the Bugs
mailing list