From: Mel Gorman <mel-wPRd99KPJ+uzQB+pC5nmwQ@public•gmane.org>
To: Karol Lewandowski
<karol.k.lewandowski-Re5JQEeQqe8AvxtiuMwx3w@public•gmane.org>
Cc: Frans Pop <elendil-EIBgga6/0yRmR6Xm/wNWPw@public•gmane.org>,
Jiri Kosina <jkosina-AlSwsSmVLrQ@public•gmane.org>,
Sven Geggus
<lists-+AJD3D7QEjjt/htJsj1pd9AswbaBtrod@public•gmane.org>,
Tobias Oetiker <tobi-7K0TWYW2a3pyDzI6CaY1VQ@public•gmane.org>,
"Rafael J. Wysocki" <rjw-KKrjLPT3xs0@public•gmane.org>,
David Miller <davem-fT/PcQaiUtIeIZ0/mPfg9Q@public•gmane.org>,
Reinette Chatre
<reinette.chatre-ral2JQCrhuEAvxtiuMwx3w@public•gmane.org>,
Kalle Valo <kalle.valo-X3B1VOXEql0@public•gmane.org>,
David Rientjes <rientjes-hpIqsD4AKlfQT0dZR+AlfA@public•gmane.org>,
KOSAKI Motohiro
<kosaki.motohiro-+CUm20s59erQFUHtdCDX3A@public•gmane.org>,
Mohamed Abbas
<mohamed.abbas-ral2JQCrhuEAvxtiuMwx3w@public•gmane.org>,
Jens Axboe <jens.axboe-QHcLZuEGTsvQT0dZR+AlfA@public•gmane.org>,
"John W. Linville"
<linville-2XuSBdqkA4R54TAoqtyWWQ@public•gmane.org>,
Pekka Enberg <penberg-bbCR+/B0CizivPeTLB3BmA@public•gmane.org>,
Bartlomiej Zolnierkiewicz
<bzolnier-Re5JQEeQqe8AvxtiuMwx3w@public•gmane.org>,
Greg Kroah-Hartman <gregkh-l3A5Bk7waGM@public•gmane.org>,
Stephan von Krawczynski
<skraw-DcQCyzbjH0jQT0dZR+AlfA@public•gmane.org>,
Kernel Testers List
<kernel-testers-u79uwXL29TY76Z2rM5mHXA@public•gmane.org>,
netdev-u79uwXL29TY76Z2rM5mHXA@public•gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public•gmane.org,
"linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public•gmane.org"
<linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public•gmane.org>
Subject: Re: [PATCH 0/5] Candidate fix for increased number of GFP_ATOMIC failures V2
Date: Mon, 2 Nov 2009 20:30:34 +0000 [thread overview]
Message-ID: <20091102203034.GC22046@csn.ul.ie> (raw)
In-Reply-To: <20091030142350.GA9343-nLtalAL5mPp2RxbNQum0x1nzlInOXLuq@public.gmane.org>
On Fri, Oct 30, 2009 at 03:23:50PM +0100, Karol Lewandowski wrote:
> On Wed, Oct 28, 2009 at 11:59:26AM +0000, Mel Gorman wrote:
> > On Wed, Oct 28, 2009 at 12:42:08PM +0100, Karol Lewandowski wrote:
> > > On Sat, Oct 24, 2009 at 02:46:56PM +0100, Mel LKML wrote:
> > > I've tested patches 1+2+3+4 in my normal usage scenario (do some work,
> > > suspend, do work, suspend, ...) and it failed today after 4 days (== 4
> > > suspend-resume cycles).
> > >
> > > I'll test 1-5 now.
>
> 2.6.32-rc5 with patches 1-5 fails too.
>
>
> > Also, what was the behaviour of the e100 driver when suspending before
> > this commit?
> >
> > 6905b1f1a03a48dcf115a2927f7b87dba8d5e566: Net / e100: Fix suspend of devices that cannot be power managed
>
> This was discussed before with e100 maintainers and Rafael. Reverting
> this patch didn't change anything.
>
Does applying the following on top make any difference?
==== CUT HERE ====
PM: Shrink memory before suspend
This is a partial revert of c6f37f12197ac3bd2e5a35f2f0e195ae63d437de. It
is an outside possibility for fixing the e100 bug where an order-5
allocation is failing during resume. The commit notes that the shrinking
of memory should be unnecessary but maybe it is in error.
Signed-off-by: Mel Gorman <mel-wPRd99KPJ+uzQB+pC5nmwQ@public•gmane.org>
diff --git a/kernel/power/suspend.c b/kernel/power/suspend.c
index 6f10dfc..4f6ae64 100644
--- a/kernel/power/suspend.c
+++ b/kernel/power/suspend.c
@@ -23,6 +23,9 @@ const char *const pm_states[PM_SUSPEND_MAX] = {
[PM_SUSPEND_MEM] = "mem",
};
+/* This is just an arbitrary number */
+#define FREE_PAGE_NUMBER (100)
+
static struct platform_suspend_ops *suspend_ops;
/**
@@ -78,6 +81,7 @@ static int suspend_test(int level)
static int suspend_prepare(void)
{
int error;
+ unsigned int free_pages;
if (!suspend_ops || !suspend_ops->enter)
return -EPERM;
@@ -92,10 +96,24 @@ static int suspend_prepare(void)
if (error)
goto Finish;
- error = suspend_freeze_processes();
+ if (suspend_freeze_processes()) {
+ error = -EAGAIN;
+ goto Thaw;
+ }
+
+ free_pages = global_page_state(NR_FREE_PAGES);
+ if (free_pages < FREE_PAGE_NUMBER) {
+ pr_debug("PM: free some memory\n");
+ shrink_all_memory(FREE_PAGE_NUMBER - free_pages);
+ if (nr_free_pages() < FREE_PAGE_NUMBER) {
+ error = -ENOMEM;
+ printk(KERN_ERR "PM: No enough memory\n");
+ }
+ }
if (!error)
return 0;
+ Thaw:
suspend_thaw_processes();
usermodehelper_enable();
Finish:
next prev parent reply other threads:[~2009-11-02 20:30 UTC|newest]
Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-22 14:22 [PATCH 0/5] Candidate fix for increased number of GFP_ATOMIC failures V2 Mel Gorman
[not found] ` <1256221356-26049-1-git-send-email-mel-wPRd99KPJ+uzQB+pC5nmwQ@public.gmane.org>
2009-10-22 14:22 ` [PATCH 1/5] page allocator: Always wake kswapd when restarting an allocation attempt after direct reclaim failed Mel Gorman
2009-10-22 14:24 ` [PATCH 1/5 Against 2.6.31.4] " Mel Gorman
2009-10-22 14:41 ` [PATCH 1/5] " Pekka Enberg
2009-10-22 15:49 ` Mel Gorman
[not found] ` <1256221356-26049-2-git-send-email-mel-wPRd99KPJ+uzQB+pC5nmwQ@public.gmane.org>
2009-10-26 1:11 ` KOSAKI Motohiro
2009-10-26 7:10 ` David Rientjes
2009-10-27 2:42 ` KOSAKI Motohiro
2009-10-27 12:27 ` Mel Gorman
2009-10-22 14:22 ` [PATCH 2/5] page allocator: Do not allow interrupts to use ALLOC_HARDER Mel Gorman
2009-10-22 16:33 ` Stephan von Krawczynski
[not found] ` <20091022183303.2448942d.skraw-DcQCyzbjH0jQT0dZR+AlfA@public.gmane.org>
2009-10-22 16:37 ` Mel Gorman
[not found] ` <20091022163752.GU11778-wPRd99KPJ+uzQB+pC5nmwQ@public.gmane.org>
2009-10-23 9:57 ` Stephan von Krawczynski
2009-10-24 2:03 ` Christoph Lameter
2009-10-27 15:19 ` Mel Gorman
2009-10-25 12:57 ` Stephan von Krawczynski
2009-10-26 1:15 ` KOSAKI Motohiro
2009-10-24 13:51 ` [PATCH 0/5] Candidate fix for increased number of GFP_ATOMIC failures V2 Frans Pop
2009-10-26 17:37 ` Tobias Oetiker
2009-10-27 15:36 ` Mel Gorman
2009-10-22 14:22 ` [PATCH 3/5] vmscan: Force kswapd to take notice faster when high-order watermarks are being hit Mel Gorman
2009-10-27 2:42 ` KOSAKI Motohiro
2009-10-22 14:22 ` [PATCH 4/5] page allocator: Pre-emptively wake kswapd when high-order watermarks are hit Mel Gorman
[not found] ` <1256221356-26049-5-git-send-email-mel-wPRd99KPJ+uzQB+pC5nmwQ@public.gmane.org>
2009-10-22 19:41 ` David Rientjes
[not found] ` <alpine.DEB.2.00.0910221227010.21601-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-10-23 9:13 ` Mel Gorman
2009-10-23 9:36 ` David Rientjes
[not found] ` <alpine.DEB.2.00.0910230229010.28109-X6Q0R45D7oAcqpCFd4KODRPsWskHk0ljAL8bYrjMMd8@public.gmane.org>
2009-10-23 11:25 ` Mel Gorman
2009-10-23 11:31 ` Tobias Oetiker
[not found] ` <alpine.DEB.2.00.0910231329550.26462-EjsAmf5DE5zIvOfxy3zmAzgUDZmNtoG9@public.gmane.org>
2009-10-23 13:39 ` Mel Gorman
2009-10-27 2:42 ` KOSAKI Motohiro
[not found] ` <20091026235032.2F78.A69D9226-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2009-10-27 15:26 ` Mel Gorman
2009-10-22 14:22 ` [PATCH 5/5] ONLY-APPLY-IF-STILL-FAILING Revert 373c0a7e, 8aa7e847: Fix congestion_wait() sync/async vs read/write confusion Mel Gorman
2009-10-22 14:25 ` Against 2.6.31.4 [PATCH 5/5] " Mel Gorman
2009-10-22 21:49 ` [PATCH 5/5] ONLY-APPLY-IF-STILL-FAILING " Jens Axboe
2009-10-27 2:42 ` KOSAKI Motohiro
2009-10-27 10:29 ` Frans Pop
2009-10-22 14:47 ` [PATCH 0/5] Candidate fix for increased number of GFP_ATOMIC failures V2 Pekka Enberg
[not found] ` <84144f020910220747nba30d8bkc83c2569da79bd7c-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-10-22 16:03 ` Mel Gorman
2009-10-24 1:52 ` Christoph Lameter
2009-10-24 6:48 ` Pekka Enberg
2009-10-22 15:43 ` reinette chatre
2009-10-27 10:40 ` Mel Gorman
2009-10-27 23:34 ` reinette chatre
2009-10-23 7:31 ` Sven Geggus
2009-10-23 16:58 ` Karol Lewandowski
2009-10-23 21:12 ` Karol Lewandowski
2009-10-24 13:46 ` Mel LKML
[not found] ` <9ec2d7290910240646p75b93c68v6ea1648d628a9660-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-10-28 11:42 ` Karol Lewandowski
[not found] ` <20091028114208.GA14476-nLtalAL5mPp2RxbNQum0x1nzlInOXLuq@public.gmane.org>
2009-10-28 11:59 ` Mel Gorman
[not found] ` <20091028115926.GW8900-wPRd99KPJ+uzQB+pC5nmwQ@public.gmane.org>
2009-10-30 14:23 ` Karol Lewandowski
[not found] ` <20091030142350.GA9343-nLtalAL5mPp2RxbNQum0x1nzlInOXLuq@public.gmane.org>
2009-11-02 20:30 ` Mel Gorman [this message]
[not found] ` <20091102203034.GC22046-wPRd99KPJ+uzQB+pC5nmwQ@public.gmane.org>
2009-11-04 2:03 ` Karol Lewandowski
2009-10-28 12:55 ` Tobi Oetiker
2009-10-24 14:02 ` Sven Geggus
2009-10-27 13:27 ` Mel Gorman
2009-10-26 22:17 ` Frans Pop
2009-10-26 23:45 ` Frans Pop
2009-11-06 6:03 ` Tobias Diedrich
2009-11-06 9:24 ` Mel Gorman
[not found] ` <20091106092447.GC25926@csn.ul.ie>
2009-11-06 11:15 ` Tobias Diedrich
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=20091102203034.GC22046@csn.ul.ie \
--to=mel-wprd99kpj+uzqb+pc5nmwq@public$(echo .)gmane.org \
--cc=bzolnier-Re5JQEeQqe8AvxtiuMwx3w@public$(echo .)gmane.org \
--cc=davem-fT/PcQaiUtIeIZ0/mPfg9Q@public$(echo .)gmane.org \
--cc=elendil-EIBgga6/0yRmR6Xm/wNWPw@public$(echo .)gmane.org \
--cc=gregkh-l3A5Bk7waGM@public$(echo .)gmane.org \
--cc=jens.axboe-QHcLZuEGTsvQT0dZR+AlfA@public$(echo .)gmane.org \
--cc=jkosina-AlSwsSmVLrQ@public$(echo .)gmane.org \
--cc=kalle.valo-X3B1VOXEql0@public$(echo .)gmane.org \
--cc=karol.k.lewandowski-Re5JQEeQqe8AvxtiuMwx3w@public$(echo .)gmane.org \
--cc=kernel-testers-u79uwXL29TY76Z2rM5mHXA@public$(echo .)gmane.org \
--cc=kosaki.motohiro-+CUm20s59erQFUHtdCDX3A@public$(echo .)gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public$(echo .)gmane.org \
--cc=linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public$(echo .)gmane.org \
--cc=linville-2XuSBdqkA4R54TAoqtyWWQ@public$(echo .)gmane.org \
--cc=lists-+AJD3D7QEjjt/htJsj1pd9AswbaBtrod@public$(echo .)gmane.org \
--cc=mohamed.abbas-ral2JQCrhuEAvxtiuMwx3w@public$(echo .)gmane.org \
--cc=netdev-u79uwXL29TY76Z2rM5mHXA@public$(echo .)gmane.org \
--cc=penberg-bbCR+/B0CizivPeTLB3BmA@public$(echo .)gmane.org \
--cc=reinette.chatre-ral2JQCrhuEAvxtiuMwx3w@public$(echo .)gmane.org \
--cc=rientjes-hpIqsD4AKlfQT0dZR+AlfA@public$(echo .)gmane.org \
--cc=rjw-KKrjLPT3xs0@public$(echo .)gmane.org \
--cc=skraw-DcQCyzbjH0jQT0dZR+AlfA@public$(echo .)gmane.org \
--cc=tobi-7K0TWYW2a3pyDzI6CaY1VQ@public$(echo .)gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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