openstack windows虚拟机声卡问题

在使用openstack创建虚拟机后,一开始并未发现声音设备,于是在代码中强制加了一个声卡设备

    diff -aruN nova-2015.1.0.org/nova/virt/libvirt/config.py nova-2015.1.0/nova/virt/libvirt/config.py
--- nova-2015.1.0.org/nova/virt/libvirt/config.py   2015-10-29 15:01:39.819057624 +0800
+++ nova-2015.1.0/nova/virt/libvirt/config.py   2015-10-29 15:03:36.093143274 +0800
@@ -1329,7 +1329,14 @@

 return dev

-
+class LibvirtConfigGuestSound(LibvirtConfigGuestDevice): #wz
+    def __init__(self, **kwargs):
+        super(LibvirtConfigGuestSound, self).__init__(root_name="sound",**kwargs)
+        self.type = "ich6" 
+    def format_dom(self):
+        dev = super(LibvirtConfigGuestSound, self).format_dom()
+        dev.set("model", self.type)
+        return dev
 class LibvirtConfigMemoryBalloon(LibvirtConfigGuestDevice):
 def __init__(self, **kwargs):
     super(LibvirtConfigMemoryBalloon, self).__init__(
@@ -1426,13 +1433,14 @@
                     self.slot = sub.get('slot')
                     self.function = sub.get('function')

 class LibvirtConfigGuestCharBase(LibvirtConfigGuestDevice):

diff -aruN nova-2015.1.0.org/nova/virt/libvirt/driver.py nova-2015.1.0/nova/virt/libvirt/driver.py
--- nova-2015.1.0.org/nova/virt/libvirt/driver.py   2015-10-29 15:01:39.819057624 +0800
+++ nova-2015.1.0/nova/virt/libvirt/driver.py   2015-10-29 15:03:25.752317678 +0800
@@ -3889,6 +3889,9 @@
     if max_vram and video_ram:
         video.vram = video_ram * units.Mi / units.Ki
     guest.add_device(video)
+        sound = vconfig.LibvirtConfigGuestSound()
+        guest.add_device(sound)    
+

 def _add_qga_device(self, guest, instance):
     qga = vconfig.LibvirtConfigGuestChannel()

经过测试发现,
win7中使用ich6驱动也可以自动匹配,
但是在XP中无法安装驱动
使用ac97则XP和WIN7中都可以使用,所以可改为ac97

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

day walker

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值