All of lore.kernel.org
 help / color / mirror / Atom feed
From: james.morse@arm.com (James Morse)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v6 14/14] arm64: hibernate: Prevent resume from a different kernel version
Date: Thu, 14 Apr 2016 13:47:28 +0100	[thread overview]
Message-ID: <570F9160.30408@arm.com> (raw)
In-Reply-To: <20160410114938.GB30188@xo-6d-61-c0.localdomain>

On 10/04/16 12:49, Pavel Machek wrote:
> On Mon 2016-02-29 17:20:23, James Morse wrote:
>> Prevent resuming with a different kernel build, by storing UTS_VERSION
>> in the hibernate header. This also ensures the page size and va bits
>> configuration remain the same.
>>
>> Signed-off-by: James Morse <james.morse@arm.com>
> 
> Better solution would be to store the current bits _and_ UTS version. Then bump UTS_VERSION
> every time Linux behaviour changes w.r.t. EFI. For a while, it would change a lot, but then
> it should stabilize, as the port stabilizes

If we want to support resuming with a different kernel version. Patch 13 (of
this series) does this, it has 'HIBERNATE_VERSION', which we would have to
increase every time an incompatible change is made, but I'm worried that its a
constant game of catch-up to work out which changes are compatible. The first
sign a user gets that this isn't supported, (who reads the changelog?), is when
it fails to resume, and they loose any data that was written to the hibernate image.

What does restoring with a different kernel version get used for? (I agree its a
neat trick!) I can see it would be useful on laptops, where the distribution can
upgrade the kernel and the user can still use hibernate before they reboot. But
the distribution can switch this value to be just the kernel version if they are
willing to test hibernate/resume over any updates they make.

If I repost this series, I intend to squash this patch into the main 'add
support for' patch.



Thanks,

James

  reply	other threads:[~2016-04-14 12:47 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-29 17:20 [PATCH v6 00/14] arm64: kernel: Add support for hibernate/suspend-to-disk James Morse
2016-02-29 17:20 ` James Morse
2016-02-29 17:20 ` [PATCH v6 01/14] arm64: Fold proc-macros.S into assembler.h James Morse
2016-02-29 17:20 ` [PATCH v6 02/14] arm64: Cleanup SCTLR flags James Morse
2016-02-29 17:20 ` [PATCH v6 03/14] arm64: Convert hcalls to use HVC immediate value James Morse
2016-02-29 17:20 ` [PATCH v6 04/14] arm64: Add new hcall HVC_CALL_FUNC James Morse
2016-02-29 17:20 ` [PATCH v6 05/14] arm64: kvm: allows kvm cpu hotplug James Morse
2016-02-29 17:20 ` [PATCH v6 06/14] arm64: kernel: Rework finisher callback out of __cpu_suspend_enter() James Morse
2016-02-29 17:20 ` [PATCH v6 07/14] arm64: Change cpu_resume() to enable mmu early then access sleep_sp by va James Morse
2016-02-29 17:20 ` [PATCH v6 08/14] arm64: kernel: Include _AC definition in page.h James Morse
2016-02-29 17:20 ` [PATCH v6 09/14] arm64: Promote KERNEL_START/KERNEL_END definitions to a header file James Morse
2016-02-29 17:20 ` [PATCH v6 10/14] arm64: Add new asm macro copy_page James Morse
2016-02-29 17:20 ` [PATCH v6 11/14] arm64: head.S: el2_setup() to accept sctlr_el1 as an argument James Morse
2016-02-29 17:20 ` [PATCH v6 12/14] PM / Hibernate: Call flush_icache_range() on pages restored in-place James Morse
2016-02-29 17:20   ` James Morse
2016-02-29 17:20 ` [PATCH v6 13/14] arm64: kernel: Add support for hibernate/suspend-to-disk James Morse
2016-02-29 17:20 ` [PATCH v6 14/14] arm64: hibernate: Prevent resume from a different kernel version James Morse
2016-04-10 11:49   ` Pavel Machek
2016-04-14 12:47     ` James Morse [this message]
2016-04-14 13:13       ` Pavel Machek

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=570F9160.30408@arm.com \
    --to=james.morse@arm.com \
    --cc=linux-arm-kernel@lists.infradead.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 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.