qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v4 0/9] VMXNET3 paravirtual NIC device implement


From: Gerhard Wiesinger
Subject: Re: [Qemu-devel] [PATCH v4 0/9] VMXNET3 paravirtual NIC device implementation
Date: Sun, 25 Mar 2012 08:39:41 +0200
User-agent: Mozilla/5.0 (Windows NT 6.0; WOW64; rv:11.0) Gecko/20120312 Thunderbird/11.0

Hello Dmitry,

Tried it also on qemu, without success. Same behavior.

I sniffed also with tcpdump:
ICMP traffic is dumped immediately but TCP traffic not. Looks like a TCP problem.

For config and other details see below.

Ciao,
Gerhard

On 21.03.2012 07:59, Gerhard Wiesinger wrote:
On 20.03.2012 09:00, Dmitry Fleytman wrote:
Hello, Gerhard

I've tested telnet connections on Knoppix running on QEMU-KVM with patch V5.
Everything works fine on my setup.
What is your network setup? How do you connect tap1 interface to the
outer world?

Hello Dmitry ,

Did you also test with tap?

As patch V2 (i think it was that version) worked well but was not stable I'm guessing that there might be some other problems:
1.) tap interface?
2.) TCP offload checksumming (as far as I saw I think there were some changes).

Same command line with pcnet is also ok (changed only interface card). My network setup for testing several adapters is stable since about one year.
/root/download/qemu/git/qemu-kvm/x86_64-softmmu/qemu-system-x86_64
-drive if=ide,index=3,media=cdrom,file=ISO/KNOPPIX_V6.7.1CD-2011-09-14-DE.iso
-boot order=cad,menu=on -m 2048 -k de -vga vmware -vnc :0
-bios /root/download/seabios/git/seabios/out/bios.bin
-chardev stdio,id=seabios -device isa-debugcon,iobase=0x402,chardev=seabios
-device pcnet,mac=1a:46:0b:ca:bc:7e,vlan=1,romfile=
-net tap,ifname=tap1,script=no,downscript=no,vlan=1


I use a bridge on eth0 and connect the tap interfaces:
brctl  show
bridge name     bridge id               STP enabled     interfaces
br0             8000.001fc689da45       no              eth0
                                                        tap0
                                                        tap1



Also, since you have ping failure to init MSI-X is not related to the
problem - device just falls back to MSI interrupts,
but anyway, why does it fail? Could it be some QEMU/KVM versions
incompartibility?

Don't know why it fails. I'm using latest git QEMU/KVM version.

Will try it on qemu only today in the evening.

Thnx.

Ciao,
Gerhard

Best regards,
Dmitry Fleytman.

On Mon, Mar 19, 2012 at 9:24 PM, Gerhard Wiesinger<address@hidden> wrote:
Hello Dmitry,

Tried also v5 patch without success:
/root/download/qemu/git/qemu-kvm/x86_64-softmmu/qemu-system-x86_64
-drive
if=ide,index=3,media=cdrom,file=ISO/KNOPPIX_V6.7.1CD-2011-09-14-DE.iso
-boot order=cad,menu=on
-m 2048 -k de -vga vmware -vnc :0
-bios /root/download/seabios/git/seabios/out/bios.bin
-chardev stdio,id=seabios -device isa-debugcon,iobase=0x402,chardev=seabios
-device vmxnet3,mac=1a:46:0b:ca:bc:7e,vlan=1,romfile=
-net tap,ifname=tap1,script=no,downscript=no,vlan=1

ping ok, but outside tcp communication fails:
# timeout Knoppix =>  outside
telnet 192.168.0.2 22
# timeout outside =>  Knoppix  failes
telnet 192.168.0.30 22

RTL8139 with same command line is ok.

Maybe that helps directly at startup:
kvm_msix_vector_add: kvm_add_msix failed: No space left on device
[vmxnet3][WR][vmxnet3_use_msix_vectors]: Failed to use MSI-X vector 9, error
-28
[vmxnet3][WR][vmxnet3_init_msix]: Failed to use MSI-X vectors, error 0
[vmxnet3][WR][vmxnet3_pci_init]: Failed to initialize MSI-X, configuration
is inconsistent.
[vmxnet3][WR][vmxnet3_peer_has_vnet_hdr]: Peer has no virtio extension. Task
offloads will be emulated.

I'm using git qemu-kvm and not git qemu.

Thnx.

Ciao,
Gerhard


On 18.03.2012 16:30, Dmitry Fleytman wrote:
Hello, Gerhard

I've rechecked SSH connection both incoming and outgoing with patch v5.
Everything works fine.
If you still see problems, please, provide your exact configuration.

Thanking you for your support,
Dmitry Fleytman.


On Sun, Mar 18, 2012 at 10:29 AM, Gerhard Wiesinger
<address@hidden>    wrote:
Hello,

I'm still having problems with v4 patch: ping works well, even with large
packet sizes but ssh doesn't work at all.
Tested with Knoppix 6.7 and Fedora 16.

Thnx.

Ciao,
Gerhard


On 15.03.2012 22:08, Dmitry Fleytman wrote:
This set of patches implements VMWare VMXNET3 paravirtual NIC device.
The device supports of all the device features including offload
capabilties,
VLANs and etc.
The device is tested on different OSes:
     Fedora 15
     Ubuntu 10.4
     Centos 6.2
     Windows 2008R2
     Windows 2008 64bit
     Windows 2008 32bit
     Windows 2003 64bit
     Windows 2003 32bit

Changes in V4:
    Fixed a few problems uncovered by NETIO test suit
Assertion on failure to initialize MSI/MSI-X replaced with warning
    message and fallback to Legacy/MSI respectively

      Reported-by: Gerhard Wiesinger<address@hidden>

Various coding style adjustments and patch split-up as suggested by
Anthony Liguori

      Reported-by: Anthony Liguori<address@hidden>

    Live migration support added

Changes in V3:
Fixed crash when net device that is used as network fronted has no
    virtio HDR support.
Task offloads emulation for cases when net device that is used as
    network fronted has no virtio HDR support.

      Reported-by: Gerhard Wiesinger<address@hidden>

Changes in V2:
    License text changed accoring to community suggestions
    Standard license header from GPLv2+ - licensed QEMU files used

Dmitry Fleytman (9):
   Adding missing flag VIRTIO_NET_HDR_F_DATA_VALID from Linux kernel
     source tre     Reformatting comments according to checkpatch.pl
     requirements
Adding utility function net_checksum_add_cont() that allows checksum
        calculation of scattered data with odd chunk sizes
   Adding utility function iov_net_csum_add() for iovec checksum
     calculation
   MSI-X state save/load invocations moved to PCI Device save/load
callbacks to avoid code duplication in MSI-X-enabled devices
     that support live migration
   Header with various utility functions shared by VMWARE SCSI and
     network devi
   Various utility functions used by VMWARE network devices
   Packet abstraction used by VMWARE network devices
   VMXNET3 paravirtual device implementation
   VMXNET3 paravirtualized device integration.     Interface type
     "vmxnet3" added.

  Makefile.objs           |    1 +
  default-configs/pci.mak |    1 +
  hw/pci.c                |    7 +
  hw/pci.h                |    1 +
  hw/virtio-net.h         |   13 +-
  hw/virtio-pci.c         |    2 -
  hw/vmware_utils.h       |  122 +++
  hw/vmxnet3.c            | 2435
+++++++++++++++++++++++++++++++++++++++++++++++
  hw/vmxnet3.h            |  757 +++++++++++++++
  hw/vmxnet_debug.h       |  121 +++
  hw/vmxnet_pkt.c         | 1243 ++++++++++++++++++++++++
  hw/vmxnet_pkt.h         |  479 ++++++++++
  hw/vmxnet_utils.c       |  165 ++++
  hw/vmxnet_utils.h       |  320 +++++++
  iov.c                   |   29 +
  iov.h                   |    3 +
  net.c                   |    2 +-
  net/checksum.c          |   13 +-
  net/checksum.h          |   14 +-
  19 files changed, 5712 insertions(+), 16 deletions(-)
  create mode 100644 hw/vmware_utils.h
  create mode 100644 hw/vmxnet3.c
  create mode 100644 hw/vmxnet3.h
  create mode 100644 hw/vmxnet_debug.h
  create mode 100644 hw/vmxnet_pkt.c
  create mode 100644 hw/vmxnet_pkt.h
  create mode 100644 hw/vmxnet_utils.c
  create mode 100644 hw/vmxnet_utils.h







reply via email to

[Prev in Thread] Current Thread [Next in Thread]