linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] [PATCH 0/3] swsusp: shrink file cache first
@ 2009-02-06  3:11 Johannes Weiner
  2009-02-06  3:11 ` [PATCH 1/3] swsusp: clean up shrink_all_zones() Johannes Weiner
                   ` (2 more replies)
  0 siblings, 3 replies; 43+ messages in thread
From: Johannes Weiner @ 2009-02-06  3:11 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Rafael J. Wysocki, Rik van Riel, linux-kernel, linux-mm

[ grumble.  always check software for new behaviour after upgrade.
  sorry for the mess up :/ ]

Hello!

here are three patches that adjust the memory shrinking code used for
suspend-to-disk.

The first two patches are cleanups only and can probably go in
regardless of the third one.

The third patch changes the shrink_all_memory() logic to drop the file
cache first before touching any mapped files and only then goes for
anon pages.

The reason is that everything not shrunk before suspension has to go
into the image and will be 'prefaulted' before the processes can
resume and the system is usable again, so the image should be small
and contain only pages that are likely to be used right after resume
again.  And this in turn means that the inactive file cache is the
best point to start decimating used memory.

Also, right now, subsequent faults of contiguously mapped files are
likely to perform better than swapin (see
http://kernelnewbies.org/KernelProjects/SwapoutClustering), so not
only file cache is preferred over other pages, but file pages over
anon pages in general.

Testing up to this point shows that the patch does what is intended,
shrinking file cache in favor of anon pages.  But whether the idea is
correct to begin with is a bit hard to quantify and I am still working
on it, so RFC only.

	Hannes


^ permalink raw reply	[flat|nested] 43+ messages in thread

end of thread, other threads:[~2009-04-01 16:05 UTC | newest]

Thread overview: 43+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-02-06  3:11 [PATCH 0/3] [PATCH 0/3] swsusp: shrink file cache first Johannes Weiner
2009-02-06  3:11 ` [PATCH 1/3] swsusp: clean up shrink_all_zones() Johannes Weiner
2009-02-06  3:20   ` KOSAKI Motohiro
2009-02-06  3:11 ` [PATCH 2/3] swsusp: dont fiddle with swappiness Johannes Weiner
2009-02-06  3:21   ` KOSAKI Motohiro
2009-02-06  3:11 ` [PATCH 3/3][RFC] swsusp: shrink file cache first Johannes Weiner
2009-02-06  3:39   ` KOSAKI Motohiro
2009-02-06  4:49     ` Johannes Weiner
2009-02-06  5:59       ` KOSAKI Motohiro
2009-02-06 12:24         ` Johannes Weiner
2009-02-06 13:35           ` MinChan Kim
2009-02-06 17:15             ` MinChan Kim
2009-02-06 23:37               ` Johannes Weiner
2009-02-09 19:43               ` [patch] vmscan: rename sc.may_swap to may_unmap Johannes Weiner
2009-02-09 23:02                 ` MinChan Kim
2009-02-10 10:00                   ` KOSAKI Motohiro
2009-03-27  6:19                 ` [PATCH] vmscan: memcg needs may_swap (Re: [patch] vmscan: rename sc.may_swap to may_unmap) Daisuke Nishimura
2009-03-27  6:30                   ` KAMEZAWA Hiroyuki
2009-03-29 23:45                     ` KOSAKI Motohiro
2009-03-31  0:18                       ` Daisuke Nishimura
2009-03-31  1:26                       ` Minchan Kim
2009-03-31  1:42                         ` KAMEZAWA Hiroyuki
2009-03-31  1:48                           ` KOSAKI Motohiro
2009-04-01  4:09                             ` Johannes Weiner
2009-04-01  5:08                               ` Daisuke Nishimura
2009-04-01  9:04                               ` KAMEZAWA Hiroyuki
2009-04-01  9:11                                 ` KOSAKI Motohiro
2009-04-01  9:49                                 ` Johannes Weiner
2009-04-01  9:55                                   ` KOSAKI Motohiro
2009-04-01 16:03                                     ` Johannes Weiner
2009-03-31  1:52                         ` Daisuke Nishimura
2009-02-06 21:00       ` [PATCH 3/3][RFC] swsusp: shrink file cache first Andrew Morton
2009-02-06 23:27         ` Johannes Weiner
2009-02-07 17:23           ` Rafael J. Wysocki
2009-02-08 20:56             ` Johannes Weiner
2009-02-07  4:41         ` Nigel Cunningham
2009-02-07 16:51         ` KOSAKI Motohiro
2009-02-07 21:20           ` Nigel Cunningham
2009-02-27 13:27         ` Pavel Machek
2009-03-01 10:37           ` KOSAKI Motohiro
2009-02-06  8:03   ` MinChan Kim
2009-02-06 10:06     ` MinChan Kim
2009-02-06 11:50       ` Johannes Weiner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).