Date: Thu, 26 Apr 2001 18:35:11 +0200 From: "Georg-W. Koltermann" <gwk@sgi.com> To: current@freebsd.org Cc: Bruce Evans <bde@zeta.org.au>, Dag-Erling Smorgrav <des@ofug.org> Subject: Re: lockup after resume Message-ID: <20010426183509.A10195@hunter.munich.sgi.com> In-Reply-To: <Pine.BSF.4.21.0103291912280.32700-100000@besplex.bde.org>; from bde@zeta.org.au on Thu, Mar 29, 2001 at 07:19:20PM %2B1000 References: <20010328212426.A32322@hunter.munich.sgi.com> <Pine.BSF.4.21.0103291912280.32700-100000@besplex.bde.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Mar 29, 2001 at 07:19:20PM +1000, Bruce Evans wrote: > On Wed, 28 Mar 2001, Georg-W. Koltermann wrote: > > > I am experiencing a strange lockup with -current as of about a week > > ago: It will suspend and resume, but after the resume the console is > > dead and the system hangs after a short while. > > > > When I type on the console after a resume, nothing is shown, neither > > echo nor command output. If I break into DDB, the output suddenly > > appears, just above the DDB prompt. I can continue to UNIX, type > > another command, again nothing visible. Breaking into DDB again shows > > what I typed, and the output. After a few round-trips of this sort > > the system locks up solidly. > > > > If I'm in X (XFree86-4.0.2) after the resume, the system will respond > > for a few seconds and then lock up. > > > > All this happens with the GENERIC kernel as well as my cardbus kernel. > > > > Should I assume the console needs resetting after the resume? How > > could I try a reset? I can't find anything obvious in vidcontrol(1) > > or kbdcontrol(1). > > Assume that the i8254 needs reinitializing. The console driver just uses > timeouts for screen updates. Timeouts depend on the i8254 generating > interrupts. When you break into ddb, the screen gets updated directly. I did some more debugging last night. I confirmed by a printf() that i8254_restore() actually *IS* being called during the resume. That routine is now in pmtimer.c, it used to be in apm.c in 4.2-R (and with 4.2 resume works fine on my laptop). I added an additional call to i8254_restore() to the end of apm_resume(), and I also called it directly from DDB--no effect. There must be some other problem, I guess. I figure there are a couple of laptop owners running current. Is suspend/resume working for all of you other guys, besides me and Dag-Erling? -- Regards, Georg. ---------------------------------------------------------------------- Who in the world needs 2000 Windows? 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?20010426183509.A10195>