All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martin Schwidefsky <schwidefsky@de.ibm.com>
To: linux-pm@lists.linux-foundation.org,
	linux-kernel@vger.kernel.org, linux-s390@vger.kernel.org,
	Pavel Machek <pavel@ucw.cz>, "Rafael J. Wysocki" <rjw@sisk.pl>,
	Jiri Slaby <jslaby@suse.cz>
Subject: [patch 0/1] [RFC] include storage keys in hibernation image
Date: Wed, 08 Jun 2011 09:45:23 +0200	[thread overview]
Message-ID: <20110608074523.211912903@de.ibm.com> (raw)

Greetings,

we have discovered a shortcoming of the s390 support for supend to disk.
The problem is that we currently do not save and restore the storage
keys - the one additional byte associated with each 4K page, a unique
property of s390. The resume from disk will read the hibernation image
from disk and restore the original pages. The I/O or the memory move for
safe pages will set the referenced and the dirty bit in the storage key
for every restored page. Without a reset to the state before the
hibernation cycle the pages will appear to be dirty which causes
problems for e.g. read-only filesystems. 

The solution implemented with this patch saves the storage key in the
upper 8 bits of the page-frame-numbers. The code adds 6 new function
in kernel/power/snapshot.c which are conditionally defined with
CONFIG_S390. The call sites of these functions are scattered in the
snapshot code which makes it hard to find a better abstraction for the
interface. The comments should make clear what the functions do.

-- 
blue skies,
   Martin.

"Reality continues to ruin my life." - Calvin.

             reply	other threads:[~2011-06-08  7:45 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-08  7:45 Martin Schwidefsky [this message]
2011-06-08  7:45 ` [patch 1/1] [PATCH] include storage keys in hibernation image Martin Schwidefsky
2011-06-12 12:41   ` Rafael J. Wysocki
2011-06-12 12:41     ` Rafael J. Wysocki
2011-06-14  8:50     ` Martin Schwidefsky
2011-06-14 20:50       ` Rafael J. Wysocki
2011-06-14 20:50       ` Rafael J. Wysocki
2011-06-15  7:36         ` Martin Schwidefsky
2011-06-15  7:36         ` Martin Schwidefsky
2011-06-15 23:21           ` Rafael J. Wysocki
2011-06-15 23:21           ` Rafael J. Wysocki
2011-07-03 17:46           ` Pavel Machek
2011-07-03 17:46           ` Pavel Machek
2011-07-04  8:09             ` Martin Schwidefsky
2011-07-04  8:09             ` Martin Schwidefsky
2011-07-07 21:36           ` Rafael J. Wysocki
2011-07-08  8:29             ` Martin Schwidefsky
2011-07-08  8:29             ` Martin Schwidefsky
2011-07-07 21:36           ` Rafael J. Wysocki
2011-06-14  8:50     ` Martin Schwidefsky
2011-07-28 22:01   ` Rafael J. Wysocki
2011-07-28 22:01     ` Rafael J. Wysocki
2011-08-09 15:45     ` Martin Schwidefsky
2011-08-09 15:45     ` Martin Schwidefsky
2011-08-09 19:56       ` Rafael J. Wysocki
2011-08-09 19:56       ` Rafael J. Wysocki
2011-06-08  7:45 ` Martin Schwidefsky
  -- strict thread matches above, loose matches on Subject: below --
2011-06-08  7:45 [patch 0/1] [RFC] " Martin Schwidefsky

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=20110608074523.211912903@de.ibm.com \
    --to=schwidefsky@de.ibm.com \
    --cc=jslaby@suse.cz \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@lists.linux-foundation.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=pavel@ucw.cz \
    --cc=rjw@sisk.pl \
    /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.