crash —— 获取系统NODE、ZONE、SECTION、MEMBLOCK等信息

发布时间 2023-09-24 15:07:38作者: 摩斯电码
crash> kmem -n
NODE    SIZE      PGLIST_DATA       BOOTMEM_DATA       NODE_ZONES
  0   100925439  ffff88e03ffc1000        ----        ffff88e03ffc1000
                                                     ffff88e03ffc5000
                                                     ffff88e03ffc9000
                                                     ffff88e03ffcd000
                                                     ffff88e03ffd1000
    MEM_MAP          START_PADDR    START_MAPNR
ffffea0000000040        1000             1

ZONE  NAME         SIZE       MEM_MAP      START_PADDR  START_MAPNR
  0   DMA          4095  ffffea0000000040         1000            1
  1   DMA32     1044480  ffffea0000040000      1000000         4096
  2   Normal    99876864  ffffea0004000000    100000000      1048576
  3   Movable         0                 0            0            0
  4   Device          0                 0            0            0

-------------------------------------------------------------------

NODE    SIZE      PGLIST_DATA       BOOTMEM_DATA       NODE_ZONES
  1   100663296  ffff89403fdbe000        ----        ffff89403fdbe000
                                                     ffff89403fdc2000
                                                     ffff89403fdc6000
                                                     ffff89403fdca000
                                                     ffff89403fdce000
    MEM_MAP          START_PADDR    START_MAPNR
ffffea0181000000     6040000000      100925440

ZONE  NAME         SIZE       MEM_MAP      START_PADDR  START_MAPNR
  0   DMA             0                 0            0            0
  1   DMA32           0                 0            0            0
  2   Normal    100663296  ffffea0181000000   6040000000    100925440
  3   Movable         0                 0            0            0
  4   Device          0                 0            0            0

-------------------------------------------------------------------

NR      SECTION        CODED_MEM_MAP        MEM_MAP       STATE PFN
 0  ffff88e03ffc0000  ffffea0000000000  ffffea0000000000  PMOE  0
 1  ffff88e03ffc0010  ffffea0000000000  ffffea0000200000  PMOE  32768
 2  ffff88e03ffc0020  ffffea0000000000  ffffea0000400000  PMOE  65536
...
6148  ffff89403fdae040  ffffea0000000000  ffffea0300800000  PMOE  201457664
6149  ffff89403fdae050  ffffea0000000000  ffffea0300a00000  PMOE  201490432
6150  ffff89403fdae060  ffffea0000000000  ffffea0300c00000  PMOE  201523200
6151  ffff89403fdae070  ffffea0000000000  ffffea0300e00000  PMOE  201555968

   MEM_BLOCK        NAME          PHYSICAL RANGE       NODE  STATE   START_SECTION_NO
 ffff88deb1c0d800   memory0             0 -   3fffffff  0    ONLINE  0
 ffff88deb1c0c000   memory1      40000000 -   7fffffff  0    ONLINE  8
 ffff88deb1c09800   memory4     100000000 -  13fffffff  0    ONLINE  32
 ffff88deb1c0d000   memory5     140000000 -  17fffffff  0    ONLINE  40
 ffff88deb1c0a000   memory6     180000000 -  1bfffffff  0    ONLINE  48
 ffff88deb1c0b000   memory7     1c0000000 -  1ffffffff  0    ONLINE  56
 ffff88deb1c0f800   memory8     200000000 -  23fffffff  0    ONLINE  64
 ffff88deb1c0e800   memory9     240000000 -  27fffffff  0    ONLINE  72
...

上面SECTION的STATE信息支持如下如下几个标识符:

              "P": SECTION_MARKED_PRESENT
              "M": SECTION_HAS_MEM_MAP
              "O": SECTION_IS_ONLINE
              "E": SECTION_IS_EARLY
              "D": SECTION_TAINT_ZONE_DEVICE