Re: Applications & ACPI events

Pavel Machek
2003-10-08T19:16:11Z

Hi!

> > > > > > When using ACPI to shutdown the machine to disk or memory, obviously an
> > > > > > application can read events from /proc/acpi/events to see what to do.
> > > > > >
> > > > > > How does ACPI in the kernel wait for applications to do what they
> > > > > > need to when receiving an ACPI event, as it seems the kernel shuts down
> > > > > > everything pretty quickly ?
> > > > >
> > > > > AFAIK, there is no support for suspending userspace drivers (like X).
> > > >
> > > > Actually X get console switch event, so they should
> > > > give control of VGA to the kernel...
> > >
> > > Exactly, you have to switch to a console. That's the problem.
> >
> > ???
> >
> > Kernel tells X to switch to console; there's interface to say that,
> > and we are using it. It should just work.
>
> X know more exactly what it have to do to save current states of
> the video chipset, or even know when to put the video chipset
> in suspend mode. The nv driver (for example) have to reset the
> whole xvideo stuff just because it do not work anymore after a
> suspend/resume, but this reset is not necessary for just
> switching to console. 2D/3D acceleration in general also need
> more works after a suspend/resume which is not necessary
> for just switching to console.
> All of that console switching work only on intel like archs.

IMO X should do full save and restore, on every console switch. That
way it is safe to killall -9 X when you are on console, and I think I
like it that way. I do not think console switching is i386-only, I
know that sparc64's had consoles, too.

OTOH if X knew how to bring video card up from powerdown... that would
help a lot, and would need a kernel support. ("Hey, X, I just did
resume and graphics card is uninitialized. It is not even in vga text
mode. Do something with it.")
Pavel

--
When do you have a heart between your knees?
[Johanka's followup: and *two* hearts?]