On Thu, Oct 22, 2009 at 10:23:44AM -0700, Shirley Ma wrote: > On Thu, 2009-10-22 at 15:13 +0200, Michael S. Tsirkin wrote: > > OK, I sent a patch that should fix the errors for you. > > Could you please confirm, preferably on-list, whether > > the patch makes the errors go away for you with > > userspace virtio? > > Confirmed, your patch has fixed irq handler mismatch errors. > > > However, as I said previously, it's good to fix them but I think > > they are unrelated to the fact that vhost does not work > > for you. > > Yes, agreed. One observation is when I enable PCI MSI in guest kernel, I > found that even without vhost supportin host kernel the network doesn't > work either. Yes, but that's on Avi's qemu-kvm.git, so probably merge problems again. > So I think this is nothing related to vhost. I need to find > why PCI MSI doesn't work for me. Probably just bisect until you find the bad commit. > > Shirley, if you have the time, please send details > > on your setup and observations on tcpdump output > > in both guest and host with vhost enabled. > > Yes, here are details: > > HW and distros: > T61 laptop, cpu is > vendor_id : GenuineIntel > cpu family : 6 > model : 15 > model name : Intel(R) Core(TM)2 Duo CPU T7700 @ 2.40GHz > stepping : 11 > cpu MHz : 2393.902 > cache size : 4096 KB > > Guest installed Fedora 10, Host installed Fedora 10 and updated to > Fedora11, both doesn't work with guest kernel MSI enabled w/i, w/o vhost > support. So, IIUC, my tree with MSI without vhost works? > > Source trees: > clone your qemu-kvm and vhost git. host kernel is vhost git, guest > kernel 2.6.32-rc5 > > Compile option: > qemu: ./configure (default target-list = x86_64-softmmu) > guest kernel: PCI MSI, virio enabled > host kernel: vhost, kvm, evenfd all enabled > > I tried tap, raw, vnet0, eth0, what are vnet0 and eth0? Do you have a bridge in host? What do brctl show and ifconfig -a show in host? > here are some qemu commandline example: > > mst/qemu-kvm/x86_64-softmmu/qemu-system-x86_64 > -s /home/xma/images/fedora10-2-vm -name guest2 -boot c -M pc -m 512 -smp > 1 -monitor pty -drive > file=/home/xma/images/fedora10-2-vm,if=virtio,boot=on -net > raw,ifname=eth0 -net nic,macaddr=54:52:00:46:26:80,model=virtio,vhost > > mst/qemu-kvm/x86_64-softmmu/qemu-system-x86_64 > -s /home/xma/images/fedora10-2-vm -name guest2 -boot c -M pc -m 512 -smp > 1 -monitor pty -drive > file=/home/xma/images/fedora10-2-vm,if=virtio,boot=on -net > raw,ifname=vnet0 -net nic,model,macaddr=54:52:00:46:26:80=virtio,vhost > > Please let me know what I can do next. I am eager to test the vhost > performance for both latency and bw. > tcpdump output: > When I ping from guest to host, I didn't see any packets from any > interfaces, not even an arp request. > > When I ping from host to guest, guest interface didn't see any packets > either, not even an arp request. Did you try tcpdump on the tap interface in host? > Thanks for your help! > Shirley > > > > Possibly we'll have to debug this in vhost in host kernel. I would debug this directly, it's just that my setup is somehow different and I do not see this issue, otherwise I would not waste your time. Can we add some printks? handle_tx has this at the top: if (!sock || !sock_writeable(sock->sk)) return; Could you please add printk(KERN_ERR "%s: !sock = %d, !sock || !sock_writeable(sock->sk) = %d", __func__, !sock , !sock || !sock_writeable(sock->sk)); *Before* these checks? Then make modules modules_install rmmod vhost_net insmod vhost_net and re-run. If you want me to send a patch that does this, let me know please. Thanks! -- MST -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html