All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marcelo Tosatti <marcelo.tosatti@cyclades.com>
To: Nigel Cunningham <ncunningham@linuxmail.org>
Cc: Kevin Fenzi <kevin@scrye.com>, Pavel Machek <pavel@ucw.cz>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: 2.6.9-rc2-mm1 swsusp bug report.
Date: Sun, 26 Sep 2004 13:18:16 -0300	[thread overview]
Message-ID: <20040926161816.GA27702@logos.cnet> (raw)
In-Reply-To: <1096113235.5937.3.camel@desktop.cunninghams>

On Sat, Sep 25, 2004 at 09:53:55PM +1000, Nigel Cunningham wrote:
> Hi.
> 
> On Sat, 2004-09-25 at 11:45, Kevin Fenzi wrote:
> > Nigel> The problem isn't really that you're out of memory. Rather, the
> > Nigel> memory is so fragmented that swsusp is unable to get an order 8
> > Nigel> allocation in which to store its metadata. There isn't really
> > Nigel> anything you can do to avoid this issue apart from eating
> > Nigel> memory (which swsusp is doing anyway).
> > 
> > Odd. I have never run into this before with either swsusp2 or
> > swsusp1. 
> 
> You won't run into it with suspend2 because it doesn't use high order
> allocations. There might be one exception, but apart from that, all of
> suspend2's data is stored in order zero allocated pages, so
> fragmentation is not an issue. This is the real solution to the problem.
> I had to do it this way because I aim to have suspend work without
> eating any memory.
> 
> > What causes memory to be so fragmented? 
> 
> Normal usage; the pattern of pages being freed and allocated inevitably
> leads to fragmentation. The buddy allocator does a good job of
> minimising it, but what is really needed is a run-time defragmenter. I
> saw mention of this recently, but it's probably not that practical to
> implement IMHO.

I think it is possible to have a defragmenter: allocate new page, 
invalidate mapped pte's, invalidate radix tree entry (and block radix lookups),`
copy data from oldpage to newpage, remap pte's, insert radix tree
entry, free oldpage.

The memory hotplug patches do it - I'm trying to implement a similar version
to free physically nearby pages and form high order pages.

  parent reply	other threads:[~2004-09-26 17:58 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-09-24  2:19 2.6.9-rc2-mm1 swsusp bug report Kevin Fenzi
2004-09-24 14:37 ` Pavel Machek
2004-09-24 21:09   ` Kevin Fenzi
2004-09-24 23:40     ` Nigel Cunningham
2004-09-25  1:45       ` Kevin Fenzi
2004-09-25 11:53         ` Nigel Cunningham
2004-09-25 12:22           ` Nick Piggin
2004-09-25 12:56             ` William Lee Irwin III
2004-09-25 13:21               ` Nigel Cunningham
2004-09-25 12:56             ` Nigel Cunningham
2004-09-25 13:38               ` Nick Piggin
2004-09-25 13:03             ` Nigel Cunningham
2004-09-25 15:45             ` Pavel Machek
2004-09-25 22:03               ` Nigel Cunningham
2004-09-26 10:04                 ` Pavel Machek
2004-09-26 21:59                   ` Nigel Cunningham
2004-09-26 22:43                     ` Pavel Machek
2004-09-27 10:12                       ` Nigel Cunningham
2004-09-26 16:18           ` Marcelo Tosatti [this message]
2004-09-26 18:39             ` Pavel Machek
2004-09-25 10:15     ` Pavel Machek
     [not found] <2HO0C-4xh-29@gated-at.bofh.it>
     [not found] ` <2I5b2-88s-15@gated-at.bofh.it>
     [not found]   ` <2I5E5-6h-19@gated-at.bofh.it>
     [not found]     ` <2I7Zd-1TK-11@gated-at.bofh.it>
2004-09-25  1:05       ` Pascal Schmidt
2004-09-25 10:16         ` Pavel Machek
2004-10-10 18:17           ` Jan Rychter
2004-10-11 13:32             ` Pavel Machek
2004-10-11 14:53               ` Jan Rychter
2004-10-17 19:10                 ` Pavel Machek
2004-10-17 21:40                   ` Nigel Cunningham
2004-10-11  9:56           ` Stefan Seyfried
2004-10-11 14:59             ` Pavel Machek
2004-10-11 17:18               ` Stefan Seyfried
2004-10-11 19:58                 ` Rafael J. Wysocki
2004-10-12  8:55                   ` Pavel Machek
2004-10-13 17:29                     ` 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=20040926161816.GA27702@logos.cnet \
    --to=marcelo.tosatti@cyclades.com \
    --cc=kevin@scrye.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ncunningham@linuxmail.org \
    --cc=pavel@ucw.cz \
    /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.