--- zzzz-none-000/linux-4.4.60/mm/memblock.c 2017-04-08 07:53:53.000000000 +0000 +++ hawkeye-5590-729/linux-4.4.60/mm/memblock.c 2022-03-30 14:21:53.000000000 +0000 @@ -19,6 +19,7 @@ #include #include #include +#include #include #include @@ -503,6 +504,8 @@ memblock_set_region_node(rgn, nid); type->cnt++; type->total_size += size; + if (type == &memblock.memory && idx == 0) + crashlog_init_memblock(base, size); } /** @@ -536,6 +539,7 @@ /* special case for empty array */ if (type->regions[0].size == 0) { WARN_ON(type->cnt != 1 || type->total_size); + type->start_base = base; type->regions[0].base = base; type->regions[0].size = size; type->regions[0].flags = flags; @@ -1457,7 +1461,7 @@ /* lowest address */ phys_addr_t __init_memblock memblock_start_of_DRAM(void) { - return memblock.memory.regions[0].base; + return memblock.memory.start_base; } phys_addr_t __init_memblock memblock_end_of_DRAM(void)