The patch titled Subject: mm/vmscan: replace mm_vmscan_lru_shrink_inactive with shrink_page_list tracepoint has been removed from the -mm tree. Its filename was mm-vmscan-replace-mm_vmscan_lru_shrink_inactive-with-shrink_page_list-tracepoint.patch This patch was dropped because it was withdrawn ------------------------------------------------------ From: Andrey Ryabinin <aryabinin@xxxxxxxxxxxxx> Subject: mm/vmscan: replace mm_vmscan_lru_shrink_inactive with shrink_page_list tracepoint With upcoming changes keeping the mm_vmscan_lru_shrink_inactive tracepoint intact would require some additional code churn. In particular 'struct recalim_stat' will gain more wide usage, but we don't need 'nr_activate', 'nr_ref_keep', 'nr_unmap_fail' counters anywhere besides tracepoint. Since mm_vmscan_lru_shrink_inactive tracepoint mostly provide information collected by shrink_page_list(), we can just replace it by tracepoint in shrink_page_list(). We don't have 'nr_scanned' and 'file' arguments there, but user could obtain this information from mm_vmscan_lru_isolate tracepoint. Link: http://lkml.kernel.org/r/20180315164553.17856-3-aryabinin@xxxxxxxxxxxxx Signed-off-by: Andrey Ryabinin <aryabinin@xxxxxxxxxxxxx> Cc: Shakeel Butt <shakeelb@xxxxxxxxxx> Cc: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx> Cc: Tejun Heo <tj@xxxxxxxxxx> Cc: Johannes Weiner <hannes@xxxxxxxxxxx> Cc: Michal Hocko <mhocko@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- include/trace/events/vmscan.h | 34 +++++++++++++------------------- mm/vmscan.c | 18 ++++------------ 2 files changed, 19 insertions(+), 33 deletions(-) diff -puN include/trace/events/vmscan.h~mm-vmscan-replace-mm_vmscan_lru_shrink_inactive-with-shrink_page_list-tracepoint include/trace/events/vmscan.h --- a/include/trace/events/vmscan.h~mm-vmscan-replace-mm_vmscan_lru_shrink_inactive-with-shrink_page_list-tracepoint +++ a/include/trace/events/vmscan.h @@ -342,23 +342,21 @@ TRACE_EVENT(mm_vmscan_writepage, show_reclaim_flags(__entry->reclaim_flags)) ); -TRACE_EVENT(mm_vmscan_lru_shrink_inactive, +TRACE_EVENT(mm_vmscan_shrink_page_list, TP_PROTO(int nid, - unsigned long nr_scanned, unsigned long nr_reclaimed, - unsigned long nr_dirty, unsigned long nr_writeback, - unsigned long nr_congested, unsigned long nr_immediate, - unsigned long nr_activate, unsigned long nr_ref_keep, - unsigned long nr_unmap_fail, - int priority, int file), + unsigned long nr_reclaimed, unsigned long nr_dirty, + unsigned long nr_writeback, unsigned long nr_congested, + unsigned long nr_immediate, unsigned long nr_activate, + unsigned long nr_ref_keep, unsigned long nr_unmap_fail, + int priority), - TP_ARGS(nid, nr_scanned, nr_reclaimed, nr_dirty, nr_writeback, + TP_ARGS(nid, nr_reclaimed, nr_dirty, nr_writeback, nr_congested, nr_immediate, nr_activate, nr_ref_keep, - nr_unmap_fail, priority, file), + nr_unmap_fail, priority), TP_STRUCT__entry( __field(int, nid) - __field(unsigned long, nr_scanned) __field(unsigned long, nr_reclaimed) __field(unsigned long, nr_dirty) __field(unsigned long, nr_writeback) @@ -368,12 +366,10 @@ TRACE_EVENT(mm_vmscan_lru_shrink_inactiv __field(unsigned long, nr_ref_keep) __field(unsigned long, nr_unmap_fail) __field(int, priority) - __field(int, reclaim_flags) ), TP_fast_assign( __entry->nid = nid; - __entry->nr_scanned = nr_scanned; __entry->nr_reclaimed = nr_reclaimed; __entry->nr_dirty = nr_dirty; __entry->nr_writeback = nr_writeback; @@ -383,17 +379,15 @@ TRACE_EVENT(mm_vmscan_lru_shrink_inactiv __entry->nr_ref_keep = nr_ref_keep; __entry->nr_unmap_fail = nr_unmap_fail; __entry->priority = priority; - __entry->reclaim_flags = trace_shrink_flags(file); ), - TP_printk("nid=%d nr_scanned=%ld nr_reclaimed=%ld nr_dirty=%ld nr_writeback=%ld nr_congested=%ld nr_immediate=%ld nr_activate=%ld nr_ref_keep=%ld nr_unmap_fail=%ld priority=%d flags=%s", + TP_printk("nid=%d nr_reclaimed=%ld nr_dirty=%ld nr_writeback=%ld nr_congested=%ld nr_immediate=%ld nr_activate=%ld nr_ref_keep=%ld nr_unmap_fail=%ld priority=%d", __entry->nid, - __entry->nr_scanned, __entry->nr_reclaimed, - __entry->nr_dirty, __entry->nr_writeback, - __entry->nr_congested, __entry->nr_immediate, - __entry->nr_activate, __entry->nr_ref_keep, - __entry->nr_unmap_fail, __entry->priority, - show_reclaim_flags(__entry->reclaim_flags)) + __entry->nr_reclaimed, __entry->nr_dirty, + __entry->nr_writeback, __entry->nr_congested, + __entry->nr_immediate, __entry->nr_activate, + __entry->nr_ref_keep, __entry->nr_unmap_fail, + __entry->priority) ); TRACE_EVENT(mm_vmscan_lru_shrink_active, diff -puN mm/vmscan.c~mm-vmscan-replace-mm_vmscan_lru_shrink_inactive-with-shrink_page_list-tracepoint mm/vmscan.c --- a/mm/vmscan.c~mm-vmscan-replace-mm_vmscan_lru_shrink_inactive-with-shrink_page_list-tracepoint +++ a/mm/vmscan.c @@ -863,9 +863,6 @@ struct reclaim_stat { unsigned nr_congested; unsigned nr_writeback; unsigned nr_immediate; - unsigned nr_activate; - unsigned nr_ref_keep; - unsigned nr_unmap_fail; }; /* @@ -1271,15 +1268,17 @@ keep: list_splice(&ret_pages, page_list); count_vm_events(PGACTIVATE, pgactivate); + trace_mm_vmscan_shrink_page_list(pgdat->node_id, + nr_reclaimed, nr_dirty, nr_writeback, nr_congested, + nr_immediate, pgactivate, nr_ref_keep, nr_unmap_fail, + sc->priority); + if (stat) { stat->nr_dirty = nr_dirty; stat->nr_congested = nr_congested; stat->nr_unqueued_dirty = nr_unqueued_dirty; stat->nr_writeback = nr_writeback; stat->nr_immediate = nr_immediate; - stat->nr_activate = pgactivate; - stat->nr_ref_keep = nr_ref_keep; - stat->nr_unmap_fail = nr_unmap_fail; } return nr_reclaimed; } @@ -1820,13 +1819,6 @@ shrink_inactive_list(unsigned long nr_to current_may_throttle()) wait_iff_congested(pgdat, BLK_RW_ASYNC, HZ/10); - trace_mm_vmscan_lru_shrink_inactive(pgdat->node_id, - nr_scanned, nr_reclaimed, - stat.nr_dirty, stat.nr_writeback, - stat.nr_congested, stat.nr_immediate, - stat.nr_activate, stat.nr_ref_keep, - stat.nr_unmap_fail, - sc->priority, file); return nr_reclaimed; } _ Patches currently in -mm which might be from aryabinin@xxxxxxxxxxxxx are mm-vmscan-update-stale-comments.patch mm-vmscan-remove-redundant-current_may_throttle-check.patch mm-vmscan-dont-change-pgdat-state-on-base-of-a-single-lru-list-state.patch mm-vmscan-dont-mess-with-pgdat-flags-in-memcg-reclaim.patch mm-kasan-dont-vfree-nonexistent-vm_area.patch -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html