[patch 00/22 -v2] Generic show_mem() - Kernel

This is a discussion on [patch 00/22 -v2] Generic show_mem() - Kernel ; Remove arch-specific show_mem() in favor of the generic version. This also removes the following redundant information display: - free pages, printed by show_free_areas() where show_mem() calls show_free_areas(). Signed-off-by: Johannes Weiner CC: David Howells --- Index: tree-linus/arch/frv/Kconfig ================================================== ================= --- tree-linus.orig/arch/frv/Kconfig ...

+ Reply to Thread
Results 1 to 20 of 20

Thread: [patch 00/22 -v2] Generic show_mem()

  1. [patch 07/22 -v2] frv: Use generic show_mem()

    Remove arch-specific show_mem() in favor of the generic version.

    This also removes the following redundant information display:

    - free pages, printed by show_free_areas()

    where show_mem() calls show_free_areas().

    Signed-off-by: Johannes Weiner
    CC: David Howells
    ---

    Index: tree-linus/arch/frv/Kconfig
    ================================================== =================
    --- tree-linus.orig/arch/frv/Kconfig
    +++ tree-linus/arch/frv/Kconfig
    @@ -6,7 +6,6 @@ config FRV
    bool
    default y
    select HAVE_IDE
    - select HAVE_ARCH_SHOW_MEM

    config ZONE_DMA
    bool
    Index: tree-linus/arch/frv/mm/init.c
    ================================================== =================
    --- tree-linus.orig/arch/frv/mm/init.c
    +++ tree-linus/arch/frv/mm/init.c
    @@ -60,37 +60,6 @@ unsigned long empty_zero_page;

    /************************************************** ***************************/
    /*
    - *
    - */
    -void show_mem(void)
    -{
    - unsigned long i;
    - int free = 0, total = 0, reserved = 0, shared = 0;
    -
    - printk("\nMem-info:\n");
    - show_free_areas();
    - i = max_mapnr;
    - while (i-- > 0) {
    - struct page *page = &mem_map[i];
    -
    - total++;
    - if (PageReserved(page))
    - reserved++;
    - else if (!page_count(page))
    - free++;
    - else
    - shared += page_count(page) - 1;
    - }
    -
    - printk("%d pages of RAM\n",total);
    - printk("%d free pages\n",free);
    - printk("%d reserved pages\n",reserved);
    - printk("%d pages shared\n",shared);
    -
    -} /* end show_mem() */
    -
    -/************************************************** ***************************/
    -/*
    * paging_init() continues the virtual memory environment setup which
    * was begun by the code in arch/head.S.
    * The parameters are pointers to where to stick the starting and ending

    --

    --
    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/

  2. [patch 20/22 -v2] v850: Use generic show_mem()

    Remove arch-specific show_mem() in favor of the generic version.

    This also removes the following redundant information display:

    - free pages, printed in show_free_areas()
    - pages in swapcache, printed by show_swap_cache_info()

    where show_mem() calls show_free_areas(), which calls
    show_swap_cache_info().

    Signed-off-by: Johannes Weiner
    CC: Miles Bader
    ---

    Index: tree-linus/arch/v850/Kconfig
    ================================================== =================
    --- tree-linus.orig/arch/v850/Kconfig
    +++ tree-linus/arch/v850/Kconfig
    @@ -79,7 +79,6 @@ config V850
    bool
    default y
    select HAVE_IDE
    - select HAVE_ARCH_SHOW_MEM

    menu "Processor type and features"

    Index: tree-linus/arch/v850/kernel/setup.c
    ================================================== =================
    --- tree-linus.orig/arch/v850/kernel/setup.c
    +++ tree-linus/arch/v850/kernel/setup.c
    @@ -298,33 +298,3 @@ init_mem_alloc (unsigned long ram_start,
    free_area_init_node (0, NODE_DATA(0), zones_size,
    ADDR_TO_PAGE (PAGE_OFFSET), 0);
    }
    -
    -
    -
    -/* Taken from m68knommu */
    -void show_mem(void)
    -{
    - unsigned long i;
    - int free = 0, total = 0, reserved = 0, shared = 0;
    - int cached = 0;
    -
    - printk(KERN_INFO "\nMem-info:\n");
    - show_free_areas();
    - i = max_mapnr;
    - while (i-- > 0) {
    - total++;
    - if (PageReserved(mem_map+i))
    - reserved++;
    - else if (PageSwapCache(mem_map+i))
    - cached++;
    - else if (!page_count(mem_map+i))
    - free++;
    - else
    - shared += page_count(mem_map+i) - 1;
    - }
    - printk(KERN_INFO "%d pages of RAM\n",total);
    - printk(KERN_INFO "%d free pages\n",free);
    - printk(KERN_INFO "%d reserved pages\n",reserved);
    - printk(KERN_INFO "%d pages shared\n",shared);
    - printk(KERN_INFO "%d pages swap cached\n",cached);
    -}

    --

    --
    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/

  3. [patch 18/22 -v2] sparc64: Use generic show_mem()

    Remove arch-specific show_mem() in favor of the generic version.

    This also removes the following redundant information display:

    - pages in swapcache, printed by show_swap_cache_info()
    - dirty pages, writeback pages, mapped pages, slab pages,
    pagetables pages, printed by show_free_areas()

    where show_mem() calls show_free_areas(), which calls
    show_swap_cache_info().

    Signed-off-by: Johannes Weiner
    CC: David S. Miller
    ---

    Index: tree-linus/arch/sparc64/Kconfig
    ================================================== =================
    --- tree-linus.orig/arch/sparc64/Kconfig
    +++ tree-linus/arch/sparc64/Kconfig
    @@ -11,7 +11,6 @@ config SPARC
    select HAVE_OPROFILE
    select HAVE_KPROBES
    select HAVE_KRETPROBES
    - select HAVE_ARCH_SHOW_MEM

    config SPARC64
    bool
    Index: tree-linus/arch/sparc64/mm/init.c
    ================================================== =================
    --- tree-linus.orig/arch/sparc64/mm/init.c
    +++ tree-linus/arch/sparc64/mm/init.c
    @@ -391,49 +391,6 @@ void __kprobes flush_icache_range(unsign
    }
    }

    -void show_mem(void)
    -{
    - unsigned long total = 0, reserved = 0;
    - unsigned long shared = 0, cached = 0;
    - pg_data_t *pgdat;
    -
    - printk(KERN_INFO "Mem-info:\n");
    - show_free_areas();
    - for_each_online_pgdat(pgdat) {
    - unsigned long i, flags;
    -
    - pgdat_resize_lock(pgdat, &flags);
    - for (i = 0; i < pgdat->node_spanned_pages; i++) {
    - struct page *page = pgdat_page_nr(pgdat, i);
    - total++;
    - if (PageReserved(page))
    - reserved++;
    - else if (PageSwapCache(page))
    - cached++;
    - else if (page_count(page))
    - shared += page_count(page) - 1;
    - }
    - pgdat_resize_unlock(pgdat, &flags);
    - }
    -
    - printk(KERN_INFO "%lu pages of RAM\n", total);
    - printk(KERN_INFO "%lu reserved pages\n", reserved);
    - printk(KERN_INFO "%lu pages shared\n", shared);
    - printk(KERN_INFO "%lu pages swap cached\n", cached);
    -
    - printk(KERN_INFO "%lu pages dirty\n",
    - global_page_state(NR_FILE_DIRTY));
    - printk(KERN_INFO "%lu pages writeback\n",
    - global_page_state(NR_WRITEBACK));
    - printk(KERN_INFO "%lu pages mapped\n",
    - global_page_state(NR_FILE_MAPPED));
    - printk(KERN_INFO "%lu pages slab\n",
    - global_page_state(NR_SLAB_RECLAIMABLE) +
    - global_page_state(NR_SLAB_UNRECLAIMABLE));
    - printk(KERN_INFO "%lu pages pagetables\n",
    - global_page_state(NR_PAGETABLE));
    -}
    -
    void mmu_info(struct seq_file *m)
    {
    if (tlb_type == cheetah)

    --

    --
    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/

  4. [patch 19/22 -v2] um: Use generic show_mem()

    Remove arch-specific show_mem() in favor of the generic version.

    This also removes the following redundant information display:

    - pages in swapcache, printed by show_swap_cache_info()

    where show_mem() calls show_free_areas(), which calls
    show_swap_cache_info().

    Signed-off-by: Johannes Weiner
    CC: Jeff Dike
    ---

    Index: tree-linus/arch/um/Kconfig
    ================================================== =================
    --- tree-linus.orig/arch/um/Kconfig
    +++ tree-linus/arch/um/Kconfig
    @@ -11,7 +11,6 @@ config GENERIC_HARDIRQS
    config UML
    bool
    default y
    - select HAVE_ARCH_SHOW_MEM

    config MMU
    bool
    Index: tree-linus/arch/um/kernel/mem.c
    ================================================== =================
    --- tree-linus.orig/arch/um/kernel/mem.c
    +++ tree-linus/arch/um/kernel/mem.c
    @@ -295,35 +295,6 @@ void free_initrd_mem(unsigned long start
    }
    #endif

    -void show_mem(void)
    -{
    - int pfn, total = 0, reserved = 0;
    - int shared = 0, cached = 0;
    - int high_mem = 0;
    - struct page *page;
    -
    - printk(KERN_INFO "Mem-info:\n");
    - show_free_areas();
    - pfn = max_mapnr;
    - while (pfn-- > 0) {
    - page = pfn_to_page(pfn);
    - total++;
    - if (PageHighMem(page))
    - high_mem++;
    - if (PageReserved(page))
    - reserved++;
    - else if (PageSwapCache(page))
    - cached++;
    - else if (page_count(page))
    - shared += page_count(page) - 1;
    - }
    - printk(KERN_INFO "%d pages of RAM\n", total);
    - printk(KERN_INFO "%d pages of HIGHMEM\n", high_mem);
    - printk(KERN_INFO "%d reserved pages\n", reserved);
    - printk(KERN_INFO "%d pages shared\n", shared);
    - printk(KERN_INFO "%d pages swap cached\n", cached);
    -}
    -
    /* Allocate and free page tables. */

    pgd_t *pgd_alloc(struct mm_struct *mm)

    --

    --
    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/

  5. [patch 00/22 -v2] Generic show_mem()

    Every arch implements its own show_mem() function. Most of them share
    quite some code, some of them are completely identical.

    This series implements a generic version of this function and migrates
    almost all architectures to it.

    ---
    version 2:
    - Fix kbuild bits as suggested by Heiko Carstens
    - Include quicklist info as suggested by Paul Mundt
    - Extend changelogs by info on removal of redundant output

    Note: This patchset is based on the `Remove redundant display of free
    swap space from show_mem()' series.

    arch/alpha/mm/init.c | 29 -----------------------
    arch/alpha/mm/numa.c | 34 ---------------------------
    arch/arm/Kconfig | 1 +
    arch/avr32/mm/init.c | 39 -------------------------------
    arch/blackfin/mm/init.c | 27 ----------------------
    arch/cris/mm/init.c | 30 ------------------------
    arch/frv/mm/init.c | 31 -------------------------
    arch/h8300/mm/init.c | 28 -----------------------
    arch/ia64/Kconfig | 1 +
    arch/m32r/mm/init.c | 35 ----------------------------
    arch/m68k/mm/init.c | 30 ------------------------
    arch/m68knommu/mm/init.c | 28 -----------------------
    arch/mips/mm/Makefile | 3 +-
    arch/mips/mm/pgtable.c | 36 -----------------------------
    arch/mn10300/mm/pgtable.c | 27 ----------------------
    arch/parisc/Kconfig | 1 +
    arch/powerpc/mm/mem.c | 39 -------------------------------
    arch/ppc/mm/init.c | 30 ------------------------
    arch/s390/mm/init.c | 35 ----------------------------
    arch/sh/mm/init.c | 40 --------------------------------
    arch/sparc/Kconfig | 1 +
    arch/sparc64/mm/init.c | 43 -----------------------------------
    arch/um/kernel/mem.c | 29 -----------------------
    arch/v850/kernel/setup.c | 30 ------------------------
    arch/x86/mm/init_64.c | 37 ------------------------------
    arch/x86/mm/pgtable_32.c | 47 --------------------------------------
    arch/xtensa/mm/init.c | 26 ---------------------
    mm/Kconfig | 3 ++
    mm/page_alloc.c | 55 +++++++++++++++++++++++++++++++++++++++++++++
    mm/swap_state.c | 3 +-
    30 files changed, 65 insertions(+), 733 deletions(-)

    --
    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/

  6. [patch 14/22 -v2] powerpc: Use generic show_mem()

    Remove arch-specific show_mem() in favor of the generic version.

    This also removes the following redundant information display:

    - pages in swapcache, printed by show_swap_cache_info()

    where show_mem() calls show_free_areas(), which calls
    show_swap_cache_info().

    Signed-off-by: Johannes Weiner
    CC: Paul Mackerras
    ---

    Index: tree-linus/arch/powerpc/Kconfig
    ================================================== =================
    --- tree-linus.orig/arch/powerpc/Kconfig
    +++ tree-linus/arch/powerpc/Kconfig
    @@ -91,7 +91,6 @@ config PPC
    select HAVE_OPROFILE
    select HAVE_KPROBES
    select HAVE_KRETPROBES
    - select HAVE_ARCH_SHOW_MEM

    config EARLY_PRINTK
    bool
    Index: tree-linus/arch/powerpc/mm/mem.c
    ================================================== =================
    --- tree-linus.orig/arch/powerpc/mm/mem.c
    +++ tree-linus/arch/powerpc/mm/mem.c
    @@ -164,45 +164,6 @@ walk_memory_resource(unsigned long start

    #endif /* CONFIG_MEMORY_HOTPLUG */

    -void show_mem(void)
    -{
    - unsigned long total = 0, reserved = 0;
    - unsigned long shared = 0, cached = 0;
    - unsigned long highmem = 0;
    - struct page *page;
    - pg_data_t *pgdat;
    - unsigned long i;
    -
    - printk("Mem-info:\n");
    - show_free_areas();
    - for_each_online_pgdat(pgdat) {
    - unsigned long flags;
    - pgdat_resize_lock(pgdat, &flags);
    - for (i = 0; i < pgdat->node_spanned_pages; i++) {
    - if (!pfn_valid(pgdat->node_start_pfn + i))
    - continue;
    - page = pgdat_page_nr(pgdat, i);
    - total++;
    - if (PageHighMem(page))
    - highmem++;
    - if (PageReserved(page))
    - reserved++;
    - else if (PageSwapCache(page))
    - cached++;
    - else if (page_count(page))
    - shared += page_count(page) - 1;
    - }
    - pgdat_resize_unlock(pgdat, &flags);
    - }
    - printk("%ld pages of RAM\n", total);
    -#ifdef CONFIG_HIGHMEM
    - printk("%ld pages of HIGHMEM\n", highmem);
    -#endif
    - printk("%ld reserved pages\n", reserved);
    - printk("%ld pages shared\n", shared);
    - printk("%ld pages swap cached\n", cached);
    -}
    -
    /*
    * Initialize the bootmem system and give it all the memory we
    * have available. If we are using highmem, we only put the

    --

    --
    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/

  7. [patch 05/22 -v2] blackfin: Use generic show_mem()

    Remove arch-specific show_mem() in favor of the generic version.

    This also removes the following redundant information display:

    - free pages, printed by show_free_areas()
    - pages in swapcache, printed by show_swap_cache_info()

    where show_mem() calls show_free_areas(), which calls
    show_swap_cache_info().

    Signed-off-by: Johannes Weiner
    CC: Bryan Wu
    ---

    Index: tree-linus/arch/blackfin/Kconfig
    ================================================== =================
    --- tree-linus.orig/arch/blackfin/Kconfig
    +++ tree-linus/arch/blackfin/Kconfig
    @@ -26,7 +26,6 @@ config BLACKFIN
    default y
    select HAVE_IDE
    select HAVE_OPROFILE
    - select HAVE_ARCH_SHOW_MEM

    config ZONE_DMA
    bool
    Index: tree-linus/arch/blackfin/mm/init.c
    ================================================== =================
    --- tree-linus.orig/arch/blackfin/mm/init.c
    +++ tree-linus/arch/blackfin/mm/init.c
    @@ -53,33 +53,6 @@ static unsigned long empty_bad_page;

    unsigned long empty_zero_page;

    -void show_mem(void)
    -{
    - unsigned long i;
    - int free = 0, total = 0, reserved = 0, shared = 0;
    -
    - int cached = 0;
    - printk(KERN_INFO "Mem-info:\n");
    - show_free_areas();
    - i = max_mapnr;
    - while (i-- > 0) {
    - total++;
    - if (PageReserved(mem_map + i))
    - reserved++;
    - else if (PageSwapCache(mem_map + i))
    - cached++;
    - else if (!page_count(mem_map + i))
    - free++;
    - else
    - shared += page_count(mem_map + i) - 1;
    - }
    - printk(KERN_INFO "%d pages of RAM\n", total);
    - printk(KERN_INFO "%d free pages\n", free);
    - printk(KERN_INFO "%d reserved pages\n", reserved);
    - printk(KERN_INFO "%d pages shared\n", shared);
    - printk(KERN_INFO "%d pages swap cached\n", cached);
    -}
    -
    /*
    * paging_init() continues the virtual memory environment setup which
    * was begun by the code in arch/head.S.

    --

    --
    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/

  8. [patch 21/22 -v2] x86: Use generic show_mem()

    Remove arch-specific show_mem() in favor of the generic version.

    This also removes the following redundant information display:

    - pages in swapcache, printed by show_swap_cache_info()
    - dirty pages, writeback pages, mapped pages, slab pages,
    pagetable pages, printed by show_free_areas()

    where show_mem() calls show_free_areas(), which calls
    show_swap_cache_info().

    Signed-off-by: Johannes Weiner
    Acked-by: Ingo Molnar
    ---

    Index: tree-linus/arch/x86/Kconfig
    ================================================== =================
    --- tree-linus.orig/arch/x86/Kconfig
    +++ tree-linus/arch/x86/Kconfig
    @@ -23,7 +23,7 @@ config X86
    select HAVE_KPROBES
    select HAVE_KRETPROBES
    select HAVE_KVM if ((X86_32 && !X86_VOYAGER && !X86_VISWS && !X86_NUMAQ) || X86_64)
    - select HAVE_ARCH_SHOW_MEM
    +

    config GENERIC_LOCKBREAK
    def_bool n
    Index: tree-linus/arch/x86/mm/pgtable_32.c
    ================================================== =================
    --- tree-linus.orig/arch/x86/mm/pgtable_32.c
    +++ tree-linus/arch/x86/mm/pgtable_32.c
    @@ -24,53 +24,6 @@
    #include
    #include

    -void show_mem(void)
    -{
    - int total = 0, reserved = 0;
    - int shared = 0, cached = 0;
    - int highmem = 0;
    - struct page *page;
    - pg_data_t *pgdat;
    - unsigned long i;
    - unsigned long flags;
    -
    - printk(KERN_INFO "Mem-info:\n");
    - show_free_areas();
    - for_each_online_pgdat(pgdat) {
    - pgdat_resize_lock(pgdat, &flags);
    - for (i = 0; i < pgdat->node_spanned_pages; ++i) {
    - if (unlikely(i % MAX_ORDER_NR_PAGES == 0))
    - touch_nmi_watchdog();
    - page = pgdat_page_nr(pgdat, i);
    - total++;
    - if (PageHighMem(page))
    - highmem++;
    - if (PageReserved(page))
    - reserved++;
    - else if (PageSwapCache(page))
    - cached++;
    - else if (page_count(page))
    - shared += page_count(page) - 1;
    - }
    - pgdat_resize_unlock(pgdat, &flags);
    - }
    - printk(KERN_INFO "%d pages of RAM\n", total);
    - printk(KERN_INFO "%d pages of HIGHMEM\n", highmem);
    - printk(KERN_INFO "%d reserved pages\n", reserved);
    - printk(KERN_INFO "%d pages shared\n", shared);
    - printk(KERN_INFO "%d pages swap cached\n", cached);
    -
    - printk(KERN_INFO "%lu pages dirty\n", global_page_state(NR_FILE_DIRTY));
    - printk(KERN_INFO "%lu pages writeback\n",
    - global_page_state(NR_WRITEBACK));
    - printk(KERN_INFO "%lu pages mapped\n", global_page_state(NR_FILE_MAPPED));
    - printk(KERN_INFO "%lu pages slab\n",
    - global_page_state(NR_SLAB_RECLAIMABLE) +
    - global_page_state(NR_SLAB_UNRECLAIMABLE));
    - printk(KERN_INFO "%lu pages pagetables\n",
    - global_page_state(NR_PAGETABLE));
    -}
    -
    /*
    * Associate a virtual page frame with a given physical page frame
    * and protection flags for that frame.
    Index: tree-linus/arch/x86/mm/init_64.c
    ================================================== =================
    --- tree-linus.orig/arch/x86/mm/init_64.c
    +++ tree-linus/arch/x86/mm/init_64.c
    @@ -60,43 +60,6 @@ DEFINE_PER_CPU(struct mmu_gather, mmu_ga
    * around without checking the pgd every time.
    */

    -void show_mem(void)
    -{
    - long i, total = 0, reserved = 0;
    - long shared = 0, cached = 0;
    - struct page *page;
    - pg_data_t *pgdat;
    -
    - printk(KERN_INFO "Mem-info:\n");
    - show_free_areas();
    - for_each_online_pgdat(pgdat) {
    - for (i = 0; i < pgdat->node_spanned_pages; ++i) {
    - /*
    - * This loop can take a while with 256 GB and
    - * 4k pages so defer the NMI watchdog:
    - */
    - if (unlikely(i % MAX_ORDER_NR_PAGES == 0))
    - touch_nmi_watchdog();
    -
    - if (!pfn_valid(pgdat->node_start_pfn + i))
    - continue;
    -
    - page = pfn_to_page(pgdat->node_start_pfn + i);
    - total++;
    - if (PageReserved(page))
    - reserved++;
    - else if (PageSwapCache(page))
    - cached++;
    - else if (page_count(page))
    - shared += page_count(page) - 1;
    - }
    - }
    - printk(KERN_INFO "%lu pages of RAM\n", total);
    - printk(KERN_INFO "%lu reserved pages\n", reserved);
    - printk(KERN_INFO "%lu pages shared\n", shared);
    - printk(KERN_INFO "%lu pages swap cached\n", cached);
    -}
    -
    int after_bootmem;

    static __init void *spp_getpage(void)

    --

    --
    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/

  9. [patch 03/22 -v2] alpha: Use generic show_mem()

    Remove arch-specific show_mem() in favor of the generic version.

    This also removes the following redundant information display:

    - free pages, printed by show_free_areas()
    - pages in swapcache, printed by show_swap_cache_info()

    where show_mem() calls show_free_areas(), which calls
    show_swap_cache_info().

    Signed-off-by: Johannes Weiner
    CC: Richard Henderson
    ---

    Index: tree-linus/arch/alpha/Kconfig
    ================================================== =================
    --- tree-linus.orig/arch/alpha/Kconfig
    +++ tree-linus/arch/alpha/Kconfig
    @@ -7,7 +7,6 @@ config ALPHA
    default y
    select HAVE_IDE
    select HAVE_OPROFILE
    - select HAVE_ARCH_SHOW_MEM
    help
    The Alpha is a 64-bit general-purpose processor designed and
    marketed by the Digital Equipment Corporation of blessed memory,
    Index: tree-linus/arch/alpha/mm/init.c
    ================================================== =================
    --- tree-linus.orig/arch/alpha/mm/init.c
    +++ tree-linus/arch/alpha/mm/init.c
    @@ -94,35 +94,6 @@ __bad_page(void)
    return pte_mkdirty(mk_pte(virt_to_page(EMPTY_PGE), PAGE_SHARED));
    }

    -#ifndef CONFIG_DISCONTIGMEM
    -void
    -show_mem(void)
    -{
    - long i,free = 0,total = 0,reserved = 0;
    - long shared = 0, cached = 0;
    -
    - printk("\nMem-info:\n");
    - show_free_areas();
    - i = max_mapnr;
    - while (i-- > 0) {
    - total++;
    - if (PageReserved(mem_map+i))
    - reserved++;
    - else if (PageSwapCache(mem_map+i))
    - cached++;
    - else if (!page_count(mem_map+i))
    - free++;
    - else
    - shared += page_count(mem_map + i) - 1;
    - }
    - printk("%ld pages of RAM\n",total);
    - printk("%ld free pages\n",free);
    - printk("%ld reserved pages\n",reserved);
    - printk("%ld pages shared\n",shared);
    - printk("%ld pages swap cached\n",cached);
    -}
    -#endif
    -
    static inline unsigned long
    load_PCB(struct pcb_struct *pcb)
    {
    Index: tree-linus/arch/alpha/mm/numa.c
    ================================================== =================
    --- tree-linus.orig/arch/alpha/mm/numa.c
    +++ tree-linus/arch/alpha/mm/numa.c
    @@ -359,37 +359,3 @@ void __init mem_init(void)
    mem_stress();
    #endif
    }
    -
    -void
    -show_mem(void)
    -{
    - long i,free = 0,total = 0,reserved = 0;
    - long shared = 0, cached = 0;
    - int nid;
    -
    - printk("\nMem-info:\n");
    - show_free_areas();
    - for_each_online_node(nid) {
    - unsigned long flags;
    - pgdat_resize_lock(NODE_DATA(nid), &flags);
    - i = node_spanned_pages(nid);
    - while (i-- > 0) {
    - struct page *page = nid_page_nr(nid, i);
    - total++;
    - if (PageReserved(page))
    - reserved++;
    - else if (PageSwapCache(page))
    - cached++;
    - else if (!page_count(page))
    - free++;
    - else
    - shared += page_count(page) - 1;
    - }
    - pgdat_resize_unlock(NODE_DATA(nid), &flags);
    - }
    - printk("%ld pages of RAM\n",total);
    - printk("%ld free pages\n",free);
    - printk("%ld reserved pages\n",reserved);
    - printk("%ld pages shared\n",shared);
    - printk("%ld pages swap cached\n",cached);
    -}

    --

    --
    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/

  10. [patch 16/22 -v2] s390: Use generic show_mem()

    Remove arch-specific show_mem() in favor of the generic version.

    This also removes the following redundant information display:

    - pages in swapcache, printed by show_swap_cache_info()
    - dirty pages, writeback pages, mapped pages, slab pages,
    pagetable pages, printed by show_free_areas()

    where show_mem() calls show_free_areas(), which calls
    show_swap_cache_info().

    Signed-off-by: Johannes Weiner
    Acked-by: Heiko Carstens
    ---

    Index: tree-linus/arch/s390/Kconfig
    ================================================== =================
    --- tree-linus.orig/arch/s390/Kconfig
    +++ tree-linus/arch/s390/Kconfig
    @@ -62,7 +62,6 @@ config S390
    select HAVE_OPROFILE
    select HAVE_KPROBES
    select HAVE_KRETPROBES
    - select HAVE_ARCH_SHOW_MEM

    source "init/Kconfig"

    Index: tree-linus/arch/s390/mm/init.c
    ================================================== =================
    --- tree-linus.orig/arch/s390/mm/init.c
    +++ tree-linus/arch/s390/mm/init.c
    @@ -42,41 +42,6 @@ DEFINE_PER_CPU(struct mmu_gather, mmu_ga
    pgd_t swapper_pg_dir[PTRS_PER_PGD] __attribute__((__aligned__(PAGE_SIZE)));
    char empty_zero_page[PAGE_SIZE] __attribute__((__aligned__(PAGE_SIZE)));

    -void show_mem(void)
    -{
    - int i, total = 0, reserved = 0;
    - int shared = 0, cached = 0;
    - struct page *page;
    -
    - printk("Mem-info:\n");
    - show_free_areas();
    - i = max_mapnr;
    - while (i-- > 0) {
    - if (!pfn_valid(i))
    - continue;
    - page = pfn_to_page(i);
    - total++;
    - if (PageReserved(page))
    - reserved++;
    - else if (PageSwapCache(page))
    - cached++;
    - else if (page_count(page))
    - shared += page_count(page) - 1;
    - }
    - printk("%d pages of RAM\n", total);
    - printk("%d reserved pages\n", reserved);
    - printk("%d pages shared\n", shared);
    - printk("%d pages swap cached\n", cached);
    -
    - printk("%lu pages dirty\n", global_page_state(NR_FILE_DIRTY));
    - printk("%lu pages writeback\n", global_page_state(NR_WRITEBACK));
    - printk("%lu pages mapped\n", global_page_state(NR_FILE_MAPPED));
    - printk("%lu pages slab\n",
    - global_page_state(NR_SLAB_RECLAIMABLE) +
    - global_page_state(NR_SLAB_UNRECLAIMABLE));
    - printk("%lu pages pagetables\n", global_page_state(NR_PAGETABLE));
    -}
    -
    static void __init setup_ro_region(void)
    {
    pgd_t *pgd;

    --

    --
    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/

  11. [patch 08/22 -v2] h8300: Use generic show_mem()

    Remove arch-specific show_mem() in favor of the generic version.

    This also removes the following redundant information display:

    - free pages, printed by show_free_areas()
    - pages in swapcache, printed by show_swap_cache_info()

    where show_mem() calls show_free_areas(), which calls
    show_swap_cache_info().

    Signed-off-by: Johannes Weiner
    ---

    Index: tree-linus/arch/h8300/Kconfig
    ================================================== =================
    --- tree-linus.orig/arch/h8300/Kconfig
    +++ tree-linus/arch/h8300/Kconfig
    @@ -9,7 +9,6 @@ config H8300
    bool
    default y
    select HAVE_IDE
    - select HAVE_ARCH_SHOW_MEM

    config MMU
    bool
    Index: tree-linus/arch/h8300/mm/init.c
    ================================================== =================
    --- tree-linus.orig/arch/h8300/mm/init.c
    +++ tree-linus/arch/h8300/mm/init.c
    @@ -64,33 +64,6 @@ unsigned long empty_zero_page;

    extern unsigned long rom_length;

    -void show_mem(void)
    -{
    - unsigned long i;
    - int free = 0, total = 0, reserved = 0, shared = 0;
    - int cached = 0;
    -
    - printk("\nMem-info:\n");
    - show_free_areas();
    - i = max_mapnr;
    - while (i-- > 0) {
    - total++;
    - if (PageReserved(mem_map+i))
    - reserved++;
    - else if (PageSwapCache(mem_map+i))
    - cached++;
    - else if (!page_count(mem_map+i))
    - free++;
    - else
    - shared += page_count(mem_map+i) - 1;
    - }
    - printk("%d pages of RAM\n",total);
    - printk("%d free pages\n",free);
    - printk("%d reserved pages\n",reserved);
    - printk("%d pages shared\n",shared);
    - printk("%d pages swap cached\n",cached);
    -}
    -
    extern unsigned long memory_start;
    extern unsigned long memory_end;

    @@ -228,4 +201,3 @@ free_initmem()
    (int)(addr - PAGE_SIZE));
    #endif
    }
    -

    --

    --
    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/

  12. [patch 06/22 -v2] cris: Use generic show_mem()

    Remove arch-specific show_mem() in favor of the generic version.

    This also removes the following redundant information display:

    - free pages, printed by show_free_areas()
    - pages in swapcache, printed by show_swap_cache_info()

    where show_mem() calls show_free_areas(), which calls
    show_swap_cache_info().

    Signed-off-by: Johannes Weiner
    CC: Mikael Starvik
    ---

    Index: tree-linus/arch/cris/Kconfig
    ================================================== =================
    --- tree-linus.orig/arch/cris/Kconfig
    +++ tree-linus/arch/cris/Kconfig
    @@ -55,7 +55,6 @@ config CRIS
    bool
    default y
    select HAVE_IDE
    - select HAVE_ARCH_SHOW_MEM

    config HZ
    int
    Index: tree-linus/arch/cris/mm/init.c
    ================================================== =================
    --- tree-linus.orig/arch/cris/mm/init.c
    +++ tree-linus/arch/cris/mm/init.c
    @@ -19,36 +19,6 @@ unsigned long empty_zero_page;
    extern char _stext, _edata, _etext; /* From linkerscript */
    extern char __init_begin, __init_end;

    -void
    -show_mem(void)
    -{
    - int i,free = 0,total = 0,cached = 0, reserved = 0, nonshared = 0;
    - int shared = 0;
    -
    - printk("\nMem-info:\n");
    - show_free_areas();
    - i = max_mapnr;
    - while (i-- > 0) {
    - total++;
    - if (PageReserved(mem_map+i))
    - reserved++;
    - else if (PageSwapCache(mem_map+i))
    - cached++;
    - else if (!page_count(mem_map+i))
    - free++;
    - else if (page_count(mem_map+i) == 1)
    - nonshared++;
    - else
    - shared += page_count(mem_map+i) - 1;
    - }
    - printk("%d pages of RAM\n",total);
    - printk("%d free pages\n",free);
    - printk("%d reserved pages\n",reserved);
    - printk("%d pages nonshared\n",nonshared);
    - printk("%d pages shared\n",shared);
    - printk("%d pages swap cached\n",cached);
    -}
    -
    void __init
    mem_init(void)
    {

    --

    --
    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/

  13. [patch 15/22 -v2] ppc: Use generic show_mem()

    Remove arch-specific show_mem() in favor of the generic version.

    This also removes the following redundant information display:

    - free pages, printed by show_free_areas()
    - pages in swapcache, printed by show_swap_cache_info()

    where show_mem() calls show_free_areas(), which calls
    show_swap_cache_info().

    Signed-off-by: Johannes Weiner
    CC: Paul Mackerras
    ---

    Index: tree-linus/arch/ppc/Kconfig
    ================================================== =================
    --- tree-linus.orig/arch/ppc/Kconfig
    +++ tree-linus/arch/ppc/Kconfig
    @@ -45,7 +45,6 @@ config PPC
    select HAVE_IDE
    select HAVE_OPROFILE
    select HAVE_KPROBES
    - select HAVE_ARCH_SHOW_MEM

    config PPC32
    bool
    Index: tree-linus/arch/ppc/mm/init.c
    ================================================== =================
    --- tree-linus.orig/arch/ppc/mm/init.c
    +++ tree-linus/arch/ppc/mm/init.c
    @@ -101,36 +101,6 @@ unsigned long __max_memory;
    /* max amount of low RAM to map in */
    unsigned long __max_low_memory = MAX_LOW_MEM;

    -void show_mem(void)
    -{
    - int i,free = 0,total = 0,reserved = 0;
    - int shared = 0, cached = 0;
    - int highmem = 0;
    -
    - printk("Mem-info:\n");
    - show_free_areas();
    - i = max_mapnr;
    - while (i-- > 0) {
    - total++;
    - if (PageHighMem(mem_map+i))
    - highmem++;
    - if (PageReserved(mem_map+i))
    - reserved++;
    - else if (PageSwapCache(mem_map+i))
    - cached++;
    - else if (!page_count(mem_map+i))
    - free++;
    - else
    - shared += page_count(mem_map+i) - 1;
    - }
    - printk("%d pages of RAM\n",total);
    - printk("%d pages of HIGHMEM\n", highmem);
    - printk("%d free pages\n",free);
    - printk("%d reserved pages\n",reserved);
    - printk("%d pages shared\n",shared);
    - printk("%d pages swap cached\n",cached);
    -}
    -
    /* Free up now-unused memory */
    static void free_sec(unsigned long start, unsigned long end, const char *name)
    {

    --

    --
    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/

  14. [patch 11/22 -v2] m68knommu: Use generic show_mem()

    Remove arch-specific show_mem() in favor of the generic version.

    This also removes the following redundant information display:

    - free pages, printed by show_free_areas()
    - pages in swapcache, printed by show_swap_cache_info()

    where show_mem() calls show_free_areas(), which calls
    show_swap_cache_info().

    Signed-off-by: Johannes Weiner
    CC: Geert Uytterhoeven
    ---

    Index: tree-linus/arch/m68knommu/Kconfig
    ================================================== =================
    --- tree-linus.orig/arch/m68knommu/Kconfig
    +++ tree-linus/arch/m68knommu/Kconfig
    @@ -9,7 +9,6 @@ config M68K
    bool
    default y
    select HAVE_IDE
    - select HAVE_ARCH_SHOW_MEM

    config MMU
    bool
    Index: tree-linus/arch/m68knommu/mm/init.c
    ================================================== =================
    --- tree-linus.orig/arch/m68knommu/mm/init.c
    +++ tree-linus/arch/m68knommu/mm/init.c
    @@ -62,33 +62,6 @@ static unsigned long empty_bad_page;

    unsigned long empty_zero_page;

    -void show_mem(void)
    -{
    - unsigned long i;
    - int free = 0, total = 0, reserved = 0, shared = 0;
    - int cached = 0;
    -
    - printk(KERN_INFO "\nMem-info:\n");
    - show_free_areas();
    - i = max_mapnr;
    - while (i-- > 0) {
    - total++;
    - if (PageReserved(mem_map+i))
    - reserved++;
    - else if (PageSwapCache(mem_map+i))
    - cached++;
    - else if (!page_count(mem_map+i))
    - free++;
    - else
    - shared += page_count(mem_map+i) - 1;
    - }
    - printk(KERN_INFO "%d pages of RAM\n",total);
    - printk(KERN_INFO "%d free pages\n",free);
    - printk(KERN_INFO "%d reserved pages\n",reserved);
    - printk(KERN_INFO "%d pages shared\n",shared);
    - printk(KERN_INFO "%d pages swap cached\n",cached);
    -}
    -
    extern unsigned long memory_start;
    extern unsigned long memory_end;

    @@ -223,4 +196,3 @@ free_initmem()
    (int)(addr - PAGE_SIZE));
    #endif
    }
    -

    --

    --
    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/

  15. [patch 01/22 -v2] Print current swapcache page count in show_swap_cache_info()

    Most show_mem() implementations calculate the amount of pages within
    the swapcache every time. Move the output to a more appropriate place
    and use the anyway available total_swapcache_pages variable.

    Signed-off-by: Johannes Weiner
    ---

    diff --git a/mm/swap_state.c b/mm/swap_state.c
    index 50757ee..71cc0e1 100644
    --- a/mm/swap_state.c
    +++ b/mm/swap_state.c
    @@ -56,7 +56,8 @@ static struct {

    void show_swap_cache_info(void)
    {
    - printk("Swap cache: add %lu, delete %lu, find %lu/%lu\n",
    + printk("%lu pages in swap cache\n", total_swapcache_pages);
    + printk("Swap cache stats: add %lu, delete %lu, find %lu/%lu\n",
    swap_cache_info.add_total, swap_cache_info.del_total,
    swap_cache_info.find_success, swap_cache_info.find_total);
    printk("Free swap = %lukB\n", nr_swap_pages << (PAGE_SHIFT - 10));

    --

    --
    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/

  16. [patch 22/22 -v2] xtensa: Use generic show_mem()

    Remove arch-specific show_mem() in favor of the generic version.

    This also removes the following redundant information display:

    - free pages, printed by show_free_areas()
    - pages in swapcache, printed by show_swap_cache_info()

    where show_mem() calls show_free_areas(), which calls
    show_swap_cache_info().

    Signed-off-by: Johannes Weiner
    CC: Chris Zankel
    ---

    Index: tree-linus/arch/xtensa/Kconfig
    ================================================== =================
    --- tree-linus.orig/arch/xtensa/Kconfig
    +++ tree-linus/arch/xtensa/Kconfig
    @@ -15,7 +15,6 @@ config XTENSA
    bool
    default y
    select HAVE_IDE
    - select HAVE_ARCH_SHOW_MEM
    help
    Xtensa processors are 32-bit RISC machines designed by Tensilica
    primarily for embedded systems. These processors are both
    Index: tree-linus/arch/xtensa/mm/init.c
    ================================================== =================
    --- tree-linus.orig/arch/xtensa/mm/init.c
    +++ tree-linus/arch/xtensa/mm/init.c
    @@ -280,32 +280,6 @@ void free_initmem(void)
    (&__init_end - &__init_begin) >> 10);
    }

    -void show_mem(void)
    -{
    - int i, free = 0, total = 0, reserved = 0;
    - int shared = 0, cached = 0;
    -
    - printk("Mem-info:\n");
    - show_free_areas();
    - i = max_mapnr;
    - while (i-- > 0) {
    - total++;
    - if (PageReserved(mem_map+i))
    - reserved++;
    - else if (PageSwapCache(mem_map+i))
    - cached++;
    - else if (!page_count(mem_map + i))
    - free++;
    - else
    - shared += page_count(mem_map + i) - 1;
    - }
    - printk("%d pages of RAM\n", total);
    - printk("%d reserved pages\n", reserved);
    - printk("%d pages shared\n", shared);
    - printk("%d pages swap cached\n",cached);
    - printk("%d free pages\n", free);
    -}
    -
    struct kmem_cache *pgtable_cache __read_mostly;

    static void pgd_ctor(struct kmem_cache *cache, void* addr)

    --

    --
    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/

  17. Re: [patch 07/22 -v2] frv: Use generic show_mem()

    hannes@saeurebad.de wrote:

    > Remove arch-specific show_mem() in favor of the generic version.
    >
    > This also removes the following redundant information display:
    >
    > - free pages, printed by show_free_areas()
    >
    > where show_mem() calls show_free_areas().
    >
    > Signed-off-by: Johannes Weiner


    Acked-by: David Howells
    --
    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/

  18. Re: [patch 05/22 -v2] blackfin: Use generic show_mem()

    On Fri, Apr 4, 2008 at 4:51 AM, wrote:
    > Remove arch-specific show_mem() in favor of the generic version.
    >
    > This also removes the following redundant information display:
    >
    > - free pages, printed by show_free_areas()
    > - pages in swapcache, printed by show_swap_cache_info()
    >
    > where show_mem() calls show_free_areas(), which calls
    > show_swap_cache_info().
    >
    > Signed-off-by: Johannes Weiner
    > CC: Bryan Wu
    > ---
    >
    > Index: tree-linus/arch/blackfin/Kconfig
    > ================================================== =================
    > --- tree-linus.orig/arch/blackfin/Kconfig
    > +++ tree-linus/arch/blackfin/Kconfig
    > @@ -26,7 +26,6 @@ config BLACKFIN
    > default y
    > select HAVE_IDE
    > select HAVE_OPROFILE
    > - select HAVE_ARCH_SHOW_MEM
    >
    > config ZONE_DMA
    > bool
    > Index: tree-linus/arch/blackfin/mm/init.c
    > ================================================== =================
    > --- tree-linus.orig/arch/blackfin/mm/init.c
    > +++ tree-linus/arch/blackfin/mm/init.c
    > @@ -53,33 +53,6 @@ static unsigned long empty_bad_page;
    >
    > unsigned long empty_zero_page;
    >
    > -void show_mem(void)
    > -{
    > - unsigned long i;
    > - int free = 0, total = 0, reserved = 0, shared = 0;
    > -
    > - int cached = 0;
    > - printk(KERN_INFO "Mem-info:\n");
    > - show_free_areas();
    > - i = max_mapnr;
    > - while (i-- > 0) {
    > - total++;
    > - if (PageReserved(mem_map + i))
    > - reserved++;
    > - else if (PageSwapCache(mem_map + i))
    > - cached++;
    > - else if (!page_count(mem_map + i))
    > - free++;
    > - else
    > - shared += page_count(mem_map + i) - 1;
    > - }
    > - printk(KERN_INFO "%d pages of RAM\n", total);
    > - printk(KERN_INFO "%d free pages\n", free);
    > - printk(KERN_INFO "%d reserved pages\n", reserved);
    > - printk(KERN_INFO "%d pages shared\n", shared);
    > - printk(KERN_INFO "%d pages swap cached\n", cached);
    > -}
    > -
    > /*
    > * paging_init() continues the virtual memory environment setup which
    > * was begun by the code in arch/head.S.
    >


    Thanks
    Acked-by: Bryan Wu

    -Bryan
    --
    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/

  19. Re: [patch 04/22 -v2] avr32: Use generic show_mem()

    On Fri, 04 Apr 2008 13:51:41 +0200
    hannes@saeurebad.de wrote:

    > Remove arch-specific show_mem() in favor of the generic version.
    >
    > This also removes the following redundant information display:
    >
    > - free pages, printed by show_free_areas()
    > - pages in slabs, printed by show_free_areas()
    > - pages in swapcache, printed by show_swap_cache_info()
    >
    > where show_mem() calls show_free_areas(), which calls
    > show_swap_cache_info().
    >
    > Signed-off-by: Johannes Weiner
    > CC: Haavard Skinnemoen


    Looks good to me. Thanks!

    Acked-by: Haavard Skinnemoen
    --
    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/

  20. Re: [patch 17/22 -v2] sh: Use generic show_mem()

    On Fri, Apr 04, 2008 at 01:51:54PM +0200, hannes@saeurebad.de wrote:
    > Remove arch-specific show_mem() in favor of the generic version.
    >
    > This also removes the following redundant information display:
    >
    > - free pages, printed by show_free_areas()
    > - pages in slab, printed by show_free_areas()
    > - pages in swapcache, printed by show_swap_cache_info()
    >
    > where show_mem() calls show_free_areas(), which calls
    > show_swap_cache_info().
    >
    > Signed-off-by: Johannes Weiner
    > CC: Paul Mundt


    Acked-by: Paul Mundt
    --
    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/

+ Reply to Thread