Re: How does libvirt interaction with KVM to create a VM?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 06/29/2012 03:47 PM, Daniel Veillard wrote:
On Fri, Jun 29, 2012 at 03:07:54PM +0800, Dennis Chen wrote:
On 06/29/2012 02:49 PM, Daniel Veillard wrote:
[...]
   virsh talks to the libvirtd daemon, the libvirtd daemon run those
calls from the qemu driver. The documentation is relatively sparse,
but reading what is available will help:

    http://libvirt.org/api.html
    http://libvirt.org/internals.html

so if you want to step though that function you must gdb the libvirt
daemon, not the client application.

Daniel
en, this Daniel is not that Daniel: ) I remember that I joined the
presentation about
libvirt delivered by you in Nanjing University last year.
   ah yes, there is Dan and Daniel that can be a bit confusing :-)

Yes, the document about libvirt is sparse, so I am often confused
when I try to
understand the internals of the relationship between QEMU, KVM and
libvirt...
   ah, yes the overall stack is a bit complex.

Let me go through the link you mentioned to see if I can understand
libvirtd comes from
and the relationship with libvirt...
   Basically for some driver the application talk to the libvirt daemon
to implement all the entry points of a driver (qemu/lxc for example),
it uses the remote driver to connect to the daemon, and the daemon calls
the real driver. Sometimes, the driver in the applcation does the work
by talking directly to the hypervisor (ESX/Hyper-V).
   So if you want to debug/gdb the qemu code you must attach to libvirtd
daemon not to the application.
   See slide 5 of the CLK slides ;-)
     http://veillard.com/Talks/CLKLinux2011.pdf

Daniel

Actually I've downloaded your ppt from http://v.csdn.hudong.com/linuxkernal2011/page2.html,
slide 5 and 12 is useful for me because it's a overview picture.

About daemon, in my system:

root@dennis-:/home/dennis/workspace/Software# ps aux | grep libvirtd
root 20308 0.0 0.1 102908 3540 ? Sl 15:25 0:00 /usr/sbin/libvirtd -d

so the libvirtd daemon is there, but I have questions about this daemon:
1. where is the daemon source code, it's in the libvirt tar package?
2. Who is responsible to start this daemon and when?

BRs,
Dennis

_______________________________________________
libvirt-users mailing list
libvirt-users@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvirt-users


[Index of Archives]     [Virt Tools]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]

  Powered by Linux