Nate Lawson wrote: > On Wed, 17 Sep 2003, Andrew Thompson wrote: > >>(gdb) l *scsuspend+0x17 >>0xc03d7b17 is in scsuspend (/usr/src/sys/isa/syscons_isa.c:111). >>106 int retry = 10; >>107 static int dummy; >>108 sc_softc_t *sc; >>109 >>110 sc = &main_softc; >>111 sc_cur_scr = sc->cur_scp->index; >>112 >>113 if (sc_no_suspend_vtswitch) >>114 return (0); >>115 > > > For a temporary workaround, try changing line 111 to: > if (sc->cur_scp == NULL) > return (0); > > This may not help things though. > It has helped and the laptop is able to suspend with the serial cable attached (further than before). It now panics on the first resume with the following (gdb output at bottom). I think the serial cable is masking the problem as without it I can suspend/resume once and it only panics on the second resume. I guess I need the serail working to see that panic anyway. tdkphy0: detached miibus0: detached dc0: detached sio4: detached wakeup from sleeping state (slept 00:00:22) Fatal trap 12: page fault while in kernel mode fault virtual address = 0x4 fault code = supervisor read, page not present instruction pointer = 0x8:0xc03aec5d stack pointer = 0x10:0xc5e39b0c frame pointer = 0x10:0xc5e39b18 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, def32 1, gran 1 processor eflags = interrupt enabled, resume, IOPL = 0 current process = 7 (acpi_task1) kernel: type 12 trap, code=0 Stopped at sc_bell+0x2d: movl 0x4(%ecx),%eax db> tr sc_bell(0,320,5,f0,0) at sc_bell+0x2d sc_switch_scr(c04b8ca0,0,c5e39b74,c02677bd,c1279d80) at sc_switch_scr+0x2c5 scresume(c1279d80,c1212060,c0424e7c,c1273f00,c11d4060) at scresume+0x24 bus_generic_resume(c1273f00,c11d4060,c0424e7c,c11d1d50,4d0) at bus_generic_resume+0x5d bus_generic_resume(c1256b00) at bus_generic_resume+0x5d isab_resume(c1256b00,c11f7060,c0424e7c,c1256b80,c1221060) at isab_resume+0x6b bus_generic_resume(c1256b80,c1221060,c0424e7c,c1256280,c1220060) at bus_generic_resume+0x5d bus_generic_resume(c1256280,c1257110,0,c1256280,c5e39c1c) at bus_generic_resume+0x5d acpi_pcib_resume(c1256280,c1257110,0,c1256280,c5e39c3c) at acpi_pcib_resume+0x2a acpi_pcib_acpi_resume(c1256280,c1220060,c0424e7c,c09f2580,c122b060) at acpi_pcib_acpi_resume+0x2a bus_generic_resume(c09f2580,c122b060,c0424e7c,c09f1400,c120c060) at bus_generic_resume+0x5d bus_generic_resume(c09f1400,c120c060,c0424e7c,0,c1256a00) at bus_generic_resume+0x5d bus_generic_resume(c09f1c80,c118e060,c0424e7c,c09f1c80,7a6bb) at bus_generic_resume+0x5d acpi_SetSleepState(c1256a00,3,c5e39ce0,c057f399,c1256a00) at acpi_SetSleepState+0x246 acpi_system_eventhandler_sleep(c1256a00,3,c058af1d,99,c0561d6f) at acpi_system_eventhandler_sleep+0x1d acpi_lid_notify_status_changed(c11d1d10,0,c058be85,7b,0) at acpi_lid_notify_status_changed+0xf9 acpi_task_thread(0,c5e39d48,44890142,858d0824,fffffb94) at acpi_task_thread+0x105 fork_exit(c0584b80,0,c5e39d48) at fork_exit+0xb1 fork_trampoline() at fork_trampoline+0x8 --- trap 0x1, eip = 0, esp = 0xc5e39d7c, ebp = 0 --- db> (gdb) l *sc_bell+0x2d 0xc03aec5d is in sc_bell (/usr/src/sys/dev/syscons/syscons.c:3579). 3574 sc_bell(scr_stat *scp, int pitch, int duration) 3575 { 3576 if (cold || shutdown_in_progress || !enable_bell) 3577 return; 3578 3579 if (scp != scp->sc->cur_scp && (scp->sc->flags & SC_QUIET_BELL)) 3580 return; 3581 3582 if (scp->sc->flags & SC_VISUAL_BELL) { 3583 if (scp->sc->blink_in_progress) (gdb)Received on Tue Sep 16 2003 - 14:53:34 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:22 UTC