At 02/17/2012 12:30 AM, Dave Anderson Wrote:
----- Original Message -----
>>
>> OK, so then I don't understand what you mean by "may be the same"?
>>
>> You didn't answer my original question, but if I understand you correctly,
>> it would be impossible for the qemu host to create a PT_LOAD segment that
>> describes an x86_64 guest's __START_KERNEL_map region, because the host
>> doesn't know that what kind of kernel the guest is running.
>
> Yes. Even if the guest is linux, it is still impossible to do it. Because
> the guest maybe in the second kernel.
>
> qemu-dump walks all guest's page table and collect virtual address and
> physical address mapping. If the page is not used by guest, the virtual is set
> to 0. I create PT_LOAD according to such mapping. So if the guest is linux,
> there may be a PT_LOAD segment that describes __START_KERNEL_map region.
> But the information stored in PT_LOAD maybe for the second kernel. If crash
> uses it, crash will see the second kernel, not the first kernel.
Just to be clear -- what do you mean by the "second" kernel? Do you
mean that a guest kernel crashed guest, and did a kdump operation,
and that second kdump kernel failed somehow, and now you're trying
to do a "virsh dump" on the kdump kernel?
Yes, the second kernel means kdump kernel. If kdump failed, the user can
use it to dump the guest's memory.
Thanks
Wen Congyang
Dave