[openstack-dev] [nova][libvirt]How to customize cpu features in nova

Daniel P. Berrange berrange at redhat.com
Mon Jan 5 11:32:06 UTC 2015

On Tue, Dec 23, 2014 at 05:27:20PM +0800, CloudBeyond wrote:
> Dear Developers,
> Sorry for interrupting if i sent to wrong email group, but i got a problem on
> running Solaris 10 on icehouse openstack.
>  I found it is need to disable CPU feature x2apic so that solaris 10 NIC
> could work in KVM as following code in libvirt.xml
>   <cpu mode="custom" match="exact">
>     <model>SandyBridge</model>
>     <vendor>Intel</vendor>
>     <feature policy='disable' name='x2apic'/>
>   </cpu>
> if without line
>   <feature policy='disable' name='x2apic'/>
> the NIC in Solaris could not work well.
> And I try to migrate the KVM libvirt xml to Nova. I found only two options
> to control the result.
> First I used default setting cpu_mdoe = None in nova.conf , the Solaris 10
> would keep rebooting before enter desktop env.
> And then I set cpu_mode = custom, cpu_model = SandyBridge. Solaris 10 could
> start up but NIC not work.
> I also set cpu_mode = host-model, cpu_model = None. Solaris 10 could work
> but NIC not.
> I read the code located
> in /usr/lib/python2.7/dist-packages/nova/virt/libvirt/driver.py. Is that
> possible to do some hacking to customize the cpu feature?

Correct, the only way is to change the code.

Really a bug needs to be filed against QEMU to report the problem with
x2apic, because it is not something that should be allowed to break any
guest OS.

|: 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 :|

More information about the OpenStack-dev mailing list