Re: crash while switching vts between x and console

看板DFBSD_bugs作者時間15年前 (2010/11/20 04:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串4/5 (看更多)
rob wrote: > Matthew Dillon wrote: > >> >> : 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 > this appears to help in 32bit mode.. I will try it in 64 bit mode which > currently crashes everytime I change from X to a vty > > RG I can confirm that this fixes the issue as well as apperantly a spurious issue that I was having with pressing the scoll lock key during dmesg causing a panic that did not result in dropping core or going to the debugger. In short: 386 up works now 386 SMP works now X86_64 up works now X86_64 SMP works now before when switching back and forth between vts and X you would get a panic frequently but not always under 386 up/ and smp with X86_64 up and xmp it was always.. i.e. every time you tried it would panic. It does this no longer . RG
文章代碼(AID): #1CvjU7B2 (DFBSD_bugs)
文章代碼(AID): #1CvjU7B2 (DFBSD_bugs)