public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Nigel Cunningham <ncunningham@cyclades.com>
To: Pavel Machek <pavel@ucw.cz>
Cc: Andy Isaacson <adi@hexapodia.org>,
	"Rafael J. Wysocki" <rjw@sisk.pl>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: swsusp performance problems in 2.6.15-rc3-mm1
Date: Thu, 08 Dec 2005 08:05:44 +1000	[thread overview]
Message-ID: <1133993143.10276.257.camel@localhost> (raw)
In-Reply-To: <20051206142237.GB1814@elf.ucw.cz>

Hi.

On Wed, 2005-12-07 at 00:22, Pavel Machek wrote:
> Hi!
> 
> > Hi. Tue, 2005-12-06 at 12:06, Andy Isaacson wrote:
> > > Could we rework it to avoid writing clean pages out to the swsusp image,
> > > but keep a list of those pages and read them back in *after* having
> > > resumed?  Maybe do the /dev/initrd ('less +/once Documentation/initrd.txt'
> > > if you're not familiar with it) trick to make the list of pages available 
> > > to a userland helper.
> > 
> > The problem is that once you let userspace run, you have absolutely no
> > control over what pages are read from or written to, and if a userspace
> > app assumes that data is there in a page when it isn't, you have a
> > recipe for an oops at best, and possibly for on disk
> > corruption. Pages
> 
> No, that will not be a problem. You just resume system as you do now,
> most pages will be not there. *But kernel knows it is not there*, and
> will on-demand load them back. It will be normal userland application
> doing readback. There's absolutely no risk of corruption.

How does the kernel know the pages aren't there? I thought for a while
yesterday that I'd just misread something, but as I look at this again
this morning, I'm not so sure. For what you're talking about to work,
you'd need to mess with the page tables so that the kernel doesn't think
those pages are still there.

I can understand how you'd remember what pages to fault in, but getting
the kernel to know they're not there sounds like a rewrite of kswapd.

Regards,

Nigel

> Imagine something that saves list of needed pages before suspend, then
> does something like
> 
> cat `cat /proc/[0-9]*/maps | grep / | sed 's:.* /:/:' | sort -u` > /dev/null
> 
> ...it should work pretty well. And worst thing it can do is send your
> system thrashing.
> 
> 								Pavel
-- 



  reply	other threads:[~2005-12-07 22:09 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-12-05  8:19 swsusp performance problems in 2.6.15-rc3-mm1 Andy Isaacson
2005-12-05 12:17 ` Pavel Machek
2005-12-05 13:58   ` Nigel Cunningham
2005-12-05 17:29     ` Pavel Machek
2005-12-05 21:11       ` Nigel Cunningham
2005-12-05 23:34         ` Pavel Machek
2005-12-06  1:26           ` Nigel Cunningham
2005-12-06  1:52             ` Pavel Machek
2005-12-05 22:44       ` Rafael J. Wysocki
2005-12-06  0:01         ` Pavel Machek
2005-12-05 22:28     ` Rafael J. Wysocki
2005-12-06  1:07       ` Nigel Cunningham
2005-12-06  1:37         ` Pavel Machek
2005-12-06  1:47           ` Andy Isaacson
2005-12-06  1:56             ` IDE performance on notebooks [was Re: swsusp performance problems in 2.6.15-rc3-mm1] Pavel Machek
2005-12-06  6:23               ` Andy Isaacson
2005-12-06 11:56                 ` Pavel Machek
2005-12-06  1:57             ` swsusp performance problems in 2.6.15-rc3-mm1 Nigel Cunningham
2005-12-06  3:50             ` Mark Lord
2005-12-06 15:03               ` Mark Lord
2005-12-06  2:02           ` Nigel Cunningham
2005-12-06 12:09             ` Pavel Machek
2005-12-06  1:36       ` Nigel Cunningham
2005-12-06  2:06         ` Andy Isaacson
2005-12-06  2:21           ` Nigel Cunningham
2005-12-06 14:22             ` Pavel Machek
2005-12-07 22:05               ` Nigel Cunningham [this message]
2005-12-07 22:23                 ` Pavel Machek
2005-12-06  2:21           ` Nigel Cunningham
2005-12-06 12:18           ` Pavel Machek
2005-12-06 18:15             ` Andy Isaacson
2005-12-07  1:05               ` Rafael J. Wysocki
2005-12-07  1:10                 ` Pavel Machek
2005-12-07 11:17                   ` Rafael J. Wysocki
2005-12-07 11:30                     ` Pavel Machek
2005-12-08 22:42                       ` Rafael J. Wysocki
2005-12-08 22:50                         ` Pavel Machek
2005-12-05 21:18   ` Rafael J. Wysocki
2005-12-05 23:55     ` swsusp: how much memory to free? [was Re: swsusp performance problems in 2.6.15-rc3-mm1] Pavel Machek
2005-12-07 11:53       ` Rafael J. Wysocki
2005-12-07 11:59         ` Pavel Machek
2005-12-07 12:16           ` Rafael J. Wysocki
2005-12-07 12:18             ` Pavel Machek
2005-12-05 23:05 ` swsusp performance problems in 2.6.15-rc3-mm1 Rafael J. Wysocki
2005-12-06  0:12   ` Andy Isaacson
2005-12-06  0:51     ` Pavel Machek
2005-12-10 22:21   ` Andrew Morton
2005-12-10 23:07     ` Rafael J. Wysocki
2005-12-10 23:33       ` Andrew Morton
2005-12-11 12:16         ` Rafael J. Wysocki
2005-12-11 23:28           ` Pavel Machek
2005-12-12 17:45             ` Rafael J. Wysocki

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=1133993143.10276.257.camel@localhost \
    --to=ncunningham@cyclades.com \
    --cc=adi@hexapodia.org \
    --cc=linux-kernel@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox