The first patch allows us to rely on one less heuristic by taking advantage of information recently made available to us through the kernel image. The second patch enables analysis of qemu generated dump files. v2: - Drop "arm64: relax symbol filters" patch and just stash the value of the one absolute symbol we need "_kernel_flags_le". [Dave Anderson] Also, while working on this, I testing several dumps. The following are my results. arm/aarch64 kvm guest kdump testing (P - PASS, F - FAIL). Testing done with a latest mainline crash utility patched with these patches and a latest mainline qemu with patches for dump generation. .-----------------------------------------------------------------------. | Host | arm32 | arm64 | arm64 | arm64 | |---------------------------------------|-------|-------|-------|-------| | Guest | arm32 | arm64 | arm64 | arm32 | |---------------------------------------|-------|-------|-------|-------| | Pagesize| 4K | 4K | 64K | 4K | |=======================================================================| | kdump in guest | F[1] | P[2] | P[3] | F[1] | |---------------------------------------|-------|-------|-------|-------| | qmp-dump-guest-memory <filename>[4] | P | P | P | P | |---------------------------------------|-------|-------|-------|-------| | qmp-dump-guest-memory -z <filename>[5]| F[8] | P | P | F[8] | |---------------------------------------|-------|-------|-------|-------| | qmp-dump-guest-memory -l <filename>[6]| F[8] | P | P | F[8] | |---------------------------------------|-------|-------|-------|-------| | qmp-dump-guest-memory -s <filename>[7]| F[8] | P | P | F[8] | .-----------------------------------------------------------------------. [1] Kernel v4.4-rc1 crashes with a NULL pointer dereference at virtual address 00000000 in a memcpy (crash_kexec/machine_kexec/fncpy/memcpy). Needs kernel debugging. [2] Not sure about mainline, but works with the RHEL kernel, makedumpfile does not yet support arm64 with 4K pages, but using 'core_collector cp' in /etc/kdump.conf allows saving an uncompressed elf file. [3] Not sure about mainline, but works with the RHEL kernel, uses makedumpfile, thus generates a makedumpfile formatted file using zlib compression. [4] No format specified, creates an uncompressed elf formatted file. [5] makedumpfile format, with zlib compression [6] makedumpfile format, with lzo compression [7] makedumpfile format, with snappy compression [8] The crash utility doesn't seem to like arm32 dumps in makedumpfile format. Looks like the physical page bitmap is all zeros? Needs qemu and crash debugging. Andrew Jones (3): arm64: relax symbol filters arm64: read pagesize arm/arm64: read elf notes for qemu generated cores arm.c | 22 ++++++++++++++++++++++ arm64.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-- defs.h | 4 ++++ netdump.c | 21 +++++++++++++++++++++ 4 files changed, 101 insertions(+), 2 deletions(-) -- 2.4.3 Andrew Jones (2): arm64: read pagesize arm/arm64: read elf notes for qemu generated cores arm.c | 22 ++++++++++++++++++++++ arm64.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ defs.h | 2 ++ netdump.c | 21 +++++++++++++++++++++ 4 files changed, 97 insertions(+) -- 2.4.3 -- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility