This is the second part of a patch posted to patch 1/6.
Index: git-linus/mm/rmap.c
===================================================================
--- git-linus.orig/mm/rmap.c 2008-01-30 11:55:56.000000000 -0600
+++ git-linus/mm/rmap.c 2008-01-30 12:01:28.000000000 -0600
@@ -476,8 +476,10 @@ int page_mkclean(struct page *page)
struct address_space *mapping = page_mapping(page);
if (mapping) {
ret = page_mkclean_file(mapping, page);
- if (unlikely(PageExternalRmap(page)))
+ if (unlikely(PageExternalRmap(page))) {
mmu_rmap_notifier(invalidate_page, page);
+ ClearPageExported(page);
+ }
if (page_test_dirty(page)) {
page_clear_dirty(page);
ret = 1;
@@ -980,8 +982,10 @@ int try_to_unmap(struct page *page, int
else
ret = try_to_unmap_file(page, migration);
- if (unlikely(PageExternalRmap(page)))
+ if (unlikely(PageExternalRmap(page))) {
mmu_rmap_notifier(invalidate_page, page);
+ ClearPageExported(page);
+ }
if (!page_mapped(page))
ret = SWAP_SUCCESS;
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
kvm-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/kvm-devel