From: David Brownell <david-b@pacbell.net>
To: linux-pm@lists.linux-foundation.org
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
Thomas Gleixner <tglx@linutronix.de>,
Maxim Levitsky <maximlevitsky@gmail.com>,
Jeff Chua <jeff.chua.linux@gmail.com>,
linux-ide@vger.kernel.org,
Sergei Shtylyov <sshtylyov@ru.mvista.com>,
gregkh@suse.de, linux-pm@lists.osdl.org,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Adrian Bunk <bunk@stusta.de>,
linux-acpi@vger.kernel.org, linux-pci@atrey.karlin.mff.cuni.cz,
"Eric W. Biederman" <ebiederm@xmission.com>,
Jens Axboe <jens.axboe@oracle.com>,
"Michael S. Tsirkin" <mst@mellanox.co.il>,
Ingo Molnar <mingo@elte.hu>,
jgarzik@pobox.com, Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [linux-pm] [PATCH v2] Add suspend/resume for HPET
Date: Sat, 31 Mar 2007 10:55:42 -0700 [thread overview]
Message-ID: <200703311055.43407.david-b@pacbell.net> (raw)
In-Reply-To: <Pine.LNX.4.64.0703310943190.6730@woody.linux-foundation.org>
On Saturday 31 March 2007 9:53 am, Linus Torvalds wrote:
>
> On Sat, 31 Mar 2007, Thomas Gleixner wrote:
> >
> > Right, but clock - sources/events need to be extremly late suspended and
> > early resumed. How can we ensure this ?
>
> Make them be at the top of the device tree by adding them early. That's
> the whole point of the device tree after all - we have an ordering that is
> enforced by its topology, and that we sort by when things were added.
Right, but "when things get added" doesn't correlate well to
"when they should get suspended/resumed". It's also in basic
conflict with runtime PM models, where devices may be suspended
at essentially any time. And sysdevs are even stranger.
One way out: rather than constructing that list as devices get
enumerated, it could be constructed by a (linear-time, non-recursive)
walk of the device tree(s) before they get suspended.
(Or equivalently: construct lists at enumeration time, but just
adding them *right after their parent* rather than at the end of
the list.)
Would that solve the problem here? Potentially ... if the tree is
structured to meet Thomas' rules:
> > The required resume order is:
> >
> > clocksources
> > timekeeping
> > clockevents
> > tick management
> So the only thing that needs to be done is to make sure that we add the
> timer devices early during bootup - something we have to do *anyway*. If a
> device is added early in bootup, that automatically means that it will be
> suspended late, and resumed early - because we maintain that order all the
> way through..
> -- "clocksource" -- +-- HPET
> |
> +-- TSC
> |
> +-- i8259
> |
> +-- lapic timer
> |
> .. whatever else
If each of those were a device node, with "clocksource" suspend/resume
methods handling Thomas' "timekeeping" item, and simlarly for "clockevent"
devices ... I could see that all working neatly.
- Dave
-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2007-03-31 17:55 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <Pine.LNX.4.64.0703160925270.26106@woody.linux-foundation.org>
2007-03-18 18:49 ` [3/6] 2.6.21-rc4: known regressions Adrian Bunk
2007-03-18 19:38 ` Marcus Better
2007-03-26 1:25 ` Jeff Chua
2007-03-26 4:05 ` Adrian Bunk
2007-03-26 5:37 ` Jeff Chua
2007-03-26 16:26 ` Thomas Gleixner
2007-03-26 17:46 ` Jeff Chua
2007-03-28 7:04 ` Thomas Gleixner
2007-03-28 13:43 ` Maxim
2007-03-28 14:41 ` Ingo Molnar
2007-03-28 15:01 ` Maxim
2007-03-28 16:38 ` Linus Torvalds
2007-03-28 19:38 ` David Brownell
2007-03-28 20:19 ` [linux-pm] " Maxim
2007-03-28 20:59 ` David Brownell
2007-03-28 21:27 ` Maxim
2007-03-29 22:33 ` David Brownell
[not found] ` <200703291533.38002.david-b@pacbell.net>
2007-03-29 23:29 ` Maxim Levitsky
2007-03-30 0:09 ` David Brownell
[not found] ` <200703291709.17085.david-b@pacbell.net>
2007-03-30 0:48 ` Maxim Levitsky
2007-03-28 20:42 ` Linus Torvalds
2007-03-28 21:17 ` [linux-pm] " David Brownell
2007-03-28 22:26 ` Maxim
2007-03-29 4:41 ` [ PATCH] Add suspend/resume for HPET was: " Maxim
2007-03-29 5:08 ` Linus Torvalds
2007-03-29 5:47 ` Maxim
2007-03-29 13:20 ` Sergei Shtylyov
2007-03-29 13:31 ` Maxim
2007-03-29 13:46 ` [PATCH v2] Add suspend/resume for HPET Maxim Levitsky
2007-03-29 16:53 ` Linus Torvalds
2007-03-29 17:28 ` Maxim Levitsky
2007-03-29 17:51 ` Ingo Molnar
2007-03-29 20:46 ` Andi Kleen
2007-03-29 18:11 ` Jeff Chua
2007-03-31 15:51 ` Thomas Gleixner
2007-03-31 16:01 ` Jeff Chua
2007-03-31 16:09 ` Thomas Gleixner
2007-03-31 16:09 ` Linus Torvalds
2007-03-31 16:33 ` Thomas Gleixner
2007-03-31 16:41 ` Greg KH
2007-03-31 16:53 ` Linus Torvalds
2007-03-31 17:02 ` Ingo Molnar
2007-03-31 18:18 ` David Brownell
[not found] ` <200703311118.55132.david-b@pacbell.net>
2007-03-31 19:32 ` David Brownell
[not found] ` <200703311232.57505.david-b@pacbell.net>
2007-04-01 3:13 ` Jeff Chua
2007-04-01 4:13 ` David Brownell
2007-03-31 17:08 ` Greg KH
2007-03-31 17:55 ` David Brownell [this message]
2007-03-31 16:56 ` Maxim Levitsky
2007-03-31 17:09 ` Linus Torvalds
2007-03-31 17:17 ` Ingo Molnar
2007-03-31 17:58 ` Daniel Walker
2007-03-29 16:35 ` [ PATCH] Add suspend/resume for HPET was: Re: [3/6] 2.6.21-rc4: known regressions Linus Torvalds
2007-03-29 16:51 ` Maxim Levitsky
2007-03-29 17:22 ` Linus Torvalds
2007-03-29 17:47 ` [patch, v2] add suspend/resume for HPET Ingo Molnar
2007-03-28 18:04 ` [3/6] 2.6.21-rc4: known regressions Michael S. Tsirkin
2007-03-28 18:32 ` Ingo Molnar
2007-03-28 18:35 ` Randy Dunlap
2007-03-29 14:24 ` Jeff Chua
2007-03-18 18:49 ` [4/6] " Adrian Bunk
2007-03-23 18:50 ` [3/5] 2.6.21-rc4: known regressions (v2) Adrian Bunk
2007-03-23 19:07 ` Maxim
2007-03-23 20:53 ` Rafael J. Wysocki
[not found] ` <200703261200.25587.marcus@better.se>
[not found] ` <20070326143433.GC16477@stusta.de>
[not found] ` <200703261942.52126.marcus@better.se>
2007-03-26 18:48 ` Adrian Bunk
2007-03-27 9:42 ` Marcus Better
2007-04-02 14:16 [linux-pm] [PATCH v2] Add suspend/resume for HPET Alan Stern
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=200703311055.43407.david-b@pacbell.net \
--to=david-b@pacbell.net \
--cc=akpm@linux-foundation.org \
--cc=bunk@stusta.de \
--cc=ebiederm@xmission.com \
--cc=gregkh@suse.de \
--cc=jeff.chua.linux@gmail.com \
--cc=jens.axboe@oracle.com \
--cc=jgarzik@pobox.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@atrey.karlin.mff.cuni.cz \
--cc=linux-pm@lists.linux-foundation.org \
--cc=linux-pm@lists.osdl.org \
--cc=maximlevitsky@gmail.com \
--cc=mingo@elte.hu \
--cc=mst@mellanox.co.il \
--cc=sshtylyov@ru.mvista.com \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
/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