Merge tag 'arc-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc
[deliverable/linux.git] / fs / proc / meminfo.c
index df4661abadc40fa406f9b36c3dfd344179e90eb8..83720460c5bc74c51a9caae002495b4d59d8a4c3 100644 (file)
@@ -29,10 +29,7 @@ static int meminfo_proc_show(struct seq_file *m, void *v)
        unsigned long committed;
        long cached;
        long available;
-       unsigned long pagecache;
-       unsigned long wmark_low = 0;
        unsigned long pages[NR_LRU_LISTS];
-       struct zone *zone;
        int lru;
 
 /*
@@ -51,33 +48,7 @@ static int meminfo_proc_show(struct seq_file *m, void *v)
        for (lru = LRU_BASE; lru < NR_LRU_LISTS; lru++)
                pages[lru] = global_page_state(NR_LRU_BASE + lru);
 
-       for_each_zone(zone)
-               wmark_low += zone->watermark[WMARK_LOW];
-
-       /*
-        * Estimate the amount of memory available for userspace allocations,
-        * without causing swapping.
-        */
-       available = i.freeram - totalreserve_pages;
-
-       /*
-        * Not all the page cache can be freed, otherwise the system will
-        * start swapping. Assume at least half of the page cache, or the
-        * low watermark worth of cache, needs to stay.
-        */
-       pagecache = pages[LRU_ACTIVE_FILE] + pages[LRU_INACTIVE_FILE];
-       pagecache -= min(pagecache / 2, wmark_low);
-       available += pagecache;
-
-       /*
-        * Part of the reclaimable slab consists of items that are in use,
-        * and cannot be freed. Cap this estimate at the low watermark.
-        */
-       available += global_page_state(NR_SLAB_RECLAIMABLE) -
-                    min(global_page_state(NR_SLAB_RECLAIMABLE) / 2, wmark_low);
-
-       if (available < 0)
-               available = 0;
+       available = si_mem_available();
 
        /*
         * Tagged format, for easy grepping and expansion.
This page took 0.025643 seconds and 5 git commands to generate.