All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
To: Russ Dill <Russ.Dill@ti.com>
Cc: Sebastian Capella <sebastian.capella@linaro.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-pm@vger.kernel.org" <linux-pm@vger.kernel.org>,
	"linaro-kernel@lists.linaro.org" <linaro-kernel@lists.linaro.org>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>,
	Russell King <linux@arm.linux.org.uk>,
	Len Brown <len.brown@intel.com>, Pavel Machek <pavel@ucw.cz>,
	Nicolas Pitre <nico@linaro.org>,
	Santosh Shilimkar <santosh.shilimkar@ti.com>,
	Will Deacon <Will.Deacon@arm.com>,
	Jonathan Austin <Jonathan.Austin@arm.com>,
	Catalin Marinas <Catalin.Marinas@arm.com>,
	Uwe Kleine-K?nig <u.kleine-koenig@pengutronix.de>,
	Stephen Boyd <sboyd@codeaurora.org>
Subject: Re: [PATCH RFC v1 3/3] ARM hibernation / suspend-to-disk
Date: Thu, 20 Feb 2014 10:37:31 +0000	[thread overview]
Message-ID: <20140220103731.GB15994@e102568-lin.cambridge.arm.com> (raw)
In-Reply-To: <530501A7.2030703@ti.com>

On Wed, Feb 19, 2014 at 07:10:31PM +0000, Russ Dill wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> On 02/19/2014 08:12 AM, Lorenzo Pieralisi wrote:
> 
> + *  https://patchwork.kernel.org/patch/96442/
> 

I am guessing the snippets of code your comments refer to.

> I think the idea here is to get the CPU into a state so that later
> when we resume from the resume kernel, the actual CPU state matches
> the state we have in kernel. The main thing flush_thread does is clear
> out any and all FP state.

Which has already been saved through syscore_suspend()....

> The may be part of the patchset that is OBE.

It has to be updated then.

> cpu_resume makes many assumptions about the state of the state of the
> CPU, the primary being that the MMU is disabled, but also that all
> caches and IRQs are disabled. soft_restart does all this for us.
> 
> 
> 
> ah, you are saying just return from __swsusp_arch_save_image and allow
> cpu_suspend_abort to be called, placing the result of swsusp_save
> somewhere else. This may work and would reduce the complexity of the
> code slightly.

Yes. Basically you are doing a soft reboot just to return 0.

> This is taken from the previous iteration of the patchset, I think the
> comment is OBE.

Updated it please then.

> But this is still required to select the right mapping for our copying.

/me confused. Please describe what switching to idmap is meant to
achieve. In the patch above the copied swapper pgdir is not even used, I
would like to understand why this is done.

> I don't remember why I needed to prevent gcc from manipulating the
> stack here.

That's not a good reason to mark a function with attr __naked. If it is
needed we leave it there, if it is not it has to go.

> This is another holdover from previous patch versions that may be OBE.

See above.

Lorenzo


WARNING: multiple messages have this Message-ID (diff)
From: lorenzo.pieralisi@arm.com (Lorenzo Pieralisi)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH RFC v1 3/3] ARM hibernation / suspend-to-disk
Date: Thu, 20 Feb 2014 10:37:31 +0000	[thread overview]
Message-ID: <20140220103731.GB15994@e102568-lin.cambridge.arm.com> (raw)
In-Reply-To: <530501A7.2030703@ti.com>

On Wed, Feb 19, 2014 at 07:10:31PM +0000, Russ Dill wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> On 02/19/2014 08:12 AM, Lorenzo Pieralisi wrote:
> 
> + *  https://patchwork.kernel.org/patch/96442/
> 

I am guessing the snippets of code your comments refer to.

> I think the idea here is to get the CPU into a state so that later
> when we resume from the resume kernel, the actual CPU state matches
> the state we have in kernel. The main thing flush_thread does is clear
> out any and all FP state.

Which has already been saved through syscore_suspend()....

> The may be part of the patchset that is OBE.

It has to be updated then.

> cpu_resume makes many assumptions about the state of the state of the
> CPU, the primary being that the MMU is disabled, but also that all
> caches and IRQs are disabled. soft_restart does all this for us.
> 
> 
> 
> ah, you are saying just return from __swsusp_arch_save_image and allow
> cpu_suspend_abort to be called, placing the result of swsusp_save
> somewhere else. This may work and would reduce the complexity of the
> code slightly.

Yes. Basically you are doing a soft reboot just to return 0.

> This is taken from the previous iteration of the patchset, I think the
> comment is OBE.

Updated it please then.

> But this is still required to select the right mapping for our copying.

/me confused. Please describe what switching to idmap is meant to
achieve. In the patch above the copied swapper pgdir is not even used, I
would like to understand why this is done.

> I don't remember why I needed to prevent gcc from manipulating the
> stack here.

That's not a good reason to mark a function with attr __naked. If it is
needed we leave it there, if it is not it has to go.

> This is another holdover from previous patch versions that may be OBE.

See above.

Lorenzo

  reply	other threads:[~2014-02-20 10:37 UTC|newest]

Thread overview: 91+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-19  1:52 [PATCH RFC v1 0/3] hibernation support on ARM Sebastian Capella
2014-02-19  1:52 ` Sebastian Capella
2014-02-19  1:52 ` [PATCH RFC v1 1/3] ARM: Add irq disabled version of soft_restart Sebastian Capella
2014-02-19  1:52   ` Sebastian Capella
2014-02-22 10:26   ` Russell King - ARM Linux
2014-02-22 10:26     ` Russell King - ARM Linux
2014-02-24 23:13     ` Sebastian Capella
2014-02-24 23:13       ` Sebastian Capella
2014-02-25  0:22       ` Sebastian Capella
2014-02-25  0:22         ` Sebastian Capella
2014-02-25  7:56       ` Russ Dill
2014-02-25  7:56         ` Russ Dill
2014-02-25  7:56         ` Russ Dill
2014-02-25 10:27         ` Thomas Gleixner
2014-02-25 10:27           ` Thomas Gleixner
2014-02-25 17:15           ` Russ Dill
2014-02-25 17:15             ` Russ Dill
2014-02-25 17:15             ` Russ Dill
2014-02-25 23:24             ` Sebastian Capella
2014-02-25 23:24               ` Sebastian Capella
2014-02-19  1:52 ` [PATCH RFC v1 2/3] Fix hibernation restore hang in freeze_processes Sebastian Capella
2014-02-19  1:52   ` Sebastian Capella
2014-02-24  7:09   ` Ming Lei
2014-02-24  7:09     ` Ming Lei
2014-02-19  1:52 ` [PATCH RFC v1 3/3] ARM hibernation / suspend-to-disk Sebastian Capella
2014-02-19  1:52   ` Sebastian Capella
2014-02-19 16:12   ` Lorenzo Pieralisi
2014-02-19 16:12     ` Lorenzo Pieralisi
2014-02-19 16:12     ` Lorenzo Pieralisi
2014-02-19 19:10     ` Russ Dill
2014-02-19 19:10       ` Russ Dill
2014-02-19 19:10       ` Russ Dill
2014-02-20 10:37       ` Lorenzo Pieralisi [this message]
2014-02-20 10:37         ` Lorenzo Pieralisi
2014-02-20 10:37         ` Lorenzo Pieralisi
2014-02-19 19:33     ` Sebastian Capella
2014-02-19 19:33       ` Sebastian Capella
2014-02-20 16:27       ` Lorenzo Pieralisi
2014-02-20 16:27         ` Lorenzo Pieralisi
2014-02-20 16:27         ` Lorenzo Pieralisi
2014-02-21 18:39         ` Sebastian Capella
2014-02-21 18:39           ` Sebastian Capella
2014-02-21 23:59           ` Sebastian Capella
2014-02-21 23:59             ` Sebastian Capella
2014-02-22  4:37             ` Sebastian Capella
2014-02-22  4:37               ` Sebastian Capella
2014-02-22  6:46               ` Russ Dill
2014-02-22  6:46                 ` Russ Dill
2014-02-22  6:46                 ` Russ Dill
2014-02-22 10:22                 ` Russell King - ARM Linux
2014-02-22 10:22                   ` Russell King - ARM Linux
2014-02-22 10:22                   ` Russell King - ARM Linux
2014-02-22 10:16         ` Russell King - ARM Linux
2014-02-22 10:16           ` Russell King - ARM Linux
2014-02-22 10:16           ` Russell King - ARM Linux
2014-02-22 12:13           ` Lorenzo Pieralisi
2014-02-22 12:13             ` Lorenzo Pieralisi
2014-02-22 12:13             ` Lorenzo Pieralisi
2014-02-22 22:30           ` Pavel Machek
2014-02-22 22:30             ` Pavel Machek
2014-02-22 22:30             ` Pavel Machek
2014-02-21  1:01     ` Sebastian Capella
2014-02-21  1:01       ` Sebastian Capella
2014-02-22 10:38     ` Russell King - ARM Linux
2014-02-22 10:38       ` Russell King - ARM Linux
2014-02-22 10:38       ` Russell King - ARM Linux
2014-02-22 12:09       ` Lorenzo Pieralisi
2014-02-22 12:09         ` Lorenzo Pieralisi
2014-02-22 12:09         ` Lorenzo Pieralisi
2014-02-22 22:28         ` Pavel Machek
2014-02-22 22:28           ` Pavel Machek
2014-02-22 22:28           ` Pavel Machek
2014-02-23 19:52         ` Sebastian Capella
2014-02-23 19:52           ` Sebastian Capella
2014-02-23 19:52           ` Sebastian Capella
2014-02-23 20:02         ` Sebastian Capella
2014-02-23 20:02           ` Sebastian Capella
2014-02-23 20:02           ` Sebastian Capella
2014-02-25 11:32           ` Lorenzo Pieralisi
2014-02-25 11:32             ` Lorenzo Pieralisi
2014-02-25 11:32             ` Lorenzo Pieralisi
2014-02-25 17:55             ` Sebastian Capella
2014-02-25 17:55               ` Sebastian Capella
2014-02-26 10:24               ` Lorenzo Pieralisi
2014-02-26 10:24                 ` Lorenzo Pieralisi
2014-02-26 10:24                 ` Lorenzo Pieralisi
2014-02-26 17:50                 ` Sebastian Capella
2014-02-26 17:50                   ` Sebastian Capella
2014-02-26 19:03                   ` Lorenzo Pieralisi
2014-02-26 19:03                     ` Lorenzo Pieralisi
2014-02-26 19:03                     ` Lorenzo Pieralisi

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=20140220103731.GB15994@e102568-lin.cambridge.arm.com \
    --to=lorenzo.pieralisi@arm.com \
    --cc=Catalin.Marinas@arm.com \
    --cc=Jonathan.Austin@arm.com \
    --cc=Russ.Dill@ti.com \
    --cc=Will.Deacon@arm.com \
    --cc=len.brown@intel.com \
    --cc=linaro-kernel@lists.linaro.org \
    --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 \
    --cc=nico@linaro.org \
    --cc=pavel@ucw.cz \
    --cc=rjw@rjwysocki.net \
    --cc=santosh.shilimkar@ti.com \
    --cc=sboyd@codeaurora.org \
    --cc=sebastian.capella@linaro.org \
    --cc=u.kleine-koenig@pengutronix.de \
    /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.