
On 07/02/2012 06:14 PM, Daniel P. Berrange wrote:
On Mon, Jul 02, 2012 at 05:47:08PM +0800, Li Zhang wrote:
Hi,
I have suffered several times on both x86 machine and power machine.
When we want to use libvirt to create on VMs, it reports "unknown OS type hvm".
We can't get <guest> capabilities.
The log is as the following(log_level=1):
2003-01-02 01:21:39.895+0000: 12214: error : virDomainDefParseXML:8491 : unknown OS type hvm 2003-01-02 01:21:39.896+0000: 12214: error : virDomainDefParseXML:8491 : unknown OS type hvm 2003-01-02 01:22:00.135+0000: 12207: error : qemuCapsComputeCmdFlags:1218 : unsupported configuration: this qemu binary requires libvirt to be compiled with yajl 2003-01-02 01:22:13.342+0000: 12207: error : qemuCapsComputeCmdFlags:1218 : unsupported configuration: this qemu binary requires libvirt to be compiled with yajl
Hmm, this shows a flaw in the way we deal with QEMU. When detecting QEMU for the purpose of the capabilities XML, IMHO, we should *not* be raising this error. Errors in detecting capabilities are more or less invisible to users of libvirt, since they do not occur in response to a specific API call.
Thus, we should have reported the capabilities XML as normal here, and only reported the YAJL compatibility error at the time the user tries to actually start a guest.
Got it. I will clean this to avoid the same problem in the future.
Daniel
-- Best Regards Li IBM LTC, China System&Technology Lab, Beijing