mirror_qemu/dump
Marc-André Lureau 94d788408d dump: fix kdump to work over non-aligned blocks
Rewrite get_next_page() to work over non-aligned blocks. When it
encounters non aligned addresses, it will try to fill a page provided by
the caller.

This solves a kdump crash with "tpm-crb-cmd" RAM memory region,
qemu-kvm: ../dump/dump.c:1162: _Bool get_next_page(GuestPhysBlock **,
uint64_t *, uint8_t **, DumpState *): Assertion `(block->target_start &
~target_page_mask) == 0' failed.

because:
guest_phys_block_add_section: target_start=00000000fed40080 target_end=00000000fed41000: added (count: 4)

Fixes:
https://bugzilla.redhat.com/show_bug.cgi?id=2120480

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Acked-by: David Hildenbrand <david@redhat.com>
2022-10-06 19:31:54 +04:00
..
dump-hmp-cmds.c hmp: drop Error pointer indirection in hmp_handle_error 2019-12-18 08:36:16 +01:00
dump.c dump: fix kdump to work over non-aligned blocks 2022-10-06 19:31:54 +04:00
meson.build meson: convert dump/ 2020-08-21 06:30:22 -04:00
win_dump.c dump/win_dump: add 32-bit guest Windows support 2022-04-22 13:41:56 +04:00
win_dump.h dump: Move the code to dump/ 2019-07-02 13:37:00 +02:00