[patch 3/6] mm: cleanup rmap

Nick Piggin
2005-07-26T08:21:51Z

[-- Attachment #1: Type: text/plain, Size: 5 bytes --]

3/6

[-- Attachment #2: mm-cleanup-rmap.patch --]
[-- Type: text/plain, Size: 781 bytes --]

Thanks to Bill Irwin for pointing this out.

Signed-off-by: Nick Piggin <npiggin@suse.de>

Index: linux-2.6/mm/rmap.c
===================================================================
--- linux-2.6.orig/mm/rmap.c
+++ linux-2.6/mm/rmap.c
@@ -448,16 +448,12 @@ void page_add_anon_rmap(struct page *pag

if (atomic_inc_and_test(&page->_mapcount)) {
struct anon_vma *anon_vma = vma->anon_vma;
- pgoff_t index;

BUG_ON(!anon_vma);
anon_vma = (void *) anon_vma + PAGE_MAPPING_ANON;
page->mapping = (struct address_space *) anon_vma;

- index = (address - vma->vm_start) >> PAGE_SHIFT;
- index += vma->vm_pgoff;
- index >>= PAGE_CACHE_SHIFT - PAGE_SHIFT;
- page->index = index;
+ page->index = linear_page_index(vma, address);

inc_page_state(nr_mapped);
}