On Fri, Jan 14, 2011 at 11:13:06AM -0700, Eric Blake wrote: > On 01/13/2011 08:45 AM, Cole Robinson wrote: > > @@ -3751,6 +3753,12 @@ qemuBuildCommandLine(virConnectPtr conn, > > goto error; > > > > virCommandAddArg(cmd, str); > > + > > + if (sound->model == VIR_DOMAIN_SOUND_MODEL_ICH6) { > > + virCommandAddArgList(cmd, > > + "-device", "hda-duplex", NULL); > > Suppose I want a guest with two sound cards, both using model='ich6'. > Am I correct that the qemu command line needs exactly one "-device > hda-duplex" to enable sound from either card to get back to the host, > but two "-device intel-hda,..." to implement the two cards in the guest? > If so, this doesn't quite do the right thing (you instantiate the > hda-duplex device twice); you'd need a bool variable set after the first > time you emit this extra device. The 'intel-hda' device should have an 'id' set on the command line. The codec devices should then use that id value to associate themselves with the intel-hda device. QEMU generally allows you to omit all these ids and does some 'sensible' behaviour, but libvirt must never rely on that because we need to guarentee a stable guest ABI. Everything must thus be fully specified Regards, Daniel -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list