On 04/26/2018 09:50 AM, 李卓瑶 wrote:
Thanks for your reply
what i want to know is that why there are many devices in $domain.xml, actully , i choose
nothing in virt-manager?
so, Do i need to look at qemuDomainDefineXMLFlags()?
Because we try to have 1:1 relationship between domain XML configuration
and devices as seen by guest. Even when you don't select anything in
virt-manager the domain will definitely have a PCI root controller,
controller for disk bus (be it sata, scsi, ide, ..), then it'll also
have a virtual NIC, some memory/cpu configuration, and so on.
In the code, these devices are added once XML is parsed by
virDomainDefPostParseInternal(). Each driver can pass this xmlopt
structure filled in with callbacks (take a look at
virQEMUDriverCreateXMLConf()). So in the end, devices are added only
after XML is parsed. However, it is not done all in one place. For
instance, controllers are added during device address assignment, other
devices are added in PostParse callbacks, and so on.
hours ago, i thought it's qemuDomainCreateWithFlags.
No. This creates so called transient domains.
https://wiki.libvirt.org/page/VM_lifecycle#Transient_guest_domains_vs_Per...
Michal