[RESEND] memblock: Update nid info in memblock debugfs

Message ID 20230601133149.37160-1-ssawgyw@gmail.com
State New
Headers
Series [RESEND] memblock: Update nid info in memblock debugfs |

Commit Message

Yuwei Guan June 1, 2023, 1:31 p.m. UTC
  The node id for memblock reserved regions will be wrong,
so let's show 'x' for reg->nid == MAX_NUMNODES in debugfs to keep it align.

Suggested-by: Mike Rapoport (IBM) <rppt@kernel.org>
Co-developed-by: Kefeng Wang <wangkefeng.wang@huawei.com>
Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
Signed-off-by: Yuwei Guan <ssawgyw@gmail.com>
---
 mm/memblock.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
  

Comments

Mike Rapoport June 2, 2023, 5:24 a.m. UTC | #1
On Thu, Jun 01, 2023 at 09:31:49PM +0800, Yuwei Guan wrote:
> The node id for memblock reserved regions will be wrong,
> so let's show 'x' for reg->nid == MAX_NUMNODES in debugfs to keep it align.
> 
> Suggested-by: Mike Rapoport (IBM) <rppt@kernel.org>
> Co-developed-by: Kefeng Wang <wangkefeng.wang@huawei.com>
> Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com>
> Signed-off-by: Yuwei Guan <ssawgyw@gmail.com>

Applied, thanks!

> ---
>  mm/memblock.c | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/mm/memblock.c b/mm/memblock.c
> index 9ddd1ecb9af8..f50b418ccb11 100644
> --- a/mm/memblock.c
> +++ b/mm/memblock.c
> @@ -2160,17 +2160,21 @@ static int memblock_debug_show(struct seq_file *m, void *private)
>  {
>  	struct memblock_type *type = m->private;
>  	struct memblock_region *reg;
> -	int i, j;
> +	int i, j, nid;
>  	unsigned int count = ARRAY_SIZE(flagname);
>  	phys_addr_t end;
>  
>  	for (i = 0; i < type->cnt; i++) {
>  		reg = &type->regions[i];
>  		end = reg->base + reg->size - 1;
> +		nid = memblock_get_region_node(reg);
>  
>  		seq_printf(m, "%4d: ", i);
>  		seq_printf(m, "%pa..%pa ", &reg->base, &end);
> -		seq_printf(m, "%4d ", memblock_get_region_node(reg));
> +		if (nid != MAX_NUMNODES)
> +			seq_printf(m, "%4d ", nid);
> +		else
> +			seq_printf(m, "%4c ", 'x');
>  		if (reg->flags) {
>  			for (j = 0; j < count; j++) {
>  				if (reg->flags & (1U << j)) {
> -- 
> 2.17.1
>
  

Patch

diff --git a/mm/memblock.c b/mm/memblock.c
index 9ddd1ecb9af8..f50b418ccb11 100644
--- a/mm/memblock.c
+++ b/mm/memblock.c
@@ -2160,17 +2160,21 @@  static int memblock_debug_show(struct seq_file *m, void *private)
 {
 	struct memblock_type *type = m->private;
 	struct memblock_region *reg;
-	int i, j;
+	int i, j, nid;
 	unsigned int count = ARRAY_SIZE(flagname);
 	phys_addr_t end;
 
 	for (i = 0; i < type->cnt; i++) {
 		reg = &type->regions[i];
 		end = reg->base + reg->size - 1;
+		nid = memblock_get_region_node(reg);
 
 		seq_printf(m, "%4d: ", i);
 		seq_printf(m, "%pa..%pa ", &reg->base, &end);
-		seq_printf(m, "%4d ", memblock_get_region_node(reg));
+		if (nid != MAX_NUMNODES)
+			seq_printf(m, "%4d ", nid);
+		else
+			seq_printf(m, "%4c ", 'x');
 		if (reg->flags) {
 			for (j = 0; j < count; j++) {
 				if (reg->flags & (1U << j)) {