From: Jim Gettys <jg@laptop.org>
To: Pavel Machek <pavel@ucw.cz>
Cc: Jordan Crouse <jordan.crouse@amd.com>,
"Brown, Len" <len.brown@intel.com>,
Linux Kernel ML <linux-kernel@vger.kernel.org>,
Dominik Brodowski <linux@dominikbrodowski.net>,
ACPI ML <linux-acpi@vger.kernel.org>,
Adam Belay <abelay@novell.com>,
"Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com>,
Arjan van de Ven <arjan@linux.intel.com>,
devel@laptop.org, Bjorn Helgaas <bjorn.helgaas@hp.com>
Subject: Re: ACPI: Idle Processor PM Improvements
Date: Thu, 14 Sep 2006 07:29:55 -0400 [thread overview]
Message-ID: <1158233396.5871.169.camel@localhost.localdomain> (raw)
In-Reply-To: <20060914091849.GA15102@elf.ucw.cz>
On Thu, 2006-09-14 at 11:18 +0200, Pavel Machek wrote:
> On Tue, 2006-09-12 at 11:21 +0200, Pavel Machek wrote:
> >
> > > Ok, so what is needed is message to X "we are suspending", and X
> needs
> > > to respond "okay, I'm ready, no need for console switch".
> >
> > This presumes an external agent to X controlling the fast
> > suspend/resume, with messages having to flow to and from X, and to
> and
> > from the kernel, with the kernel in the middle.
> >
> > Another simpler option is X itself just telling the kernel to suspend
> > without console switch, as the handoff of the display to the DCON chip
> > has to be done with X and with an interrupt signaling completion of the
> > handoff. This would be triggered by an inactivity timeout in the X
> > server.
>
> Whoa... that's a hack.. but yes, you can probably do that, and I think
> kernel even has neccessary interfaces already. (They were needed for
> uswsusp).
Glad you like it ;-). Dunno which way we'll go yet, though it will get
to the top of the pile to implement this fall. I suspect we may go this
route to get going, but explore the more general solution as we get more
sophisticated power management policies and standards in place.
>
> > > Alternatively, hack kernel to take control from X without actually
> > > switching consoles. That should be possible even with current
> > > interface.
> >
> > This would require saving/restoring all graphics state in the kernel
> > (and X already has that state internally). Feasible, but seems like
>
> Hmm, save/restore graphics state from the kernel would of course be
> clean solution, but you should have that anyway... what if someone
> suspends without X running?
X knows its graphics state; it has to remember it all to know when it
has to be changed; on resume, resume can reinit the graphics state to
what the console wants/needs.
If you VT switch back to X, X can restore the graphics state to what it
remembers.
>
> And of course you can just cheat, and not do kernel save-state on your
> system.
Yup, though it isn't clear to me I'd call it cheating. In some ways,
what I just described to handle suspends when X is not running is really
robust and simple. And you don't have divided responsibility for
remembering the state. Simple == good in my book.
- Jim
--
Jim Gettys
One Laptop Per Child
next prev parent reply other threads:[~2006-09-14 11:30 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-08-30 18:40 [RFC][PATCH 1/2] ACPI: Idle Processor PM Improvements Pallipadi, Venkatesh
2006-08-30 19:43 ` Matthew Garrett
2006-08-31 23:13 ` Bjorn Helgaas
2006-08-31 23:27 ` [OLPC-devel] " Matthew Garrett
2006-09-01 0:30 ` Jim Gettys
2006-09-01 3:53 ` Len Brown
2006-09-01 4:12 ` Matthew Garrett
2006-09-01 15:51 ` Jordan Crouse
2006-09-01 13:14 ` [OLPC-devel] Re: [RFC][PATCH 1/2] " Carl-Daniel Hailfinger
2006-09-01 21:52 ` Andi Kleen
2006-09-01 22:57 ` Alan Cox
2006-09-04 13:13 ` Pavel Machek
2006-09-04 13:09 ` Pavel Machek
2006-09-05 14:31 ` Jim Gettys
2006-09-06 10:37 ` Pavel Machek
2006-09-06 14:58 ` Jordan Crouse
2006-09-12 9:21 ` Pavel Machek
2006-09-12 18:14 ` Jim Gettys
2006-09-12 18:27 ` Mitch Bradley
2006-09-12 20:18 ` Jordan Crouse
2006-09-14 9:20 ` Pavel Machek
2006-09-14 9:18 ` Pavel Machek
2006-09-14 11:29 ` Jim Gettys [this message]
2006-09-06 15:19 ` [OLPC-devel] Re: [RFC][PATCH 1/2] " Jim Gettys
2006-09-12 9:21 ` Pavel Machek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1158233396.5871.169.camel@localhost.localdomain \
--to=jg@laptop.org \
--cc=abelay@novell.com \
--cc=arjan@linux.intel.com \
--cc=bjorn.helgaas@hp.com \
--cc=devel@laptop.org \
--cc=jordan.crouse@amd.com \
--cc=len.brown@intel.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@dominikbrodowski.net \
--cc=pavel@ucw.cz \
--cc=venkatesh.pallipadi@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox