On Fri, Oct 07, 2011 at 02:56:56PM +0200, Jan Kiszka wrote: > On 2011-10-07 14:25, Wen Congyang wrote: > > δΊ 2011/10/7 18:16, Jan Kiszka ει: > >> On 2011-10-07 11:46, Wen Congyang wrote: > >>> Currently, virsh dump uses monitor command migrate to dump guest's memory > >>> to file, and we can use crash to analyze the file. > >>> > >>> Unfortunately, virsh dump can not work if guest uses host pci device. The > >>> reason is that the device's status is also needed to migrate to remote > >>> machine, > >>> and the host pci device's status is not stored in qemu. So it is > >>> unmigratable. > >>> > >>> I think we can we can add a option to qmp command migrate(eg: skip) to > >>> allow > >>> the user to skip the check, and this option should be used only when > >>> dumping > >>> the guest's memory. > >> > >> Why not simply attach gdb? That works independently of migration. > > > > If qemu has some problem, we can use gdb to debug it. But if guest os > > has problem > > (eg:kernel panic and kdump does not work), we should dump guest's memory > > and use > > crash to analyze. > > qemu-system-xxx -s (or "gdbserver" via monitor if qemu is already > running), gdb vmlinux, then "target remote :1234".
That is already possible, but that is not what we need for 'virsh dump'. The goal of that API is to provide a coredump of the guest, which can then be analysed off-node/site. While in theory you could attach GDB to the QEMU process and use GDB commands to then write out a coredump this isn't really satisfactory because too many large companies have security/audit compliance rules which forbid installation of developer tools (compilers, debuggers, etc) on production servers. So we cannot assume GDB is available. We need to be able to create a coredump natively from either QEMU or libvirt, with minimal of external tools. Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|