From: Len Brown <lenb@kernel.org> To: Russell King - ARM Linux <linux@arm.linux.org.uk> Cc: Catalin Marinas <catalin.marinas@arm.com>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, "linux-arm-kernel@lists.infradead.org" <linux-arm-kernel@lists.infradead.org>, "linux-pm@vger.kernel.org" <linux-pm@vger.kernel.org> Subject: Re: [PATCH 06/16] ARM idle: delete pm_idle Date: Mon, 11 Feb 2013 17:42:55 -0500 [thread overview] Message-ID: <511973EF.8080007@kernel.org> (raw) In-Reply-To: <20130211161125.GM17833@n2100.arm.linux.org.uk> On 02/11/2013 11:11 AM, Russell King - ARM Linux wrote: > On Mon, Feb 11, 2013 at 04:02:30PM +0000, Catalin Marinas wrote: >> On Sun, Feb 10, 2013 at 05:58:13AM +0000, Len Brown wrote: >>> pm_idle() on ARM was a synonym for default_idle(), >>> so simply invoke default_idle() directly. >> >> The clean-up looks fine as we already have an arm_pm_idle but longer >> term I was thinking about having a common declaration similar to >> pm_power_off that code under drivers/power/(reset/) can override (and >> such driver may be shared by multiple architectures). OTOH, if you get >> rid of the generic linux/pm.h declaration architectures can use a common >> pm_idle name and type (though I think having it in the common header >> would be better). For ARM this would mean s/arm_pm_idle/pm_idle/ on top >> if your patch. > > pm_idle() was that common declaration - but it had the side effect that > it was defined to be called with interrupts disabled, but return with > interrupts enabled. Yeah, I expect that grew out of the x86 idiom "STI;HLT", which dictated default_idle(), which in-turn dictated pm_idle(). x86's MWAIT instruction now has more flexibility WRT interrupts, but the cast was already set... Please let me know if you Ack the patch as is, or would like it changed. thanks, -Len Brown, Intel Open Source Technology Center > arm_pm_idle() "fixed" that weirdness such that it's now expected to > return with IRQs in the same state that it was called. > > pm_power_off() is a cross-arch hook already. >
WARNING: multiple messages have this Message-ID (diff)
From: lenb@kernel.org (Len Brown) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH 06/16] ARM idle: delete pm_idle Date: Mon, 11 Feb 2013 17:42:55 -0500 [thread overview] Message-ID: <511973EF.8080007@kernel.org> (raw) In-Reply-To: <20130211161125.GM17833@n2100.arm.linux.org.uk> On 02/11/2013 11:11 AM, Russell King - ARM Linux wrote: > On Mon, Feb 11, 2013 at 04:02:30PM +0000, Catalin Marinas wrote: >> On Sun, Feb 10, 2013 at 05:58:13AM +0000, Len Brown wrote: >>> pm_idle() on ARM was a synonym for default_idle(), >>> so simply invoke default_idle() directly. >> >> The clean-up looks fine as we already have an arm_pm_idle but longer >> term I was thinking about having a common declaration similar to >> pm_power_off that code under drivers/power/(reset/) can override (and >> such driver may be shared by multiple architectures). OTOH, if you get >> rid of the generic linux/pm.h declaration architectures can use a common >> pm_idle name and type (though I think having it in the common header >> would be better). For ARM this would mean s/arm_pm_idle/pm_idle/ on top >> if your patch. > > pm_idle() was that common declaration - but it had the side effect that > it was defined to be called with interrupts disabled, but return with > interrupts enabled. Yeah, I expect that grew out of the x86 idiom "STI;HLT", which dictated default_idle(), which in-turn dictated pm_idle(). x86's MWAIT instruction now has more flexibility WRT interrupts, but the cast was already set... Please let me know if you Ack the patch as is, or would like it changed. thanks, -Len Brown, Intel Open Source Technology Center > arm_pm_idle() "fixed" that weirdness such that it's now expected to > return with IRQs in the same state that it was called. > > pm_power_off() is a cross-arch hook already. >
next prev parent reply other threads:[~2013-02-11 22:43 UTC|newest] Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top 2013-02-10 5:58 pm_idle cleanup patch series Len Brown 2013-02-10 5:58 ` [PATCH 01/16] APM idle: register apm_cpu_idle via cpuidle Len Brown 2013-02-10 5:58 ` [PATCH 02/16] x86 idle: rename global pm_idle to static x86_idle Len Brown 2013-02-10 5:58 ` [PATCH 04/16] sparc idle: rename pm_idle to sparc_idle Len Brown 2013-02-10 5:58 ` Len Brown 2013-02-10 23:08 ` David Miller 2013-02-10 23:08 ` David Miller 2013-02-10 5:58 ` [PATCH 05/16] blackfin idle: delete pm_idle Len Brown 2013-02-18 16:28 ` Lars-Peter Clausen 2013-02-20 17:53 ` Len Brown 2013-02-20 19:52 ` Rafael J. Wysocki 2013-02-20 19:53 ` Lars-Peter Clausen 2013-02-20 19:59 ` Rafael J. Wysocki 2013-02-20 20:21 ` Lars-Peter Clausen 2013-02-20 21:18 ` Rafael J. Wysocki 2013-02-21 9:56 ` [PATCH] blackfin idle: Fix compile error Lars-Peter Clausen 2013-02-21 16:24 ` Rafael J. Wysocki 2013-02-10 5:58 ` [PATCH 06/16] ARM idle: delete pm_idle Len Brown 2013-02-10 5:58 ` Len Brown 2013-02-10 5:58 ` Len Brown 2013-02-11 16:02 ` Catalin Marinas 2013-02-11 16:02 ` Catalin Marinas 2013-02-11 16:02 ` Catalin Marinas 2013-02-11 16:11 ` Russell King - ARM Linux 2013-02-11 16:11 ` Russell King - ARM Linux 2013-02-11 16:11 ` Russell King - ARM Linux 2013-02-11 22:42 ` Len Brown [this message] 2013-02-11 22:42 ` Len Brown 2013-02-11 22:42 ` Len Brown 2013-02-12 22:04 ` Kevin Hilman 2013-02-12 22:04 ` Kevin Hilman 2013-02-10 5:58 ` [PATCH 07/16] ARM64 " Len Brown 2013-02-10 5:58 ` Len Brown 2013-02-12 11:03 ` Catalin Marinas 2013-02-12 11:03 ` Catalin Marinas 2013-02-12 11:03 ` Catalin Marinas 2013-02-10 5:58 ` [PATCH 08/16] cris idle: delete idle and pm_idle Len Brown 2013-02-11 8:42 ` Jesper Nilsson 2013-02-10 5:58 ` [PATCH 09/16] ia64 idle: delete pm_idle Len Brown 2013-02-10 5:58 ` Len Brown 2013-02-21 10:15 ` Lars-Peter Clausen 2013-02-21 10:15 ` Lars-Peter Clausen 2013-03-26 3:12 ` Brown, Len 2013-03-26 4:29 ` [PATCH] ia64 idle: delete (*idle)() Len Brown 2013-03-26 4:29 ` Len Brown 2013-02-10 5:58 ` [PATCH 10/16] m32r idle: delete pm_idle, and other dead idle code Len Brown 2013-02-10 5:58 ` [PATCH 11/16] microblaze idle: delete pm_idle Len Brown 2013-02-21 10:15 ` [PATCH] microblaze idle: Fix compile error Lars-Peter Clausen 2013-02-21 16:25 ` Rafael J. Wysocki 2013-02-10 5:58 ` [PATCH 12/16] mn10300 idle: delete pm_idle Len Brown 2013-02-10 5:58 ` [PATCH 13/16] openrisc " Len Brown 2013-02-10 5:58 ` Len Brown 2013-02-10 17:31 ` [ORLinux] " Jonas Bonn 2013-02-10 17:31 ` Jonas Bonn 2013-02-10 5:58 ` [PATCH 14/16] unicore32 idle: delete stray pm_idle comment Len Brown 2013-02-10 5:58 ` [PATCH 15/16] PM idle: remove global declaration of pm_idle Len Brown 2013-02-10 5:58 ` [PATCH 16/16] xen idle: make xen-specific macro xen-specific Len Brown 2013-02-11 9:18 ` [PATCH 01/16] APM idle: register apm_cpu_idle via cpuidle Daniel Lezcano 2013-02-11 22:50 ` Len Brown 2013-02-11 23:03 ` APM: Request to Test Len Brown 2013-02-11 23:03 ` [PATCH v2] APM idle: register apm_cpu_idle via cpuidle Len Brown 2013-02-12 15:00 ` Daniel Lezcano 2013-02-12 15:00 ` Daniel Lezcano 2013-02-18 13:30 ` Jiri Kosina 2013-02-20 17:48 ` Len Brown 2013-02-10 5:58 ` [PATCH 03/16] sh idle: rename global pm_idle to static sh_idle Len Brown 2013-02-10 5:58 ` Len Brown
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=511973EF.8080007@kernel.org \ --to=lenb@kernel.org \ --cc=catalin.marinas@arm.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-pm@vger.kernel.org \ --cc=linux@arm.linux.org.uk \ /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: linkBe 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.