From: Kevin Hilman <khilman@deeprootsystems.com>
To: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: Alan Stern <stern@rowland.harvard.edu>,
Linux-pm mailing list <linux-pm@lists.linux-foundation.org>,
Partha Basak <p-basak2@ti.com>,
linux-omap@vger.kernel.org
Subject: Re: [PATCH ver. 2] PM: add synchronous runtime interface for interrupt handlers
Date: Tue, 23 Nov 2010 16:11:31 -0800 [thread overview]
Message-ID: <87mxozd1ho.fsf@deeprootsystems.com> (raw)
In-Reply-To: <201011232351.11340.rjw@sisk.pl> (Rafael J. Wysocki's message of "Tue, 23 Nov 2010 23:51:11 +0100")
"Rafael J. Wysocki" <rjw@sisk.pl> writes:
> On Tuesday, November 23, 2010, Alan Stern wrote:
>> On Tue, 23 Nov 2010, Rafael J. Wysocki wrote:
>>
>> > > > Moreover, I'm not sure if we need an "IRQ safe" version of _idle. Why do
>> > > > we need it, exactly?
>> > >
>> > > Because pm_runtime_put_sync() calls rpm_idle(). If there were no
>> > > irq-safe version of rpm_idle() then drivers wouldn't be able to call
>> > > pm_runtime_put_sync() from within an interrupt handler.
>> >
>> > Right. Which they can't do now, can they?
>>
>> True. That was the point of this patch -- to allow interrupt handlers
>> to do runtime PM, which they can't do now.
>
> The original idea was to allow suspend and resume to be carried out
> with interrupts off, not necessarily by interrupt handlers. We've never
> considered doing that with _idle before.
>
>> > Why do you think we should allow them to do that?
>>
>> Are you suggesting that interrupt handlers stick to pm_runtime_suspend
>> and pm_runtime_resume, and ignore pm_runtime_get_sync and
>> pm_runtime_put_sync?
>
> Why do they need the _sync versions? What exactly is wrong with
> calling
>
> pm_runtime_put_noidle()
> pm_runtime_suspend()
>
> from an interrupt handler if it really wants the synchronous suspend to be
> carried out at this point?
>
> I don't really see a reason for calling pm_runtime_put_sync() by an interrupt
> handler, but perhaps I'm overlooking something important.
While I like the idea of the symmetry of having both _get_sync() and
_put_sync() callable from an interrupt handler, I can't currently think
of a situation where we would need to _put_sync() in the ISR. A
standard _put() should suffice for all cases I can imagine.
Kevin
next prev parent reply other threads:[~2010-11-24 0:11 UTC|newest]
Thread overview: 144+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-09-24 0:05 runtime_pm_get_sync() from ISR with IRQs disabled? Kevin Hilman
2010-09-24 15:13 ` [linux-pm] " Alan Stern
2010-09-24 18:54 ` Kevin Hilman
2010-09-24 20:04 ` Rafael J. Wysocki
2010-09-27 13:57 ` Alan Stern
2010-09-27 13:57 ` [linux-pm] " Alan Stern
2010-09-27 20:00 ` Rafael J. Wysocki
2010-09-27 20:39 ` Alan Stern
2010-09-27 20:39 ` [linux-pm] " Alan Stern
2010-09-27 21:09 ` Rafael J. Wysocki
2010-09-27 21:09 ` [linux-pm] " Rafael J. Wysocki
2010-09-28 14:55 ` Alan Stern
2010-09-28 18:19 ` Rafael J. Wysocki
2010-09-28 18:19 ` [linux-pm] " Rafael J. Wysocki
2010-09-30 18:25 ` [PATCH] PM: add synchronous runtime interface for interrupt handlers Alan Stern
2010-09-30 18:25 ` Alan Stern
2010-09-30 20:15 ` Rafael J. Wysocki
2010-09-30 21:42 ` Alan Stern
2010-09-30 21:42 ` Alan Stern
2010-09-30 21:42 ` Alan Stern
2010-09-30 22:41 ` Rafael J. Wysocki
2010-10-01 14:28 ` Alan Stern
2010-10-01 21:23 ` Rafael J. Wysocki
2010-10-02 14:12 ` Alan Stern
2010-10-02 22:06 ` Rafael J. Wysocki
2010-10-03 15:52 ` Alan Stern
2010-10-03 20:33 ` Rafael J. Wysocki
2010-10-03 20:33 ` Rafael J. Wysocki
2010-10-03 15:52 ` Alan Stern
2010-10-08 23:24 ` PATCH: PM / Runtime: Remove idle notification after failing suspend (was: Re: [PATCH] PM: add synchronous ...) Rafael J. Wysocki
2010-10-08 23:24 ` PATCH: PM / Runtime: Remove idle notification after failing suspend (was: Re: [linux-pm] " Rafael J. Wysocki
2010-10-10 20:18 ` PATCH: PM / Runtime: Remove idle notification after failing suspend (was: " Alan Stern
2010-10-10 20:18 ` PATCH: PM / Runtime: Remove idle notification after failing suspend (was: Re: [linux-pm] " Alan Stern
2010-10-02 22:06 ` [PATCH] PM: add synchronous runtime interface for interrupt handlers Rafael J. Wysocki
2010-10-05 21:44 ` Kevin Hilman
2010-10-06 15:58 ` Alan Stern
2010-10-06 19:33 ` Rafael J. Wysocki
2010-10-06 19:33 ` Rafael J. Wysocki
2010-10-06 19:35 ` Kevin Hilman
2010-10-06 20:28 ` Alan Stern
2010-10-06 20:28 ` Alan Stern
2010-10-06 21:47 ` Rafael J. Wysocki
2010-10-07 15:26 ` Alan Stern
2010-10-07 16:52 ` Kevin Hilman
2010-10-07 17:35 ` Alan Stern
2010-10-07 21:11 ` Rafael J. Wysocki
2010-10-07 21:11 ` Rafael J. Wysocki
2010-10-07 23:15 ` Kevin Hilman
2010-10-07 23:15 ` Kevin Hilman
2010-10-07 23:37 ` Rafael J. Wysocki
2010-10-07 23:55 ` Kevin Hilman
2010-10-07 23:55 ` Kevin Hilman
2010-10-08 16:22 ` Alan Stern
2010-10-08 16:22 ` Alan Stern
2010-10-08 21:04 ` Kevin Hilman
2010-10-08 21:04 ` Kevin Hilman
2010-10-08 19:57 ` Rafael J. Wysocki
2010-10-08 19:57 ` Rafael J. Wysocki
2010-10-07 23:37 ` Rafael J. Wysocki
2010-10-08 16:18 ` Alan Stern
2010-10-08 19:53 ` Rafael J. Wysocki
2010-10-09 11:09 ` [linux-pm] " Rafael J. Wysocki
2010-10-11 17:00 ` Alan Stern
2010-10-11 17:00 ` [linux-pm] " Alan Stern
2010-10-11 22:30 ` Rafael J. Wysocki
2010-10-11 22:30 ` Rafael J. Wysocki
2010-10-09 11:09 ` Rafael J. Wysocki
2010-10-08 19:53 ` Rafael J. Wysocki
2010-10-08 16:18 ` Alan Stern
2010-10-07 17:35 ` Alan Stern
2010-10-07 16:52 ` Kevin Hilman
2010-10-07 15:26 ` Alan Stern
2010-11-19 15:45 ` [PATCH ver. 2] " Alan Stern
2010-11-20 12:56 ` Rafael J. Wysocki
2010-11-20 16:59 ` Alan Stern
2010-11-20 19:41 ` Alan Stern
2010-11-20 19:41 ` [linux-pm] " Alan Stern
2010-11-21 23:45 ` Rafael J. Wysocki
2010-11-21 23:45 ` [linux-pm] " Rafael J. Wysocki
2010-11-21 23:41 ` Rafael J. Wysocki
2010-11-22 15:38 ` Alan Stern
2010-11-22 23:01 ` Rafael J. Wysocki
2010-11-22 23:01 ` Rafael J. Wysocki
2010-11-23 3:19 ` Alan Stern
2010-11-23 3:19 ` Alan Stern
2010-11-23 22:51 ` Rafael J. Wysocki
2010-11-24 0:11 ` Kevin Hilman
2010-11-24 0:11 ` Kevin Hilman [this message]
2010-11-24 16:43 ` Alan Stern
2010-11-24 18:03 ` Kevin Hilman
2010-11-24 18:03 ` Kevin Hilman
2010-11-24 16:43 ` Alan Stern
2010-11-24 14:56 ` Alan Stern
2010-11-24 14:56 ` Alan Stern
2010-11-24 20:33 ` Rafael J. Wysocki
2010-11-24 20:33 ` Rafael J. Wysocki
2010-11-25 15:52 ` [PATCH ver. 3] " Alan Stern
2010-11-25 15:52 ` Alan Stern
2010-11-25 18:58 ` Oliver Neukum
2010-11-25 18:58 ` [linux-pm] " Oliver Neukum
2010-11-25 20:03 ` Rafael J. Wysocki
2010-11-25 20:03 ` Rafael J. Wysocki
2010-11-26 22:23 ` Rafael J. Wysocki
2010-11-26 22:23 ` Rafael J. Wysocki
2010-11-23 22:51 ` [PATCH ver. 2] " Rafael J. Wysocki
2010-11-22 15:38 ` Alan Stern
2010-11-21 23:41 ` Rafael J. Wysocki
2010-11-20 16:59 ` Alan Stern
2010-11-20 12:56 ` Rafael J. Wysocki
2010-11-19 15:45 ` Alan Stern
2011-04-11 15:47 ` Sylwester Nawrocki
2011-04-11 16:08 ` Alan Stern
2011-04-11 17:20 ` Sylwester Nawrocki
2011-04-11 18:37 ` Alan Stern
2010-10-06 21:47 ` [PATCH] " Rafael J. Wysocki
2010-10-06 23:51 ` Kevin Hilman
2010-10-06 23:51 ` Kevin Hilman
2010-10-06 19:35 ` Kevin Hilman
2010-10-06 15:58 ` Alan Stern
2010-10-05 21:44 ` Kevin Hilman
2010-10-02 14:12 ` Alan Stern
2010-10-01 14:28 ` Alan Stern
2010-09-30 22:41 ` Rafael J. Wysocki
2010-09-30 20:15 ` Rafael J. Wysocki
2010-09-30 22:02 ` Rafael J. Wysocki
2010-10-01 14:12 ` Alan Stern
2010-10-01 14:12 ` Alan Stern
2010-10-01 21:14 ` Rafael J. Wysocki
2010-10-01 21:14 ` Rafael J. Wysocki
2010-10-01 22:37 ` [PATCH] PM / Runtime: Reduce code duplication in core helper functions (was: Re: [linux-pm] [PATCH] PM: add synchronous ...) Rafael J. Wysocki
2010-10-02 14:15 ` Alan Stern
2010-10-02 14:15 ` [PATCH] PM / Runtime: Reduce code duplication in core helper functions (was: " Alan Stern
2010-10-01 22:37 ` Rafael J. Wysocki
2010-09-28 14:55 ` runtime_pm_get_sync() from ISR with IRQs disabled? Alan Stern
2010-09-27 21:11 ` Kevin Hilman
2010-09-27 21:11 ` [linux-pm] " Kevin Hilman
2010-09-27 20:00 ` Rafael J. Wysocki
2010-09-24 20:04 ` Rafael J. Wysocki
2010-09-24 20:27 ` [linux-pm] " Alan Stern
2010-09-24 21:52 ` Kevin Hilman
2010-09-24 21:52 ` Kevin Hilman
2010-09-24 20:27 ` Alan Stern
2010-09-24 18:54 ` Kevin Hilman
2010-09-24 15:13 ` 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=87mxozd1ho.fsf@deeprootsystems.com \
--to=khilman@deeprootsystems.com \
--cc=linux-omap@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=p-basak2@ti.com \
--cc=rjw@sisk.pl \
--cc=stern@rowland.harvard.edu \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.