Messages in this thread | | | Subject | Re: [PATCH] mm: inactive-clean list | From | Peter Zijlstra <> | Date | Wed, 26 Jul 2006 16:45:04 +0200 |
| |
On Wed, 2006-07-26 at 15:04 +0200, Martin Schwidefsky wrote: > On 7/26/06, Peter Zijlstra <a.p.zijlstra@chello.nl> wrote: > > > Hmm, I wonder how the inactive clean list helps in regard to the fast > > > host reclaim > > > scheme. In particular since the memory pressure that triggers the > > > reclaim is in the > > > host, not in the guest. So all pages might be on the active list but > > > the host still > > > wants to be able to discard pages. > > > > > > > I think Rik would want to set all the already unmapped pages to volatile > > state in the hypervisor. > > > > These pages can be dropped without loss of information on the guest > > system since they are all already on a backing-store, be it regular > > files or swap. > > I guessed that as well. It isn't good enough. Consider a guest with a > large (virtual) memory size and a host with a small physical memory > size. The guest will never put any page on the inactive_clean list > because it does not have memory pressure. vmscan will never run. The > host wants to reclaim memory of the guest, but since the > inactive_clean list is empty it will find only stable pages. >
Wouldn't we typically have all free pages > min_free in state U? Also wouldn't all R/O mapped pages not also be V, all R/W mapped pages and unmapped page-cache pages P like you state in your paper.
This patch would just increase the number of V pages with the tail end of the guest LRU, which are typically the pages you would want to evict (perhaps even add 5th guest state to indicate that these V pages are preferable over the others?)
But isn't it so that for the gross over-commit scenario you outline the host OS will have to swap out S pages eventually?
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |