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