linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/2] mm/show_mem: Bug fix for print mem alloc info
@ 2025-09-03 11:16 Yueyang Pan
  2025-09-03 11:16 ` [PATCH v3 1/2] mm/show_mem: Dump the status of the mem alloc profiling before printing Yueyang Pan
  2025-09-03 11:16 ` [PATCH v3 2/2] mm/show_mem: Add trylock while printing alloc info Yueyang Pan
  0 siblings, 2 replies; 12+ messages in thread
From: Yueyang Pan @ 2025-09-03 11:16 UTC (permalink / raw)
  To: Suren Baghdasaryan, Andrew Morton, Vlastimil Babka, Michal Hocko,
	Brendan Jackman, Johannes Weiner, Zi Yan, Vishal Moola,
	Shakeel Butt, Usama Arif
  Cc: linux-mm, kernel-team, linux-kernel

This patch set fixes two issues we saw in production rollout. 

The first issue is that we saw all zero output of memory allocation 
profiling information from show_mem() if CONFIG_MEM_ALLOC_PROFILING 
is set and sysctl.vm.mem_profiling=0. This cause ambiguity as we 
don't know what 0B actually means in the output. It can mean either 
memory allocation profiling is temporary disabled or the allocation 
at that position is actually 0. Such ambiguity will make further 
parsing harder as we cannot differentiate between two case.

The second issue is that multiple entities can call show_mem() 
which messed up the allocation info in dmesg. We saw outputs like this:  
```
    327 MiB    83635 mm/compaction.c:1880 func:compaction_alloc
   48.4 GiB 12684937 mm/memory.c:1061 func:folio_prealloc
   7.48 GiB    10899 mm/huge_memory.c:1159 func:vma_alloc_anon_folio_pmd
    298 MiB    95216 kernel/fork.c:318 func:alloc_thread_stack_node
    250 MiB    63901 mm/zsmalloc.c:987 func:alloc_zspage
    1.42 GiB   372527 mm/memory.c:1063 func:folio_prealloc
    1.17 GiB    95693 mm/slub.c:2424 func:alloc_slab_page
     651 MiB   166732 mm/readahead.c:270 func:page_cache_ra_unbounded
     419 MiB   107261 net/core/page_pool.c:572 func:__page_pool_alloc_pages_slow
     404 MiB   103425 arch/x86/mm/pgtable.c:25 func:pte_alloc_one
```
The above example is because one kthread invokes show_mem() 
from __alloc_pages_slowpath while kernel itself calls 
oom_kill_process()

Revision History
=================
Changes from v2 [2]
- Merge status dump with "Memory allocations:" starting line
- Move the definition of spinlock within ifdef 

Changes from v1 [1]
- Dump status of memory allocation profiling instead of disabling 
the output following Vishal's advise.
- Move lock from file scope to within __show_mem() and replace mutex 
with spinlock following Andrew, Vlastimil and Shakeel's advice.

[1] https://lore.kernel.org/linux-mm/cover.1756318426.git.pyyjason@gmail.com/
[2] https://lore.kernel.org/linux-mm/cover.1756827906.git.pyyjason@gmail.com/

Yueyang Pan (2):
  mm/show_mem: Dump the status of the mem alloc profiling  before
    printing
  mm/show_mem: Add trylock while printing alloc info

 mm/show_mem.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

-- 
2.47.3


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v3 1/2] mm/show_mem: Dump the status of the mem alloc profiling  before printing
  2025-09-03 11:16 [PATCH v3 0/2] mm/show_mem: Bug fix for print mem alloc info Yueyang Pan
@ 2025-09-03 11:16 ` Yueyang Pan
  2025-09-03 15:49   ` Usama Arif
                     ` (3 more replies)
  2025-09-03 11:16 ` [PATCH v3 2/2] mm/show_mem: Add trylock while printing alloc info Yueyang Pan
  1 sibling, 4 replies; 12+ messages in thread
From: Yueyang Pan @ 2025-09-03 11:16 UTC (permalink / raw)
  To: Suren Baghdasaryan, Andrew Morton, Vlastimil Babka, Michal Hocko,
	Brendan Jackman, Johannes Weiner, Zi Yan, Vishal Moola,
	Shakeel Butt, Usama Arif
  Cc: linux-mm, kernel-team, linux-kernel

This patch prints the status of the memory allocation profiling
before __show_mem actually prints the detailed allocation info.
This way will let us know the `0B` we saw in allocation info is
because the profiling is disabled or the allocation is actually
0B.

Signed-off-by: Yueyang Pan <pyyjason@gmail.com>
---
 mm/show_mem.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/mm/show_mem.c b/mm/show_mem.c
index ecf20a93ea54..fd85a028a926 100644
--- a/mm/show_mem.c
+++ b/mm/show_mem.c
@@ -427,7 +427,8 @@ void __show_mem(unsigned int filter, nodemask_t *nodemask, int max_zone_idx)
 
 		nr = alloc_tag_top_users(tags, ARRAY_SIZE(tags), false);
 		if (nr) {
-			pr_notice("Memory allocations:\n");
+			pr_notice("Memory allocations (profiling is currently turned %s):\n",
+				mem_alloc_profiling_enabled() ? "on" : "off");
 			for (i = 0; i < nr; i++) {
 				struct codetag *ct = tags[i].ct;
 				struct alloc_tag *tag = ct_to_alloc_tag(ct);
-- 
2.47.3


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH v3 2/2] mm/show_mem: Add trylock while printing alloc info
  2025-09-03 11:16 [PATCH v3 0/2] mm/show_mem: Bug fix for print mem alloc info Yueyang Pan
  2025-09-03 11:16 ` [PATCH v3 1/2] mm/show_mem: Dump the status of the mem alloc profiling before printing Yueyang Pan
@ 2025-09-03 11:16 ` Yueyang Pan
  2025-09-03 15:48   ` Usama Arif
                     ` (2 more replies)
  1 sibling, 3 replies; 12+ messages in thread
From: Yueyang Pan @ 2025-09-03 11:16 UTC (permalink / raw)
  To: Suren Baghdasaryan, Andrew Morton, Vlastimil Babka, Michal Hocko,
	Brendan Jackman, Johannes Weiner, Zi Yan, Vishal Moola,
	Shakeel Butt, Usama Arif
  Cc: linux-mm, kernel-team, linux-kernel

In production, show_mem() can be called concurrently from two
different entities, for example one from oom_kill_process()
another from __alloc_pages_slowpath from another kthread. This
patch adds a spinlock and invokes trylock before printing out the
kernel alloc info in show_mem(). This way two alloc info won't
interleave with each other, which then makes parsing easier.

Signed-off-by: Yueyang Pan <pyyjason@gmail.com>
---
 mm/show_mem.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/mm/show_mem.c b/mm/show_mem.c
index fd85a028a926..e9701d07549b 100644
--- a/mm/show_mem.c
+++ b/mm/show_mem.c
@@ -421,7 +421,9 @@ void __show_mem(unsigned int filter, nodemask_t *nodemask, int max_zone_idx)
 	printk("%lu pages hwpoisoned\n", atomic_long_read(&num_poisoned_pages));
 #endif
 #ifdef CONFIG_MEM_ALLOC_PROFILING
-	{
+	static DEFINE_SPINLOCK(mem_alloc_profiling_spinlock);
+
+	if (spin_trylock(&mem_alloc_profiling_spinlock)) {
 		struct codetag_bytes tags[10];
 		size_t i, nr;
 
@@ -448,6 +450,7 @@ void __show_mem(unsigned int filter, nodemask_t *nodemask, int max_zone_idx)
 						  ct->lineno, ct->function);
 			}
 		}
+		spin_unlock(&mem_alloc_profiling_spinlock);
 	}
 #endif
 }
-- 
2.47.3


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 2/2] mm/show_mem: Add trylock while printing alloc info
  2025-09-03 11:16 ` [PATCH v3 2/2] mm/show_mem: Add trylock while printing alloc info Yueyang Pan
@ 2025-09-03 15:48   ` Usama Arif
  2025-09-03 16:10   ` Vlastimil Babka
  2025-09-03 16:30   ` Zi Yan
  2 siblings, 0 replies; 12+ messages in thread
From: Usama Arif @ 2025-09-03 15:48 UTC (permalink / raw)
  To: Yueyang Pan, Suren Baghdasaryan, Andrew Morton, Vlastimil Babka,
	Michal Hocko, Brendan Jackman, Johannes Weiner, Zi Yan,
	Vishal Moola, Shakeel Butt
  Cc: linux-mm, kernel-team, linux-kernel



On 03/09/2025 12:16, Yueyang Pan wrote:
> In production, show_mem() can be called concurrently from two
> different entities, for example one from oom_kill_process()
> another from __alloc_pages_slowpath from another kthread. This
> patch adds a spinlock and invokes trylock before printing out the
> kernel alloc info in show_mem(). This way two alloc info won't
> interleave with each other, which then makes parsing easier.
> 
> Signed-off-by: Yueyang Pan <pyyjason@gmail.com>

Acked-by: Usama Arif <usamaarif642@gmail.com>

> ---
>  mm/show_mem.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/mm/show_mem.c b/mm/show_mem.c
> index fd85a028a926..e9701d07549b 100644
> --- a/mm/show_mem.c
> +++ b/mm/show_mem.c
> @@ -421,7 +421,9 @@ void __show_mem(unsigned int filter, nodemask_t *nodemask, int max_zone_idx)
>  	printk("%lu pages hwpoisoned\n", atomic_long_read(&num_poisoned_pages));
>  #endif
>  #ifdef CONFIG_MEM_ALLOC_PROFILING
> -	{
> +	static DEFINE_SPINLOCK(mem_alloc_profiling_spinlock);
> +
> +	if (spin_trylock(&mem_alloc_profiling_spinlock)) {
>  		struct codetag_bytes tags[10];
>  		size_t i, nr;
>  
> @@ -448,6 +450,7 @@ void __show_mem(unsigned int filter, nodemask_t *nodemask, int max_zone_idx)
>  						  ct->lineno, ct->function);
>  			}
>  		}
> +		spin_unlock(&mem_alloc_profiling_spinlock);
>  	}
>  #endif
>  }


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 1/2] mm/show_mem: Dump the status of the mem alloc profiling before printing
  2025-09-03 11:16 ` [PATCH v3 1/2] mm/show_mem: Dump the status of the mem alloc profiling before printing Yueyang Pan
@ 2025-09-03 15:49   ` Usama Arif
  2025-09-03 16:10   ` Vlastimil Babka
                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 12+ messages in thread
From: Usama Arif @ 2025-09-03 15:49 UTC (permalink / raw)
  To: Yueyang Pan, Suren Baghdasaryan, Andrew Morton, Vlastimil Babka,
	Michal Hocko, Brendan Jackman, Johannes Weiner, Zi Yan,
	Vishal Moola, Shakeel Butt
  Cc: linux-mm, kernel-team, linux-kernel



On 03/09/2025 12:16, Yueyang Pan wrote:
> This patch prints the status of the memory allocation profiling
> before __show_mem actually prints the detailed allocation info.
> This way will let us know the `0B` we saw in allocation info is
> because the profiling is disabled or the allocation is actually
> 0B.
> 
> Signed-off-by: Yueyang Pan <pyyjason@gmail.com>

Acked-by: Usama Arif <usamaarif642@gmail.com>

> ---
>  mm/show_mem.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/mm/show_mem.c b/mm/show_mem.c
> index ecf20a93ea54..fd85a028a926 100644
> --- a/mm/show_mem.c
> +++ b/mm/show_mem.c
> @@ -427,7 +427,8 @@ void __show_mem(unsigned int filter, nodemask_t *nodemask, int max_zone_idx)
>  
>  		nr = alloc_tag_top_users(tags, ARRAY_SIZE(tags), false);
>  		if (nr) {
> -			pr_notice("Memory allocations:\n");
> +			pr_notice("Memory allocations (profiling is currently turned %s):\n",
> +				mem_alloc_profiling_enabled() ? "on" : "off");
>  			for (i = 0; i < nr; i++) {
>  				struct codetag *ct = tags[i].ct;
>  				struct alloc_tag *tag = ct_to_alloc_tag(ct);


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 1/2] mm/show_mem: Dump the status of the mem alloc profiling before printing
  2025-09-03 11:16 ` [PATCH v3 1/2] mm/show_mem: Dump the status of the mem alloc profiling before printing Yueyang Pan
  2025-09-03 15:49   ` Usama Arif
@ 2025-09-03 16:10   ` Vlastimil Babka
  2025-09-03 16:29   ` Zi Yan
  2025-09-03 19:07   ` Vishal Moola (Oracle)
  3 siblings, 0 replies; 12+ messages in thread
From: Vlastimil Babka @ 2025-09-03 16:10 UTC (permalink / raw)
  To: Yueyang Pan, Suren Baghdasaryan, Andrew Morton, Michal Hocko,
	Brendan Jackman, Johannes Weiner, Zi Yan, Vishal Moola,
	Shakeel Butt, Usama Arif
  Cc: linux-mm, kernel-team, linux-kernel

On 9/3/25 13:16, Yueyang Pan wrote:
> This patch prints the status of the memory allocation profiling
> before __show_mem actually prints the detailed allocation info.
> This way will let us know the `0B` we saw in allocation info is
> because the profiling is disabled or the allocation is actually
> 0B.
> 
> Signed-off-by: Yueyang Pan <pyyjason@gmail.com>

Acked-by: Vlastimil Babka <vbabka@suse.cz>

> ---
>  mm/show_mem.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/mm/show_mem.c b/mm/show_mem.c
> index ecf20a93ea54..fd85a028a926 100644
> --- a/mm/show_mem.c
> +++ b/mm/show_mem.c
> @@ -427,7 +427,8 @@ void __show_mem(unsigned int filter, nodemask_t *nodemask, int max_zone_idx)
>  
>  		nr = alloc_tag_top_users(tags, ARRAY_SIZE(tags), false);
>  		if (nr) {
> -			pr_notice("Memory allocations:\n");
> +			pr_notice("Memory allocations (profiling is currently turned %s):\n",
> +				mem_alloc_profiling_enabled() ? "on" : "off");
>  			for (i = 0; i < nr; i++) {
>  				struct codetag *ct = tags[i].ct;
>  				struct alloc_tag *tag = ct_to_alloc_tag(ct);


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 2/2] mm/show_mem: Add trylock while printing alloc info
  2025-09-03 11:16 ` [PATCH v3 2/2] mm/show_mem: Add trylock while printing alloc info Yueyang Pan
  2025-09-03 15:48   ` Usama Arif
@ 2025-09-03 16:10   ` Vlastimil Babka
  2025-09-03 16:30   ` Zi Yan
  2 siblings, 0 replies; 12+ messages in thread
From: Vlastimil Babka @ 2025-09-03 16:10 UTC (permalink / raw)
  To: Yueyang Pan, Suren Baghdasaryan, Andrew Morton, Michal Hocko,
	Brendan Jackman, Johannes Weiner, Zi Yan, Vishal Moola,
	Shakeel Butt, Usama Arif
  Cc: linux-mm, kernel-team, linux-kernel

On 9/3/25 13:16, Yueyang Pan wrote:
> In production, show_mem() can be called concurrently from two
> different entities, for example one from oom_kill_process()
> another from __alloc_pages_slowpath from another kthread. This
> patch adds a spinlock and invokes trylock before printing out the
> kernel alloc info in show_mem(). This way two alloc info won't
> interleave with each other, which then makes parsing easier.
> 
> Signed-off-by: Yueyang Pan <pyyjason@gmail.com>

Acked-by: Vlastimil Babka <vbabka@suse.cz>

> ---
>  mm/show_mem.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/mm/show_mem.c b/mm/show_mem.c
> index fd85a028a926..e9701d07549b 100644
> --- a/mm/show_mem.c
> +++ b/mm/show_mem.c
> @@ -421,7 +421,9 @@ void __show_mem(unsigned int filter, nodemask_t *nodemask, int max_zone_idx)
>  	printk("%lu pages hwpoisoned\n", atomic_long_read(&num_poisoned_pages));
>  #endif
>  #ifdef CONFIG_MEM_ALLOC_PROFILING
> -	{
> +	static DEFINE_SPINLOCK(mem_alloc_profiling_spinlock);
> +
> +	if (spin_trylock(&mem_alloc_profiling_spinlock)) {
>  		struct codetag_bytes tags[10];
>  		size_t i, nr;
>  
> @@ -448,6 +450,7 @@ void __show_mem(unsigned int filter, nodemask_t *nodemask, int max_zone_idx)
>  						  ct->lineno, ct->function);
>  			}
>  		}
> +		spin_unlock(&mem_alloc_profiling_spinlock);
>  	}
>  #endif
>  }


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 1/2] mm/show_mem: Dump the status of the mem alloc profiling  before printing
  2025-09-03 11:16 ` [PATCH v3 1/2] mm/show_mem: Dump the status of the mem alloc profiling before printing Yueyang Pan
  2025-09-03 15:49   ` Usama Arif
  2025-09-03 16:10   ` Vlastimil Babka
@ 2025-09-03 16:29   ` Zi Yan
  2025-09-03 17:07     ` Suren Baghdasaryan
  2025-09-03 19:07   ` Vishal Moola (Oracle)
  3 siblings, 1 reply; 12+ messages in thread
From: Zi Yan @ 2025-09-03 16:29 UTC (permalink / raw)
  To: Yueyang Pan
  Cc: Suren Baghdasaryan, Andrew Morton, Vlastimil Babka, Michal Hocko,
	Brendan Jackman, Johannes Weiner, Vishal Moola, Shakeel Butt,
	Usama Arif, linux-mm, kernel-team, linux-kernel

On 3 Sep 2025, at 7:16, Yueyang Pan wrote:

> This patch prints the status of the memory allocation profiling
> before __show_mem actually prints the detailed allocation info.
> This way will let us know the `0B` we saw in allocation info is
> because the profiling is disabled or the allocation is actually
> 0B.
>
> Signed-off-by: Yueyang Pan <pyyjason@gmail.com>
> ---
>  mm/show_mem.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
Acked-by: Zi Yan <ziy@nvidia.com>

Best Regards,
Yan, Zi

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 2/2] mm/show_mem: Add trylock while printing alloc info
  2025-09-03 11:16 ` [PATCH v3 2/2] mm/show_mem: Add trylock while printing alloc info Yueyang Pan
  2025-09-03 15:48   ` Usama Arif
  2025-09-03 16:10   ` Vlastimil Babka
@ 2025-09-03 16:30   ` Zi Yan
  2025-09-03 17:08     ` Suren Baghdasaryan
  2 siblings, 1 reply; 12+ messages in thread
From: Zi Yan @ 2025-09-03 16:30 UTC (permalink / raw)
  To: Yueyang Pan
  Cc: Suren Baghdasaryan, Andrew Morton, Vlastimil Babka, Michal Hocko,
	Brendan Jackman, Johannes Weiner, Vishal Moola, Shakeel Butt,
	Usama Arif, linux-mm, kernel-team, linux-kernel

On 3 Sep 2025, at 7:16, Yueyang Pan wrote:

> In production, show_mem() can be called concurrently from two
> different entities, for example one from oom_kill_process()
> another from __alloc_pages_slowpath from another kthread. This
> patch adds a spinlock and invokes trylock before printing out the
> kernel alloc info in show_mem(). This way two alloc info won't
> interleave with each other, which then makes parsing easier.
>
> Signed-off-by: Yueyang Pan <pyyjason@gmail.com>
> ---
>  mm/show_mem.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
>

Acked-by: Zi Yan <ziy@nvidia.com>

Best Regards,
Yan, Zi

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 1/2] mm/show_mem: Dump the status of the mem alloc profiling before printing
  2025-09-03 16:29   ` Zi Yan
@ 2025-09-03 17:07     ` Suren Baghdasaryan
  0 siblings, 0 replies; 12+ messages in thread
From: Suren Baghdasaryan @ 2025-09-03 17:07 UTC (permalink / raw)
  To: Zi Yan
  Cc: Yueyang Pan, Andrew Morton, Vlastimil Babka, Michal Hocko,
	Brendan Jackman, Johannes Weiner, Vishal Moola, Shakeel Butt,
	Usama Arif, linux-mm, kernel-team, linux-kernel

On Wed, Sep 3, 2025 at 9:29 AM Zi Yan <ziy@nvidia.com> wrote:
>
> On 3 Sep 2025, at 7:16, Yueyang Pan wrote:
>
> > This patch prints the status of the memory allocation profiling
> > before __show_mem actually prints the detailed allocation info.
> > This way will let us know the `0B` we saw in allocation info is
> > because the profiling is disabled or the allocation is actually
> > 0B.
> >
> > Signed-off-by: Yueyang Pan <pyyjason@gmail.com>
> > ---
> >  mm/show_mem.c | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> Acked-by: Zi Yan <ziy@nvidia.com>

Acked-by: Suren Baghdasaryan <surenb@google.com>

>
> Best Regards,
> Yan, Zi

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 2/2] mm/show_mem: Add trylock while printing alloc info
  2025-09-03 16:30   ` Zi Yan
@ 2025-09-03 17:08     ` Suren Baghdasaryan
  0 siblings, 0 replies; 12+ messages in thread
From: Suren Baghdasaryan @ 2025-09-03 17:08 UTC (permalink / raw)
  To: Zi Yan
  Cc: Yueyang Pan, Andrew Morton, Vlastimil Babka, Michal Hocko,
	Brendan Jackman, Johannes Weiner, Vishal Moola, Shakeel Butt,
	Usama Arif, linux-mm, kernel-team, linux-kernel

On Wed, Sep 3, 2025 at 9:30 AM Zi Yan <ziy@nvidia.com> wrote:
>
> On 3 Sep 2025, at 7:16, Yueyang Pan wrote:
>
> > In production, show_mem() can be called concurrently from two
> > different entities, for example one from oom_kill_process()
> > another from __alloc_pages_slowpath from another kthread. This
> > patch adds a spinlock and invokes trylock before printing out the
> > kernel alloc info in show_mem(). This way two alloc info won't
> > interleave with each other, which then makes parsing easier.
> >
> > Signed-off-by: Yueyang Pan <pyyjason@gmail.com>
> > ---
> >  mm/show_mem.c | 5 ++++-
> >  1 file changed, 4 insertions(+), 1 deletion(-)
> >
>
> Acked-by: Zi Yan <ziy@nvidia.com>

Acked-by: Suren Baghdasaryan <surenb@google.com>


>
> Best Regards,
> Yan, Zi

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v3 1/2] mm/show_mem: Dump the status of the mem alloc profiling  before printing
  2025-09-03 11:16 ` [PATCH v3 1/2] mm/show_mem: Dump the status of the mem alloc profiling before printing Yueyang Pan
                     ` (2 preceding siblings ...)
  2025-09-03 16:29   ` Zi Yan
@ 2025-09-03 19:07   ` Vishal Moola (Oracle)
  3 siblings, 0 replies; 12+ messages in thread
From: Vishal Moola (Oracle) @ 2025-09-03 19:07 UTC (permalink / raw)
  To: Yueyang Pan
  Cc: Suren Baghdasaryan, Andrew Morton, Vlastimil Babka, Michal Hocko,
	Brendan Jackman, Johannes Weiner, Zi Yan, Shakeel Butt,
	Usama Arif, linux-mm, kernel-team, linux-kernel

On Wed, Sep 03, 2025 at 04:16:13AM -0700, Yueyang Pan wrote:
> This patch prints the status of the memory allocation profiling
> before __show_mem actually prints the detailed allocation info.
> This way will let us know the `0B` we saw in allocation info is
> because the profiling is disabled or the allocation is actually
> 0B.
> 
> Signed-off-by: Yueyang Pan <pyyjason@gmail.com>

Reviewed-by: Vishal Moola (Oracle) <vishal.moola@gmail.com>

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2025-09-03 19:07 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-03 11:16 [PATCH v3 0/2] mm/show_mem: Bug fix for print mem alloc info Yueyang Pan
2025-09-03 11:16 ` [PATCH v3 1/2] mm/show_mem: Dump the status of the mem alloc profiling before printing Yueyang Pan
2025-09-03 15:49   ` Usama Arif
2025-09-03 16:10   ` Vlastimil Babka
2025-09-03 16:29   ` Zi Yan
2025-09-03 17:07     ` Suren Baghdasaryan
2025-09-03 19:07   ` Vishal Moola (Oracle)
2025-09-03 11:16 ` [PATCH v3 2/2] mm/show_mem: Add trylock while printing alloc info Yueyang Pan
2025-09-03 15:48   ` Usama Arif
2025-09-03 16:10   ` Vlastimil Babka
2025-09-03 16:30   ` Zi Yan
2025-09-03 17:08     ` Suren Baghdasaryan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).