mbox series

[v2,0/4] reference implementation of RSS

Message ID 20200309083438.2389-1-yuri.benditovich@daynix.com (mailing list archive)
Headers show
Series reference implementation of RSS | expand

Message

Yuri Benditovich March 9, 2020, 8:34 a.m. UTC
Support for VIRTIO_NET_F_RSS feature in QEMU for reference
purpose. Implements Toeplitz hash calculation for incoming
packets according to configuration provided by driver.

Changes from v1:
Changes in standard virtio_net.h moved to virtio-net.c until
standard Linux header is updated and merged to QEMU
Added migration blocker if RSS is negotiated

Yuri Benditovich (4):
  virtio-net: introduce RSS and hash report features
  virtio-net: implement RSS configuration command
  virtio-net: implement RX RSS processing
  virtio-net: block migration if RSS feature negotiated

 hw/net/trace-events            |   3 +
 hw/net/virtio-net.c            | 347 +++++++++++++++++++++++++++++++--
 include/hw/virtio/virtio-net.h |  13 ++
 3 files changed, 352 insertions(+), 11 deletions(-)

Comments

no-reply@patchew.org March 9, 2020, 8:59 a.m. UTC | #1
Patchew URL: https://patchew.org/QEMU/20200309083438.2389-1-yuri.benditovich@daynix.com/



Hi,

This series failed the docker-clang@ubuntu build test. Please find the testing commands and
their output below. If you have Docker installed, you can probably reproduce it
locally.

=== TEST SCRIPT BEGIN ===
#!/bin/bash
make docker-image-ubuntu V=1 NETWORK=1
time make docker-test-clang@ubuntu SHOW_ENV=1 J=14 NETWORK=1
=== TEST SCRIPT END ===

  LINK    qemu-bridge-helper
  LINK    virtiofsd
  LINK    vhost-user-input
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  GEN     lm32-softmmu/hmp-commands.h
  GEN     lm32-softmmu/hmp-commands-info.h
  GEN     lm32-softmmu/config-devices.h
---
  CC      mips-softmmu/hw/vfio/pci-quirks.o
  CC      alpha-softmmu/hw/virtio/virtio.o
  CC      i386-softmmu/hw/vfio/common.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      arm-softmmu/hw/scsi/virtio-scsi.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      mipsel-softmmu/balloon.o
  CC      mips-softmmu/hw/vfio/display.o
  CC      alpha-softmmu/hw/virtio/vhost.o
---
  CC      mipsel-softmmu/hw/mips/mips_malta.o
  CC      arm-softmmu/hw/arm/bcm2836.o
  CC      nios2-softmmu/target/nios2/monitor.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  GEN     trace/generated-helpers.c
  CC      mips64-softmmu/target/mips/machine.o
  CC      i386-softmmu/target/i386/bpt_helper.o
---
  GEN     ppc64-softmmu/config-target.h
  CC      ppc64-softmmu/exec.o
  CC      i386-softmmu/target/i386/seg_helper.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      mipsel-softmmu/qapi/qapi-events-misc-target.o
  CC      arm-softmmu/hw/arm/aspeed_ast2600.o
  CC      aarch64-softmmu/hw/arm/fsl-imx25.o
---
  CC      ppc64-softmmu/exec-vary.o
  CC      arm-softmmu/hw/arm/msf2-soc.o
  CC      ppc-softmmu/hw/scsi/vhost-scsi.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      aarch64-softmmu/hw/arm/kzm.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      i386-softmmu/target/i386/arch_dump.o
  CC      mipsel-softmmu/qapi/qapi-init-commands.o
  CC      ppc64-softmmu/tcg/tcg.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      arm-softmmu/hw/arm/musca.o
  CC      mipsel-softmmu/softmmu/vl.o
  CC      ppc-softmmu/hw/scsi/vhost-user-scsi.o
---
  CC      mipsel-softmmu/target/mips/translate.o
  CC      aarch64-softmmu/hw/arm/fsl-imx6.o
  CC      i386-softmmu/target/i386/kvm.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      ppc-softmmu/hw/vfio/common.o
  CC      ppc64-softmmu/tcg/tcg-op-vec.o
  GEN     riscv32-softmmu/hmp-commands.h
---
  CC      riscv64-softmmu/hw/char/virtio-serial-bus.o
  CC      arm-softmmu/target/arm/m_helper.o
  CC      ppc-softmmu/hw/ppc/rs6000_mc.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      tricore-softmmu/tcg/tcg.o
  CC      s390x-softmmu/accel/tcg/translator.o
  CC      sparc-softmmu/accel/tcg/translate-all.o
---
  CC      ppc-softmmu/hw/ppc/e500.o
  CC      aarch64-softmmu/target/arm/helper-a64.o
  CC      arm-softmmu/gdbstub-xml.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      sparc-softmmu/hw/intc/grlib_irqmp.o
  GEN     aarch64-softmmu/target/arm/decode-sve.inc.c
  CC      sh4eb-softmmu/hw/display/virtio-gpu-base.o
---
  CC      riscv64-softmmu/hw/virtio/vhost-user-fs.o
  CC      unicore32-softmmu/fpu/softfloat.o
  CC      ppc64-softmmu/hw/vfio/amd-xgbe.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      riscv32-softmmu/hw/virtio/virtio-blk-pci.o
  CC      s390x-softmmu/hw/virtio/vhost-backend.o
  CC      unicore32-softmmu/disas.o
---
  CC      s390x-softmmu/hw/virtio/virtio-crypto-pci.o
  CC      unicore32-softmmu/accel/stubs/hax-stub.o
  CC      sh4eb-softmmu/hw/virtio/vhost-user-fs-pci.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      sparc64-softmmu/hw/virtio/vhost-user-fs-pci.o
  CC      sh4eb-softmmu/hw/virtio/virtio-iommu.o
  CC      riscv32-softmmu/hw/riscv/sifive_e_prci.o
---
  CC      riscv64-softmmu/hw/riscv/sifive_e.o
  CC      riscv64-softmmu/hw/riscv/sifive_e_prci.o
  CC      unicore32-softmmu/qapi/qapi-events-machine-target.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      riscv64-softmmu/hw/riscv/sifive_clint.o
  CC      riscv64-softmmu/hw/riscv/sifive_gpio.o
  CC      s390x-softmmu/hw/virtio/virtio-serial-pci.o
---
  CC      sparc64-softmmu/target/sparc/win_helper.o
  CC      ppc64-softmmu/hw/ppc/spapr_ovec.o
  CC      sh4eb-softmmu/target/sh4/cpu.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      riscv64-softmmu/target/riscv/fpu_helper.o
  LINK    riscv32-softmmu/qemu-system-riscv32
  CC      x86_64-softmmu/accel/stubs/hvf-stub.o
---
  LINK    sh4eb-softmmu/qemu-system-sh4eb
  CC      sparc64-softmmu/softmmu/main.o
  CC      riscv64-softmmu/target/riscv/translate.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      x86_64-softmmu/accel/tcg/cpu-exec-common.o
  CC      sparc64-softmmu/trace/generated-helpers.o
  CC      ppc64-softmmu/hw/ppc/pnv_xscom.o
  CC      ppc64-softmmu/hw/ppc/pnv_core.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      riscv64-softmmu/trace/generated-helpers.o
  GEN     xtensa-softmmu/hmp-commands.h
  GEN     xtensa-softmmu/hmp-commands-info.h
---
  CC      xtensa-softmmu/disas.o
  CC      x86_64-softmmu/hw/display/virtio-gpu-3d.o
  CC      ppc64-softmmu/hw/ppc/ppc4xx_devs.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      xtensa-softmmu/arch_init.o
  GEN     aarch64-linux-user/config-target.h
  CC      x86_64-softmmu/hw/display/vhost-user-gpu.o
  CC      aarch64-linux-user/exec.o
  CC      ppc64-softmmu/hw/ppc/sam460ex.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      xtensa-softmmu/cpus.o
  CC      x86_64-softmmu/hw/display/virtio-gpu-pci.o
  CC      xtensaeb-softmmu/exec-vary.o
  CC      ppc64-softmmu/hw/ppc/prep.o
  CC      xtensaeb-softmmu/tcg/tcg.o
  CC      xtensa-softmmu/gdbstub.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      x86_64-softmmu/hw/display/vhost-user-gpu-pci.o
  CC      ppc64-softmmu/hw/ppc/prep_systemio.o
  CC      ppc64-softmmu/hw/ppc/rs6000_mc.o
---
  CC      cris-linux-user/accel/tcg/user-exec.o
  GEN     arm-linux-user/target/arm/decode-vfp-uncond.inc.c
  CC      aarch64-linux-user/target/arm/iwmmxt_helper.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      hppa-linux-user/accel/stubs/hvf-stub.o
  GEN     armeb-linux-user/target/arm/decode-vfp-uncond.inc.c
  GEN     armeb-linux-user/target/arm/decode-a32.inc.c
---
  CC      xtensa-softmmu/hw/virtio/virtio-input-pci.o
  CC      i386-linux-user/accel/stubs/whpx-stub.o
  CC      xtensa-softmmu/hw/virtio/virtio-rng-pci.o
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
  CC      mips-linux-user/tcg/tcg.o
  CC      m68k-linux-user/disas.o
  CC      hppa-linux-user/target/hppa/gdbstub.o
---
  CC      microblazeel-linux-user/tcg/optimize.o
  CC      mips-linux-user/fpu/softfloat.o
  CC      x86_64-softmmu/hw/i386/port92.o
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[1]: *** [Makefile:207: qemu-system-s390x] Error 1
make: *** [Makefile:530: s390x-softmmu/all] Error 2
make: *** Waiting for unfinished jobs....
  CC      x86_64-softmmu/hw/i386/kvmvapic.o
  CC      m68k-linux-user/accel/tcg/cpu-exec-common.o
---
  LINK    mips64-linux-user/qemu-mips64
  LINK    xtensaeb-softmmu/qemu-system-xtensaeb
  LINK    x86_64-softmmu/qemu-system-x86_64
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
/usr/bin/ld: /lib/x86_64-linux-gnu/libtirpc.so.3: warning: common of `rpc_createerr@@GLIBC_2.2.5' overridden by definition from /lib/x86_64-linux-gnu/libc.so.6
rm tests/qemu-iotests/socket_scm_helper.o
Traceback (most recent call last):
  File "./tests/docker/docker.py", line 664, in <module>
---
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['sudo', '-n', 'docker', 'run', '--label', 'com.qemu.instance.uuid=8214e750af21459baf3a5692f45951b0', '-u', '1003', '--security-opt', 'seccomp=unconfined', '--rm', '-e', 'TARGET_LIST=', '-e', 'EXTRA_CONFIGURE_OPTS=', '-e', 'V=', '-e', 'J=14', '-e', 'DEBUG=', '-e', 'SHOW_ENV=1', '-e', 'CCACHE_DIR=/var/tmp/ccache', '-v', '/home/patchew2/.cache/qemu-docker-ccache:/var/tmp/ccache:z', '-v', '/var/tmp/patchew-tester-tmp-8fx86d27/src/docker-src.2020-03-09-04.52.32.16002:/var/tmp/qemu:z,ro', 'qemu:ubuntu', '/var/tmp/qemu/run', 'test-clang']' returned non-zero exit status 2.
filter=--filter=label=com.qemu.instance.uuid=8214e750af21459baf3a5692f45951b0
make[1]: *** [docker-run] Error 1
make[1]: Leaving directory `/var/tmp/patchew-tester-tmp-8fx86d27/src'
make: *** [docker-run-test-clang@ubuntu] Error 2

real    6m42.157s
user    0m8.567s


The full log is available at
http://patchew.org/logs/20200309083438.2389-1-yuri.benditovich@daynix.com/testing.docker-clang@ubuntu/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com