• Audra Mitchell's avatar
    mm/page_owner: remove free_ts from page_owner output · b459f090
    Audra Mitchell authored
    Patch series "Fix page_owner's use of free timestamps".
    
    While page ower output is used to investigate memory utilization,
    typically the allocation pathway, the introduction of timestamps to the
    page owner records caused each record to become unique due to the
    granularity of the nanosecond timestamp (for example):
    
      Page allocated via order 0 ... ts 5206196026 ns, free_ts 5187156703 ns
      Page allocated via order 0 ... ts 5206198540 ns, free_ts 5187162702 ns
    
    Furthermore, the page_owner output only dumps the currently allocated
    records, so having the free timestamps is nonsensical for the typical use
    case.
    
    In addition, the introduction of timestamps was not properly handled in
    the page_owner_sort tool causing most use cases to be broken.  This series
    is meant to remove the free timestamps from the page_owner output and fix
    the page_owner_sort tool so proper collation can occur.
    
    
    This patch (of 5):
    
    When printing page_owner data via the sysfs interface, no free pages will
    ever be dumped due to the series of checks in read_page_owner():
    
        /*
         * Although we do have the info about past allocation of free
         * pages, it's not relevant for current memory usage.
         */
         if (!test_bit(PAGE_EXT_OWNER_ALLOCATED, &page_ext->flags))
    
    The free_ts values are still used when dump_page_owner() is called, so
    keeping the field for other use cases but removing them for the typical
    page_owner case.
    
    Link: https://lkml.kernel.org/r/20231013190350.579407-1-audra@redhat.com
    Link: https://lkml.kernel.org/r/20231013190350.579407-2-audra@redhat.com
    Fixes: 866b4852 ("mm/page_owner: record the timestamp of all pages during free")
    Signed-off-by: default avatarAudra Mitchell <audra@redhat.com>
    Acked-by: default avatarRafael Aquini <aquini@redhat.com>
    Reviewed-by: default avatarVlastimil Babka <vbabka@suse.cz>
    Cc: Georgi Djakov <djakov@kernel.org>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    b459f090
page_owner.c 18 KB