History | View | Annotate | Download (10.3 kB)
cpu: Use QTAILQ for CPU list
Introduce CPU_FOREACH(), CPU_FOREACH_SAFE() and CPU_NEXT() shorthandmacros.
Signed-off-by: Andreas Färber <afaerber@suse.de>
dump: introduce GuestPhysBlockList
The vmcore must use physical addresses that are visible to the guest, notaddresses that point into linear RAMBlocks. As first step, introduce thelist type into which we'll collect the physical mappings in effect at the...
dump: populate guest_phys_blocks
While the machine is paused, in guest_phys_blocks_append() we register aone-shot MemoryListener, solely for the initial collection of the validguest-physical memory ranges that happens at listener registration time.
For each range that is reported to guest_phys_blocks_region_add(), we...
dump: rebase from host-private RAMBlock offsets to guest-physical addresses
RAMBlock.offset --> GuestPhysBlock.target_startRAMBlock.offset + RAMBlock.length --> GuestPhysBlock.target_endRAMBlock.length --> GuestPhysBlock.target_end -...
cpu: Make first_cpu and next_cpu CPUState
Move next_cpu from CPU_COMMON to CPUState.Move first_cpu variable to qom/cpu.h.
gdbstub needs to use CPUState::env_ptr for now.cpu_copy() no longer needs to save and restore cpu_next.
Acked-by: Paolo Bonzini <pbonzini@redhat.com>...
memory_mapping: Improve qemu_get_guest_memory_mapping() error reporting
Pass any Error out into dump_init() and have it actually stop on errors.Whether it is unsupported on a certain CPU can be checked by looking fora NULL CPUClass::get_memory_mapping field....
cpu: Turn cpu_get_memory_mapping() into a CPUState hook
Change error reporting from return value to Error argument.
Reviewed-by: Jens Freimann <jfrei@linux.vnet.ibm.com>Reviewed-by: Luiz Capitulino <lcapitulino@redhat.com>[AF: Fixed cpu_get_memory_mapping() documentation]...
cpu: Turn cpu_paging_enabled() into a CPUState hook
Relocate assignment of x86 get_arch_id to have all hooks in one place.
Reviewed-by: Jens Freimann <jfrei@linux.vnet.ibm.com>Reviewed-by: Luiz Capitulino <lcapitulino@redhat.com>Signed-off-by: Andreas Färber <afaerber@suse.de>
exec: change RAM list to a TAILQ
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Juan Quintela <quintela@redhat.com>
softmmu: move include files to include/sysemu/
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
exec: move include files to include/exec/
Rename target_phys_addr_t to hwaddr
target_phys_addr_t is unwieldly, violates the C standard (_t suffixes arereserved) and its purpose doesn't match the name (most target_phys_addr_taddresses are not target specific). Replace it with a finger-friendly,...
Fix some more license versions (GPL2+ instead of GPL2)
Signed-off-by: Stefan Weil <sw@weilnetz.de>Signed-off-by: Wen Congyang <wency@cn.fujitsu.com>
dump: remove dumping stuff from cpu-all.h
This simplifies things, because they will only be included for softmmutargets and because the stubs are taken out-of-line in separate files,which in the future could even be compiled only once.
Add API to get memory mapping without do paging
crash does not need the virtual address and physical address mapping, and themapping does not include the memory that is not referenced by the page table.crash does not use the virtual address, so we can create the mapping for all...
introduce a new monitor command 'dump-guest-memory' to dump guest's memory
The command's usage: dump-guest-memory [-p] protocol [begin] [length]The supported protocol can be file or fd:1. file: the protocol starts with "file:", and the following string is...
Add API to create memory mapping list
The memory mapping list stores virtual address and physical address mapping.The virtual address and physical address are contiguous in the mapping.The folloing patch will use this information to create PT_LOAD in the vmcore....
Add API to get memory mapping
Add API to get all virtual address and physical address mapping.If the guest doesn't use paging, the virtual address is equal to the phyicaladdress. The virtual address and physical address mapping is for gdb's user, andit does not include the memory that is not referenced by the page table. So if...