From: Martin Schwidefsky Date: Fri, 17 Feb 2012 09:29:21 +0000 (+0100) Subject: [S390] incorrect PageTables counter for kvm page tables X-Git-Tag: v3.3-rc5~31^2~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2320c5793790fcda80e6dcc088dbda86040235e5;p=platform%2Fkernel%2Flinux-3.10.git [S390] incorrect PageTables counter for kvm page tables The page_table_free_pgste function is used for kvm processes to free page tables that have the pgste extension. It calls pgtable_page_ctor instead of pgtable_page_dtor which increases NR_PAGETABLE instead of decreasing it. Signed-off-by: Martin Schwidefsky --- diff --git a/arch/s390/mm/pgtable.c b/arch/s390/mm/pgtable.c index 9a4d02f..51b0738e 100644 --- a/arch/s390/mm/pgtable.c +++ b/arch/s390/mm/pgtable.c @@ -574,7 +574,7 @@ static inline void page_table_free_pgste(unsigned long *table) page = pfn_to_page(__pa(table) >> PAGE_SHIFT); mp = (struct gmap_pgtable *) page->index; BUG_ON(!list_empty(&mp->mapper)); - pgtable_page_ctor(page); + pgtable_page_dtor(page); atomic_set(&page->_mapcount, -1); kfree(mp); __free_page(page);