[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <244795ea-78f6-d02b-ecbb-0b2e1d2dfdfb@suse.cz>
Date: Wed, 8 Feb 2023 18:02:48 +0100
From: Vlastimil Babka <vbabka@...e.cz>
To: Hyeonggon Yoo <42.hyeyoo@...il.com>,
Andrew Morton <akpm@...ux-foundation.org>
Cc: Mike Rapoport <rppt@...ux.ibm.com>,
David Rientjes <rientjes@...gle.com>,
Joonsoo Kim <iamjoonsoo.kim@....com>,
Michal Hocko <mhocko@...nel.org>,
David Hildenbrand <david@...hat.com>, linux-mm@...ck.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH mm-unstable] mm/page_owner: record single timestamp value
for high order allocations
On 1/21/23 17:50, Hyeonggon Yoo wrote:
> When allocating a high-order page, separate allocation timestamp is
> recorded for each sub-page resulting in different timestamp values between
> them.
>
> This behavior is not consistent with the behavior when recording free
> timestamp and caused confusion when analyzing memory dumps. Record single
> timestamp for the entire allocation, aligning with the behavior for
> free timestamps.
>
> Signed-off-by: Hyeonggon Yoo <42.hyeyoo@...il.com>
Acked-by: Vlastimil Babka <vbabka@...e.cz>
> ---
> mm/page_owner.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/mm/page_owner.c b/mm/page_owner.c
> index f0553bedb39d..80dc8f4050fa 100644
> --- a/mm/page_owner.c
> +++ b/mm/page_owner.c
> @@ -163,6 +163,7 @@ static inline void __set_page_owner_handle(struct page_ext *page_ext,
> {
> struct page_owner *page_owner;
> int i;
> + u64 ts_nsec = local_clock();
>
> for (i = 0; i < (1 << order); i++) {
> page_owner = get_page_owner(page_ext);
> @@ -172,7 +173,7 @@ static inline void __set_page_owner_handle(struct page_ext *page_ext,
> page_owner->last_migrate_reason = -1;
> page_owner->pid = current->pid;
> page_owner->tgid = current->tgid;
> - page_owner->ts_nsec = local_clock();
> + page_owner->ts_nsec = ts_nsec;
> strscpy(page_owner->comm, current->comm,
> sizeof(page_owner->comm));
> __set_bit(PAGE_EXT_OWNER, &page_ext->flags);
Powered by blists - more mailing lists