On 07/15/2012 12:21 AM, malc wrote:
On Sun, 15 Jul 2012, agraham wrote:
On 07/15/2012 12:01 AM, malc wrote:
On Sat, 14 Jul 2012, agraham wrote:
[..snip..]
/usr/bin/qemu-kvm -usb -no-fd-bootchk -M pc -enable-kvm -m 128 -drive
file=/Storage/Windows/Images/Clone_of_Windows-XP-x32,if=none,media=disk,cache=unsafe,aio=native,snapshot,format=qcow2,id=virtio-blk-pci0
-device
virtio-blk-pci,addr=0x05,bus=pci.0,drive=virtio-blk-pci0,id=storage0
-device
virtio-net-pci,mac=52:e0:0a:14:00:03,netdev=hostnet0,addr=0x09,bus=pci.0,id=virtio-net-pci0
-netdev tap,script=no,downscript=no,id=hostnet0 -usbdevice tablet -vga std
-vnc :1100,lossy -rtc base=localtime,clock=host -global
kvm-pit.lost_tick_policy=discard -chardev
socket,id=monitor,path=windows-xp-1.monitor,server,nowait -mon
chardev=monitor,mode=readline -pidfile windows-xp-1.pid -chroot
/var/mist/chroot -runas qemu -snapshot -S -daemonize -name windows-xp-1
-uuid
cc0df7d6-26e4-4c60-911e-cd107935c6e6 -boot order=c -cpu kvm32 -soundhw
ac97,es1370
Replacing es1370 with sb16 or removing it does not change anything.
Once again, works for me, not with the insane command line like above
though, bisecting is your only option unless someone has bright ideas.
Are you using the AC97 driver?
It shouldn't matter, but i've used SB16 under DOS.
Bi-section complete :)
I've found the root cause and hopefully you should be able to reproduce
the issue.
There was a configure option introduced called "--enable-mixemu".
--enable-mixemu enable mixer emulation
Could you rebuild with this switch added to your configure, you should
the experience the issue as I do.
The option was added in Fedora qemu-1.0-x which included QEMU-0.15-1 + a
ton of patches. after rebuilding / removing patches /rebuilding etc.. as
you advised, all patches where removed and the problem still existed!
that lead me to the difference in the configure options.
which lead to:
http://git.qemu.org/?p=qemu.git;a=blob;f=audio/mixeng.c#l349
349 void mixeng_volume (struct st_sample *buf, int len, struct
mixeng_volume *vol)
350 {
351 #ifdef CONFIG_MIXEMU
352 if (vol->mute) {
353 mixeng_clear (buf, len);
354 return;
355 }
I see the words "mute" + "clear", which is what I originally experienced :)
I'm not a C programmer so cannot fix this myself, but I imagine that any
mixemu code should do nothing if QEMU_AUDIO_DRV=none.
Interestingly:
# Copyright (c) 2004-2005 Vassili Karpov (malc)
Any connection with you?
Lastly, I think it would be more efficiency and bandwidth friendly to
zero the length such that no data would be sent to other clients that do
use this feature (I assume spice), after all there really is no point in
sending zero bytes.
Even when zeros are sent to the sound device you will often here a click
or a crackle for a fraction of a second, so by no sending anything you
would avoid that.
Albert