From: Pavel Machek <pavel@suse.cz>
To: Stefan Seyfried <seife@suse.de>,
ACPI devel <acpi-devel@lists.sourceforge.net>,
linux-pm@lists.osdl.org
Subject: Re: swsusp: Not enough free pages
Date: Mon, 30 May 2005 17:01:57 +0200 [thread overview]
Message-ID: <20050530150157.GC2207@elf.ucw.cz> (raw)
In-Reply-To: <20050530091419.GA7922@linux.sh.intel.com>
[-- Attachment #1: Type: text/plain, Size: 1880 bytes --]
Hi!
> > > > I got this error when I'm hacking suspend-to-disk on my IA64 box
> > > with 1G
> > > > memory.
> > > > (Pagesize 64K,MemTotal: 1002112 kB ,MemFree: 395008 kB)
> > > > Do you plan to improve it by compressing pages ?
> > > >
> > > > swsusp: Need to copy 9878 pages
> > > > suspend: (pages needed: 9878 + 512 free: 6486)
> > > > swsusp: Not enough free pages: Have 6486
> > > I have not seen one of those for a long time (on i386). Does this
> > > happen
> > > every time?
> >
> > So far, yes. I just tried 2 times.
>
> always. (I check that swap dev is on)
>
> Sometimes, my ia32 laptop free 0 pages too.
> I think we should always free some pages
> from various caches.
Try this hack... it is basically mm problem I don't know how to fix,
but this seems to help.
Pavel
Index: kernel/power/disk.c
===================================================================
--- 805a02ec2bcff3671d7b1e701bd1981ad2fa196c/kernel/power/disk.c (mode:100644)
+++ ecd8559cc08319bb16a42aac06cf7d664157643a/kernel/power/disk.c (mode:100644)
@@ -88,23 +92,25 @@
static void free_some_memory(void)
{
- unsigned int i = 0;
- unsigned int tmp;
- unsigned long pages = 0;
- char *p = "-\\|/";
-
- printk("Freeing memory... ");
- while ((tmp = shrink_all_memory(10000))) {
- pages += tmp;
- printk("\b%c", p[i]);
- i++;
- if (i > 3)
- i = 0;
+ int i;
+ for (i=0; i<5; i++) {
+ int i = 0, tmp;
+ long pages = 0;
+ char *p = "-\\|/";
+
+ printk("Freeing memory... ");
+ while ((tmp = shrink_all_memory(10000))) {
+ pages += tmp;
+ printk("\b%c", p[i]);
+ i++;
+ if (i > 3)
+ i = 0;
+ }
+ printk("\bdone (%li pages freed)\n", pages);
+ msleep_interruptible(200);
}
- printk("\bdone (%li pages freed)\n", pages);
}
-
static inline void platform_finish(void)
{
if (pm_disk_mode == PM_DISK_PLATFORM) {
[-- Attachment #2: Type: text/plain, Size: 0 bytes --]
next prev parent reply other threads:[~2005-05-30 15:01 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-05-24 16:05 swsusp: Not enough free pages Yu, Luming
2005-05-24 16:55 ` Stefan Seyfried
[not found] ` <20050525012040.GA6145@linux.sh.intel.com>
2005-05-30 9:14 ` Yu, Luming
2005-05-30 15:01 ` Pavel Machek [this message]
[not found] ` <20050530150157.GC2207-I/5MKhXcvmPrBKCeMvbIDA@public.gmane.org>
2005-05-30 17:01 ` James Sparenberg
2005-06-06 6:39 ` Yu, Luming
2005-06-06 10:39 ` [linux-pm] " Pavel Machek
[not found] ` <20050606103936.GA2520-I/5MKhXcvmPrBKCeMvbIDA@public.gmane.org>
2005-06-06 17:02 ` Rafael J. Wysocki
2005-06-06 17:14 ` Pavel Machek
2005-06-06 21:46 ` Rafael J. Wysocki
2005-06-06 21:58 ` Pavel Machek
[not found] ` <20050606215815.GO2230-I/5MKhXcvmPrBKCeMvbIDA@public.gmane.org>
2005-06-07 10:39 ` [linux-pm] " Rafael J. Wysocki
[not found] ` <200506071239.10125.rjw-KKrjLPT3xs0@public.gmane.org>
2005-06-08 15:02 ` Rafael J. Wysocki
2005-06-08 16:27 ` Pavel Machek
2005-06-08 21:42 ` [linux-pm] " Rafael J. Wysocki
2005-06-08 22:03 ` 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=20050530150157.GC2207@elf.ucw.cz \
--to=pavel@suse.cz \
--cc=acpi-devel@lists.sourceforge.net \
--cc=linux-pm@lists.osdl.org \
--cc=seife@suse.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox