fix: mm: move recent_rotated pages calculation to shrink_inactive_list() (v5.2)
authorMichael Jeanson <mjeanson@efficios.com>
Tue, 21 May 2019 20:33:13 +0000 (16:33 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Wed, 22 May 2019 14:50:08 +0000 (10:50 -0400)
See upstream commit:

  commit 886cf1901db962cee5f8b82b9b260079a5e8a4eb
  Author: Kirill Tkhai <ktkhai@virtuozzo.com>
  Date:   Mon May 13 17:16:51 2019 -0700

    mm: move recent_rotated pages calculation to shrink_inactive_list()

    Patch series "mm: Generalize putback functions"]

    putback_inactive_pages() and move_active_pages_to_lru() are almost
    similar, so this patchset merges them ina single function.

    This patch (of 4):

    The patch moves the calculation from putback_inactive_pages() to
    shrink_inactive_list().  This makes putback_inactive_pages() looking more
    similar to move_active_pages_to_lru().

    To do that, we account activated pages in reclaim_stat::nr_activate.
    Since a page may change its LRU type from anon to file cache inside
    shrink_page_list() (see ClearPageSwapBacked()), we have to account pages
    for the both types.  So, nr_activate becomes an array.

    Previously we used nr_activate to account PGACTIVATE events, but now we
    account them into pgactivate variable (since they are about number of
    pages in general, not about sum of hpage_nr_pages).

Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
instrumentation/events/lttng-module/mm_vmscan.h

index 2d052cb91cbfff7e4ab32b3f581606ee2eef1a59..ef768b1c20005dae5fe862d2e9956a65eb13298e 100644 (file)
@@ -624,7 +624,8 @@ LTTNG_TRACEPOINT_EVENT(mm_vmscan_lru_shrink_inactive,
                ctf_integer(unsigned long, nr_writeback, stat->nr_writeback)
                ctf_integer(unsigned long, nr_congested, stat->nr_congested)
                ctf_integer(unsigned long, nr_immediate, stat->nr_immediate)
-               ctf_integer(unsigned long, nr_activate, stat->nr_activate)
+               ctf_integer(unsigned long, nr_activate_anon, stat->nr_activate[0])
+               ctf_integer(unsigned long, nr_activate_file, stat->nr_activate[1])
                ctf_integer(unsigned long, nr_ref_keep, stat->nr_ref_keep)
                ctf_integer(unsigned long, nr_unmap_fail, stat->nr_unmap_fail)
                ctf_integer(int, priority, priority)
This page took 0.033131 seconds and 4 git commands to generate.