• Yuwei Guan's avatar
    memblock: Add flags and nid info in memblock debugfs · 493f349e
    Yuwei Guan authored
    Currently, the memblock debugfs can display the count of memblock_type and
    the base and end of the reg. However, when memblock_mark_*() or
    memblock_set_node() is executed on some range, the information in the
    existing debugfs cannot make it clear why the address is not consecutive.
    
    For example,
    cat /sys/kernel/debug/memblock/memory
       0: 0x0000000080000000..0x00000000901fffff
       1: 0x0000000090200000..0x00000000905fffff
       2: 0x0000000090600000..0x0000000092ffffff
       3: 0x0000000093000000..0x00000000973fffff
       4: 0x0000000097400000..0x00000000b71fffff
       5: 0x00000000c0000000..0x00000000dfffffff
       6: 0x00000000e2500000..0x00000000f87fffff
       7: 0x00000000f8800000..0x00000000fa7fffff
       8: 0x00000000fa800000..0x00000000fd3effff
       9: 0x00000000fd3f0000..0x00000000fd3fefff
      10: 0x00000000fd3ff000..0x00000000fd7fffff
      11: 0x00000000fd800000..0x00000000fd901fff
      12: 0x00000000fd902000..0x00000000fd909fff
      13: 0x00000000fd90a000..0x00000000fd90bfff
      14: 0x00000000fd90c000..0x00000000ffffffff
      15: 0x0000000880000000..0x0000000affffffff
    
    So we can add flags and nid to this debugfs.
    
    For example,
    cat /sys/kernel/debug/memblock/memory
       0: 0x0000000080000000..0x00000000901fffff    0 NONE
       1: 0x0000000090200000..0x00000000905fffff    0 NOMAP
       2: 0x0000000090600000..0x0000000092ffffff    0 NONE
       3: 0x0000000093000000..0x00000000973fffff    0 NOMAP
       4: 0x0000000097400000..0x00000000b71fffff    0 NONE
       5: 0x00000000c0000000..0x00000000dfffffff    0 NONE
       6: 0x00000000e2500000..0x00000000f87fffff    0 NONE
       7: 0x00000000f8800000..0x00000000fa7fffff    0 NOMAP
       8: 0x00000000fa800000..0x00000000fd3effff    0 NONE
       9: 0x00000000fd3f0000..0x00000000fd3fefff    0 NOMAP
      10: 0x00000000fd3ff000..0x00000000fd7fffff    0 NONE
      11: 0x00000000fd800000..0x00000000fd901fff    0 NOMAP
      12: 0x00000000fd902000..0x00000000fd909fff    0 NONE
      13: 0x00000000fd90a000..0x00000000fd90bfff    0 NOMAP
      14: 0x00000000fd90c000..0x00000000ffffffff    0 NONE
      15: 0x0000000880000000..0x0000000affffffff    0 NONE
    Signed-off-by: default avatarYuwei Guan <ssawgyw@gmail.com>
    Reviewed-by: default avatarAnshuman Khandual <anshuman.khandual@arm.com>
    Reviewed-by: default avatarKefeng Wang <wangkefeng.wang@huawei.com>
    Link: https://lore.kernel.org/r/20230519105321.333-1-ssawgyw@gmail.comSigned-off-by: default avatarMike Rapoport (IBM) <rppt@kernel.org>
    493f349e
memblock.c 62.3 KB