4.6 Kdump tools fail to create a vmcore-dmesg.txt on systems with many CPUs

On systems with multiple CPUs, the crash dump tools that are included with Kdump, fail to create a vmcore-dmesg.txt file, which is created with the vmcore file. This issue may result in the following segmentation fault:

kdump: saving to /sysroot//var/crash/
kdump: saving vmcore-dmesg.txt
/lib/kdump-lib-initramfs.sh: line 118:   459 Segmentation fault      
$_dmesg_collector /proc/vmcore > ${_path}/vmcore-dmesg-incomplete.txt
kdump: saving vmcore-dmesg.txt failed
kdump: saving vmcore
Copying data                                      : [100.0 %] \          
eta: 0s
kdump: saving vmcore complete 

This issue is the result of a log buffer that is dynamically allocated by the kernel. vmcore-dmesg does not know how to access memory that allocated in this way. The issue is typically triggered on systems with 64 or more CPUs, but has also been observed on a 32-core Ampere X-Gene 3 system.

The dmesg output can be retrieved manually by the running crash command against vmcore and then using the dmesg command when in the crash shell.

(Bug ID 28064675, 28670960)