qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 78258d: net/tap: Added TUNSETSTEERINGEBPF cod


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] 78258d: net/tap: Added TUNSETSTEERINGEBPF code.
Date: Fri, 04 Jun 2021 05:39:24 -0700

  Branch: refs/heads/staging
  Home:   https://github.com/qemu/qemu
  Commit: 78258debe03c6034365884cbfb05679d6938aaac
      
https://github.com/qemu/qemu/commit/78258debe03c6034365884cbfb05679d6938aaac
  Author: Andrew Melnychenko <andrew@daynix.com>
  Date:   2021-06-04 (Fri, 04 Jun 2021)

  Changed paths:
    M net/tap-linux.h

  Log Message:
  -----------
  net/tap: Added TUNSETSTEERINGEBPF code.

Additional code that will be used for eBPF setting steering routine.

Signed-off-by: Andrew Melnychenko <andrew@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 8f364e344c3e71d4cc4e683d21241f6c36d62a5e
      
https://github.com/qemu/qemu/commit/8f364e344c3e71d4cc4e683d21241f6c36d62a5e
  Author: Andrew Melnychenko <andrew@daynix.com>
  Date:   2021-06-04 (Fri, 04 Jun 2021)

  Changed paths:
    M include/net/net.h
    M net/tap-bsd.c
    M net/tap-linux.c
    M net/tap-solaris.c
    M net/tap-stub.c
    M net/tap.c
    M net/tap_int.h

  Log Message:
  -----------
  net: Added SetSteeringEBPF method for NetClientState.

For now, that method supported only by Linux TAP.
Linux TAP uses TUNSETSTEERINGEBPF ioctl.

Signed-off-by: Andrew Melnychenko <andrew@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: f3fa412de28ae3cb31d38811d30a77e4e20456cc
      
https://github.com/qemu/qemu/commit/f3fa412de28ae3cb31d38811d30a77e4e20456cc
  Author: Andrew Melnychenko <andrew@daynix.com>
  Date:   2021-06-04 (Fri, 04 Jun 2021)

  Changed paths:
    A tools/ebpf/Makefile.ebpf
    A tools/ebpf/rss.bpf.c

  Log Message:
  -----------
  ebpf: Added eBPF RSS program.

RSS program and Makefile to build it.
The bpftool used to generate '.h' file.
The data in that file may be loaded by libbpf.
EBPF compilation is not required for building qemu.
You can use Makefile if you need to regenerate rss.bpf.skeleton.h.

Signed-off-by: Yuri Benditovich <yuri.benditovich@daynix.com>
Signed-off-by: Andrew Melnychenko <andrew@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 46627f41b6b781885c64a2b12814060a7ca8da36
      
https://github.com/qemu/qemu/commit/46627f41b6b781885c64a2b12814060a7ca8da36
  Author: Andrew Melnychenko <andrew@daynix.com>
  Date:   2021-06-04 (Fri, 04 Jun 2021)

  Changed paths:
    M configure
    A ebpf/ebpf_rss-stub.c
    A ebpf/ebpf_rss.c
    A ebpf/ebpf_rss.h
    A ebpf/meson.build
    A ebpf/rss.bpf.skeleton.h
    A ebpf/trace-events
    A ebpf/trace.h
    M meson.build
    M meson_options.txt

  Log Message:
  -----------
  ebpf: Added eBPF RSS loader.

Added function that loads RSS eBPF program.
Added stub functions for RSS eBPF loader.
Added meson and configuration options.

By default, eBPF feature enabled if libbpf is present in the build system.
libbpf checked in configuration shell script and meson script.

Signed-off-by: Yuri Benditovich <yuri.benditovich@daynix.com>
Signed-off-by: Andrew Melnychenko <andrew@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 0145c3934895e2cb2b8bd679ca274bc5f7e76de7
      
https://github.com/qemu/qemu/commit/0145c3934895e2cb2b8bd679ca274bc5f7e76de7
  Author: Andrew Melnychenko <andrew@daynix.com>
  Date:   2021-06-04 (Fri, 04 Jun 2021)

  Changed paths:
    M hw/net/vhost_net.c
    M hw/net/virtio-net.c
    M include/hw/virtio/virtio-net.h
    M net/vhost-vdpa.c

  Log Message:
  -----------
  virtio-net: Added eBPF RSS to virtio-net.

When RSS is enabled the device tries to load the eBPF program
to select RX virtqueue in the TUN. If eBPF can be loaded
the RSS will function also with vhost (works with kernel 5.8 and later).
Software RSS is used as a fallback with vhost=off when eBPF can't be loaded
or when hash population requested by the guest.

Signed-off-by: Yuri Benditovich <yuri.benditovich@daynix.com>
Signed-off-by: Andrew Melnychenko <andrew@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 946456200e4f32a5a6cb4ae851dc5a9345ec68cf
      
https://github.com/qemu/qemu/commit/946456200e4f32a5a6cb4ae851dc5a9345ec68cf
  Author: Andrew Melnychenko <andrew@daynix.com>
  Date:   2021-06-04 (Fri, 04 Jun 2021)

  Changed paths:
    A docs/devel/ebpf_rss.rst
    M docs/devel/index.rst

  Log Message:
  -----------
  docs: Added eBPF documentation.

Signed-off-by: Yuri Benditovich <yuri.benditovich@daynix.com>
Signed-off-by: Andrew Melnychenko <andrew@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 90322e646e87c1440661cb3ddbc0cc94309d8a4f
      
https://github.com/qemu/qemu/commit/90322e646e87c1440661cb3ddbc0cc94309d8a4f
  Author: Andrew Melnychenko <andrew@daynix.com>
  Date:   2021-06-04 (Fri, 04 Jun 2021)

  Changed paths:
    M MAINTAINERS

  Log Message:
  -----------
  MAINTAINERS: Added eBPF maintainers information.

Signed-off-by: Yuri Benditovich <yuri.benditovich@daynix.com>
Signed-off-by: Andrew Melnychenko <andrew@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>


  Commit: 1cbd2d914939ee6028e9688d4ba859a528c28405
      
https://github.com/qemu/qemu/commit/1cbd2d914939ee6028e9688d4ba859a528c28405
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2021-06-04 (Fri, 04 Jun 2021)

  Changed paths:
    M MAINTAINERS
    M configure
    A docs/devel/ebpf_rss.rst
    M docs/devel/index.rst
    A ebpf/ebpf_rss-stub.c
    A ebpf/ebpf_rss.c
    A ebpf/ebpf_rss.h
    A ebpf/meson.build
    A ebpf/rss.bpf.skeleton.h
    A ebpf/trace-events
    A ebpf/trace.h
    M hw/net/vhost_net.c
    M hw/net/virtio-net.c
    M include/hw/virtio/virtio-net.h
    M include/net/net.h
    M meson.build
    M meson_options.txt
    M net/tap-bsd.c
    M net/tap-linux.c
    M net/tap-linux.h
    M net/tap-solaris.c
    M net/tap-stub.c
    M net/tap.c
    M net/tap_int.h
    M net/vhost-vdpa.c
    A tools/ebpf/Makefile.ebpf
    A tools/ebpf/rss.bpf.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/jasowang/tags/net-pull-request' into 
staging

# gpg: Signature made Fri 04 Jun 2021 08:26:16 BST
# gpg:                using RSA key EF04965B398D6211
# gpg: Good signature from "Jason Wang (Jason Wang on RedHat) 
<jasowang@redhat.com>" [marginal]
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg:          It is not certain that the signature belongs to the owner.
# Primary key fingerprint: 215D 46F4 8246 689E C77F  3562 EF04 965B 398D 6211

* remotes/jasowang/tags/net-pull-request:
  MAINTAINERS: Added eBPF maintainers information.
  docs: Added eBPF documentation.
  virtio-net: Added eBPF RSS to virtio-net.
  ebpf: Added eBPF RSS loader.
  ebpf: Added eBPF RSS program.
  net: Added SetSteeringEBPF method for NetClientState.
  net/tap: Added TUNSETSTEERINGEBPF code.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


Compare: https://github.com/qemu/qemu/compare/5a95f5ce3cd5...1cbd2d914939



reply via email to

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