diff options
author | David Daney <david.daney@cavium.com> | 2017-10-12 12:50:34 -0700 |
---|---|---|
committer | James Hogan <jhogan@kernel.org> | 2017-11-13 17:40:49 +0000 |
commit | e0c5f36b2a638fc3298200c385af7f196d3b5cd4 (patch) | |
tree | 392034d773cf75ffed89dd0c72b2c9ac1ce96df9 | |
parent | a3f143106596d739e7fbc4b84c96b1475247d876 (diff) |
MIPS: Add iomem resource for kernel bss section.
The kexec/kdump tools need to know where the .bss is so it can be
included in the core dump. This allows vmcore-dmesg to have access to
the dmesg buffers of the crashed kernel as well as allowing the
debugger to examine variables in the bss section.
Add a request for the bss resource in addition to the already
requested code and data sections.
Signed-off-by: David Daney <david.daney@cavium.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Steven J. Hill <steven.hill@cavium.com>,
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/17485/
Signed-off-by: James Hogan <jhogan@kernel.org>
-rw-r--r-- | arch/mips/kernel/setup.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/mips/kernel/setup.c b/arch/mips/kernel/setup.c index fe3939726765..702c678de116 100644 --- a/arch/mips/kernel/setup.c +++ b/arch/mips/kernel/setup.c @@ -80,6 +80,7 @@ EXPORT_SYMBOL(mips_io_port_base); static struct resource code_resource = { .name = "Kernel code", }; static struct resource data_resource = { .name = "Kernel data", }; +static struct resource bss_resource = { .name = "Kernel bss", }; static void *detect_magic __initdata = detect_memory_region; @@ -927,6 +928,8 @@ static void __init resource_init(void) code_resource.end = __pa_symbol(&_etext) - 1; data_resource.start = __pa_symbol(&_etext); data_resource.end = __pa_symbol(&_edata) - 1; + bss_resource.start = __pa_symbol(&__bss_start); + bss_resource.end = __pa_symbol(&__bss_stop) - 1; for (i = 0; i < boot_mem_map.nr_map; i++) { struct resource *res; @@ -966,6 +969,7 @@ static void __init resource_init(void) */ request_resource(res, &code_resource); request_resource(res, &data_resource); + request_resource(res, &bss_resource); request_crashkernel(res); } } |