From: Russell King <rmk+lkml@arm.linux.org.uk>
To: Richard Purdie <rpurdie@rpsys.net>,
LKML <linux-kernel@vger.kernel.org>,
Andrew Morton <akpm@osdl.org>
Subject: Re: 2.6.12-rc6-mm1
Date: Sun, 19 Jun 2005 10:11:21 +0100 [thread overview]
Message-ID: <20050619101120.B6499@flint.arm.linux.org.uk> (raw)
In-Reply-To: <20050619100226.A6499@flint.arm.linux.org.uk>; from rmk+lkml@arm.linux.org.uk on Sun, Jun 19, 2005 at 10:02:26AM +0100
On Sun, Jun 19, 2005 at 10:02:26AM +0100, Russell King wrote:
> On Sun, Jun 19, 2005 at 02:20:48AM +0100, Richard Purdie wrote:
> > On Sun, 2005-06-19 at 00:18 +0100, Russell King wrote:
> > > Thinking about what's probably happening, I suspect all the ARM suspend
> > > and resume code needs to be reworked to save more state. I'll try to
> > > cook up a patch tomorrow to fix it, but I'll need you to provide
> > > feedback.
> >
> > Ok, thanks. I'm happy to test any fixes/patches.
>
> This should resolve the problem - we now rely on the stack pointer for
> each CPU mode to remain constant throughout the running time of the
> kernel, which includes across suspend/resume cycles.
Actually, this patch is probably an all-round better solution.
--- a/arch/arm/kernel/setup.c
+++ b/arch/arm/kernel/setup.c
@@ -328,7 +328,7 @@ static void __init setup_processor(void)
* cpu_init dumps the cache information, initialises SMP specific
* information, and sets up the per-CPU stacks.
*/
-void __init cpu_init(void)
+void cpu_init(void)
{
unsigned int cpu = smp_processor_id();
struct stack *stk = &stacks[cpu];
--- a/arch/arm/mach-pxa/pm.c
+++ b/arch/arm/mach-pxa/pm.c
@@ -133,6 +133,8 @@ static int pxa_pm_enter(suspend_state_t
/* *** go zzz *** */
pxa_cpu_pm_enter(state);
+ cpu_init();
+
/* after sleeping, validate the checksum */
checksum = 0;
for (i = 0; i < SLEEP_SAVE_SIZE - 1; i++)
--- a/arch/arm/mach-sa1100/pm.c
+++ b/arch/arm/mach-sa1100/pm.c
@@ -88,6 +88,8 @@ static int sa11x0_pm_enter(suspend_state
/* go zzz */
sa1100_cpu_suspend();
+ cpu_init();
+
/*
* Ensure not to come back here if it wasn't intended
*/
--- a/include/asm-arm/system.h
+++ b/include/asm-arm/system.h
@@ -104,6 +104,7 @@ extern void show_pte(struct mm_struct *m
extern void __show_regs(struct pt_regs *);
extern int cpu_architecture(void);
+extern void cpu_init(void);
#define set_cr(x) \
__asm__ __volatile__( \
--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 Serial core
next prev parent reply other threads:[~2005-06-19 9:11 UTC|newest]
Thread overview: 104+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-06-07 11:29 2.6.12-rc6-mm1 Andrew Morton
2005-06-07 14:24 ` 2.6.12-rc6-mm1 Wolfgang Wander
2005-06-07 14:49 ` 2.6.12-rc6-mm1 Wolfgang Wander
2005-06-07 14:48 ` 2.6.12-rc6-mm1 Brice Goglin
2005-06-07 20:59 ` 2.6.12-rc6-mm1: rio confusion Adrian Bunk
2005-06-07 21:38 ` Matt Porter
2005-06-07 23:15 ` 2.6.12-rc6-mm1 Francois Romieu
2005-06-08 1:59 ` 2.6.12-rc6-mm1 Søren Lott
2005-06-08 5:53 ` 2.6.12-rc6-mm1 Jean Delvare
2005-06-08 7:54 ` [lm-sensors] 2.6.12-rc6-mm1 Jean Delvare
2005-06-08 7:08 ` 2.6.12-rc6-mm1 Søren Lott
2005-06-08 9:07 ` [lm-sensors] 2.6.12-rc6-mm1 Søren Lott
2005-06-09 3:47 ` Mark M. Hoffman
2005-06-09 5:48 ` Mark M. Hoffman
2005-06-08 14:22 ` 2.6.12-rc6-mm1 Andy Whitcroft
2005-06-08 20:01 ` 2.6.12-rc6-mm1 Andrew Morton
2005-06-08 23:14 ` 2.6.12-rc6-mm1 Martin J. Bligh
2005-06-08 23:22 ` 2.6.12-rc6-mm1 Andrew Morton
2005-06-08 23:34 ` 2.6.12-rc6-mm1 Martin J. Bligh
2005-06-09 7:17 ` 2.6.12-rc6-mm1 Kirill Korotaev
2005-06-09 13:38 ` 2.6.12-rc6-mm1 Martin J. Bligh
2005-06-10 12:12 ` 2.6.12-rc6-mm1 Kirill Korotaev
2005-06-09 4:27 ` 2.6.12-rc6-mm1 Andrey Panin
2005-06-09 13:12 ` 2.6.12-rc6-mm1 Andy Whitcroft
2005-06-08 14:33 ` BUG in i2c_detach_client Andrew James Wade
2005-06-08 16:21 ` Jean Delvare
2005-06-08 21:26 ` Andrew Morton
2005-06-08 22:56 ` Andrew James Wade
2005-06-08 23:32 ` Andrew Morton
2005-06-09 7:52 ` Jean Delvare
2005-06-09 7:47 ` Jean Delvare
2005-06-09 11:05 ` Andrew James Wade
2005-06-09 13:32 ` Andrew James Wade
2005-06-09 15:57 ` Jean Delvare
2005-06-10 5:58 ` Greg KH
2005-06-10 7:08 ` Jean Delvare
2005-06-11 11:51 ` 2.6.12-rc6-mm1 Benoit Boissinot
2005-06-18 22:39 ` 2.6.12-rc6-mm1 Richard Purdie
2005-06-18 22:44 ` 2.6.12-rc6-mm1 Andrew Morton
2005-06-18 22:57 ` 2.6.12-rc6-mm1 Richard Purdie
2005-06-18 23:11 ` 2.6.12-rc6-mm1 Richard Purdie
2005-06-18 23:18 ` 2.6.12-rc6-mm1 Russell King
2005-06-19 1:20 ` 2.6.12-rc6-mm1 Richard Purdie
2005-06-19 9:02 ` 2.6.12-rc6-mm1 Russell King
2005-06-19 9:11 ` Russell King [this message]
2005-06-19 17:12 ` 2.6.12-rc6-mm1 Richard Purdie
2005-06-19 17:39 ` 2.6.12-rc6-mm1 Russell King
2005-06-19 18:25 ` 2.6.12-rc6-mm1 Richard Purdie
2005-06-19 18:56 ` 2.6.12-rc6-mm1 Russell King
2005-06-21 13:20 ` 2.6.12-rc6-mm1 Dominik Karall
2005-06-24 21:27 ` 2.6.12-rc6-mm1 Alexey Dobriyan
2005-07-29 4:54 ` 2.6.12-rc6-mm1 Andrew Morton
2005-07-29 13:39 ` 2.6.12-rc6-mm1 Dominik Karall
2005-07-29 18:22 ` 2.6.12-rc6-mm1 Andrew Morton
2005-07-29 21:19 ` 2.6.12-rc6-mm1 Dominik Karall
2005-07-29 21:27 ` 2.6.12-rc6-mm1 Andrew Morton
2005-07-29 21:37 ` 2.6.12-rc6-mm1 Dominik Karall
2005-08-04 19:44 ` 2.6.12-rc6-mm1 Andrew Morton
2005-08-04 22:28 ` 2.6.12-rc6-mm1 Andrew Morton
2005-08-04 22:44 ` 2.6.12-rc6-mm1 Dominik Karall
2005-08-05 10:48 ` [patch] preempt-trace.patch Ingo Molnar
2005-08-05 11:44 ` Dominik Karall
2005-08-05 15:13 ` [patch] preempt-trace-fixes.patch Ingo Molnar
2005-08-05 18:14 ` Dominik Karall
2005-08-05 14:26 ` [patch] preempt-trace.patch (mono preempt-trace) Dominik Karall
2005-08-05 15:22 ` Ingo Molnar
2005-08-05 17:58 ` Dominik Karall
2005-08-05 18:46 ` Hugh Dickins
2005-08-05 19:23 ` Dominik Karall
2005-08-05 20:04 ` Ingo Molnar
2005-08-05 20:48 ` Dominik Karall
2005-08-05 18:05 ` Andrew Morton
2005-08-05 20:08 ` Ingo Molnar
2005-08-05 20:13 ` Ingo Molnar
-- strict thread matches above, loose matches on Subject: below --
2005-06-07 23:50 2.6.12-rc6-mm1 Martin J. Bligh
2005-06-07 23:56 ` 2.6.12-rc6-mm1 Andrew Morton
2005-06-08 0:02 ` 2.6.12-rc6-mm1 Christoph Lameter
2005-06-08 0:08 ` 2.6.12-rc6-mm1 Andrew Morton
2005-06-08 3:17 ` 2.6.12-rc6-mm1 Nick Piggin
2005-06-08 3:33 ` 2.6.12-rc6-mm1 Con Kolivas
2005-06-08 3:50 ` 2.6.12-rc6-mm1 Nick Piggin
2005-06-08 14:15 ` 2.6.12-rc6-mm1 Martin J. Bligh
2005-06-09 23:56 ` 2.6.12-rc6-mm1 Martin J. Bligh
2005-06-10 7:02 ` 2.6.12-rc6-mm1 Ingo Molnar
2005-06-10 12:03 ` 2.6.12-rc6-mm1 Con Kolivas
2005-06-10 14:19 ` 2.6.12-rc6-mm1 Con Kolivas
2005-06-10 23:14 ` 2.6.12-rc6-mm1 J.A. Magallon
2005-06-10 23:59 ` 2.6.12-rc6-mm1 Con Kolivas
2005-06-11 0:18 ` 2.6.12-rc6-mm1 Con Kolivas
2005-06-11 0:32 ` 2.6.12-rc6-mm1 J.A. Magallon
2005-06-11 0:48 ` 2.6.12-rc6-mm1 Con Kolivas
2005-06-11 0:52 ` 2.6.12-rc6-mm1 Con Kolivas
2005-06-10 23:50 ` 2.6.12-rc6-mm1 Martin J. Bligh
2005-06-11 4:14 ` 2.6.12-rc6-mm1 Martin J. Bligh
2005-06-11 5:22 ` 2.6.12-rc6-mm1 Con Kolivas
2005-06-11 5:56 ` 2.6.12-rc6-mm1 Martin J. Bligh
2005-06-11 20:13 ` 2.6.12-rc6-mm1 Martin J. Bligh
2005-06-11 22:20 ` 2.6.12-rc6-mm1 Con Kolivas
2005-06-11 23:27 ` 2.6.12-rc6-mm1 Martin J. Bligh
2005-06-11 23:47 ` 2.6.12-rc6-mm1 Con Kolivas
2005-06-12 0:23 ` 2.6.12-rc6-mm1 Martin J. Bligh
2005-06-12 5:19 ` 2.6.12-rc6-mm1 Con Kolivas
2005-06-09 1:58 ` 2.6.12-rc6-mm1 Lee Revell
2005-06-08 0:02 ` 2.6.12-rc6-mm1 Martin J. Bligh
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=20050619101120.B6499@flint.arm.linux.org.uk \
--to=rmk+lkml@arm.linux.org.uk \
--cc=akpm@osdl.org \
--cc=linux-kernel@vger.kernel.org \
--cc=rpurdie@rpsys.net \
/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.