qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v3] VMXNET3 paravirtual NIC device implementatio


From: Gerhard Wiesinger
Subject: Re: [Qemu-devel] [PATCH v3] VMXNET3 paravirtual NIC device implementation
Date: Fri, 9 Mar 2012 07:41:45 +0100 (CET)
User-agent: Alpine 2.02 (LFD 1266 2009-07-14)

Hello Dmitry,

Issue is solved in V3 but I'm still having problems (core dumps) with qemu and qemu-kvm:

1.) qemu crashes
works well with basic ping tests but with generating load on the network interface (my standard netio tests (netio -s, netio -t server), http://www.ars.de/ars/ars.nsf/docs/netio)
under same Knoppix testcase cores. Details are below.

Also performance as far as the test runs was not high (should be
50000 kByte/s):
Packet size  1k bytes:  4181 KByte/s Tx,  5276 KByte/s Rx.
Details below.

2.) qemu-kvm core dump on startup, core dump details below
-device vmxnet3,mac=1a:46:0b:ca:bc:7e,vlan=1,romfile=
-net tap,ifname=tap1,script=no,downscript=no,vlan=1
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
qemu: hardware error: Failed to initialize MSI-X, configuration is inconsistent.

Any ideas?
Can you please retest this scenario.

Please add Reported-by lines ...

Thnx.

Ciao,
Gerhard

--
http://www.wiesinger.com/

1.) qemu backtrace
[vmxnet3][WR][vmxnet3_peer_has_vnet_hdr]: Peer has no virtio extension. Task offloads will be emulated. qemu-system-x86_64: /root/download/qemu/git/qemu/hw/vmxnet_utils.c:186: eth_setup_ip4_fragmentation: Assertion `0 == frag_offset % (8)' failed.
#0  0x00007f5f53c03285 in raise () from /lib64/libc.so.6
#1  0x00007f5f53c04b9b in abort () from /lib64/libc.so.6
#2  0x00007f5f53bfbe9e in __assert_fail_base () from /lib64/libc.so.6
#3  0x00007f5f53bfbf42 in __assert_fail () from /lib64/libc.so.6
#4  0x00007f5f564ce378 in eth_setup_ip4_fragmentation (l2hdr=<optimized out>, l2hdr_len=<optimized 
out>, l3hdr=<optimized out>,    l3hdr_len=<optimized out>, l3payload_len=<optimized out>, 
frag_offset=<optimized out>, more_frags=false)    at /root/download/qemu/git/qemu/hw/vmxnet_utils.c:186
#5  0x00007f5f564cd325 in vmxnet3_txpkt_do_sw_fragmentation (s=0x7f5f57c340a0, 
p=0x7f5f57c35340)    at /root/download/qemu/git/qemu/hw/vmxnet3.c:955
#6  0x00007f5f564cdac1 in vmxnet3_send_with_sw_offloads (pkt=<optimized out>, 
s=0x7f5f57c340a0) at /root/download/qemu/git/qemu/hw/vmxnet3.c:985
#7  vmxnet3_send_packet (qidx=0, pkt=<optimized out>, s=<optimized out>) at 
/root/download/qemu/git/qemu/hw/vmxnet3.c:1231
#8  vmxnet3_process_tx_queue (qidx=<optimized out>, s=<optimized out>) at 
/root/download/qemu/git/qemu/hw/vmxnet3.c:1306
#9  vmxnet3_io_bar0_write (opaque=<optimized out>, addr=<optimized out>, val=<optimized 
out>, size=<optimized out>)    at /root/download/qemu/git/qemu/hw/vmxnet3.c:1630
#10 0x00007f5f56575ba0 in access_with_adjusted_size (addr=1536, value=0x7f5f3144e7e0, size=4, 
access_size_min=<optimized out>,    access_size_max=<optimized out>, 
access=0x7f5f56575ac0 <memory_region_write_accessor>, opaque=0x7f5f57c344d0)    at 
/root/download/qemu/git/qemu/memory.c:359
#11 0x00007f5f5657a6ec in memory_region_dispatch_write (size=4, data=39, 
addr=1536, mr=0x7f5f57c344d0)    at /root/download/qemu/git/qemu/memory.c:928
#12 io_mem_write (io_index=<optimized out>, addr=1536, val=<optimized out>, 
size=4) at /root/download/qemu/git/qemu/memory.c:1512
#13 0x0000000049463183 in ?? ()
#14 0x0000000000000000 in ?? ()


2.) qemu-kvm backtrace
#0  0x00007f25e4330285 in raise () from /lib64/libc.so.6
#1  0x00007f25e4331b9b in abort () from /lib64/libc.so.6
#2  0x00007f25e6c6fe7a in hw_error (fmt=<optimized out>) at 
/root/download/qemu/git/qemu-kvm/cpus.c:357
#3  0x00007f25e6bf1f01 in vmxnet3_pci_init (dev=0x7f25e8dced80) at 
/root/download/qemu/git/qemu-kvm/hw/vmxnet3.c:2631
#4  0x00007f25e6ce01c6 in pci_qdev_init (qdev=0x7f25e8dced80) at 
/root/download/qemu/git/qemu-kvm/hw/pci.c:1589
#5  0x00007f25e6c14d4a in qdev_init (dev=0x7f25e8dced80) at 
/root/download/qemu/git/qemu-kvm/hw/qdev.c:150
#6  0x00007f25e6c1024e in qdev_device_add (opts=0x7f25e8ccdb80) at 
/root/download/qemu/git/qemu-kvm/hw/qdev-monitor.c:465
#7  0x00007f25e6bebff9 in device_init_func (opts=<optimized out>, 
opaque=<optimized out>) at /root/download/qemu/git/qemu-kvm/vl.c:1827
#8  0x00007f25e6c1e492 in qemu_opts_foreach (list=<optimized out>, func=0x7f25e6bebfe0 
<device_init_func>, opaque=0x0,    abort_on_failure=<optimized out>) at 
qemu-option.c:1053
#9  0x00007f25e6b184b5 in main (argc=<optimized out>, argv=<optimized out>, 
envp=<optimized out>) at /root/download/qemu/git/qemu-kvm/vl.c:3543

On Wed, 7 Mar 2012, Dmitry Fleytman wrote:

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.
Changes in V2:
  License text changed accoring to community suggestions
  Standard license header from GPLv2+ - licensed QEMU files used

Dmitry Fleytman (1):
 VMXNET3 paravirtual NIC device implementation

Makefile.objs           |    1 +
default-configs/pci.mak |    1 +
hw/pci.c                |    2 +
hw/pci.h                |    1 +
hw/virtio-net.h         |   13 +-
hw/vmware_utils.h       |  131 +++
hw/vmxnet3.c            | 2744 +++++++++++++++++++++++++++++++++++++++++++++++
hw/vmxnet3.h            |  727 +++++++++++++
hw/vmxnet3_debug.h      |  104 ++
hw/vmxnet_utils.c       |  202 ++++
hw/vmxnet_utils.h       |  263 +++++
iov.c                   |   27 +
iov.h                   |    3 +
net.c                   |    2 +-
net/checksum.h          |    7 +
15 files changed, 4221 insertions(+), 7 deletions(-)
create mode 100644 hw/vmware_utils.h
create mode 100644 hw/vmxnet3.c
create mode 100644 hw/vmxnet3.h
create mode 100644 hw/vmxnet3_debug.h
create mode 100644 hw/vmxnet_utils.c
create mode 100644 hw/vmxnet_utils.h

--
1.7.7.6






reply via email to

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