[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20191126100914.5150-1-prashantbhole.linux@gmail.com>
Date: Tue, 26 Nov 2019 19:09:11 +0900
From: Prashant Bhole <prashantbhole.linux@...il.com>
To: "Michael S . Tsirkin" <mst@...hat.com>,
Jason Wang <jasowang@...hat.com>, qemu-devel@...gnu.org
Cc: Prashant Bhole <prashantbhole.linux@...il.com>,
"David S . Miller" <davem@...emloft.net>,
Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Jakub Kicinski <jakub.kicinski@...ronome.com>,
Jesper Dangaard Brouer <hawk@...nel.org>,
John Fastabend <john.fastabend@...il.com>,
Martin KaFai Lau <kafai@...com>,
Song Liu <songliubraving@...com>, Yonghong Song <yhs@...com>,
Andrii Nakryiko <andriin@...com>, netdev@...r.kernel.org,
kvm@...r.kernel.org
Subject: [RFC 0/3] Qemu: virtio-net XDP offload
Note: This RFC has been sent to netdev as well as qemu-devel lists
This patchset implements XDP offload feature in qemu. The successful
operation of this feature depends on availability of XDP offload
feature in guest, qemu and host. When this feature isn't available in
qemu or host, the request from guest to offload an XDP program should
fail.
Patch 1/3 adds support for libbpf in configure script.
Patch 2/2 enables offloading of ebpf program.
Patch 3/3 enabled offloading of ebpf map.
Points for improvement (TODO):
- In future virtio can have feature bit for offloading capability
- TUNGETFEATURES should have a flag to notify about offloading
capability
- Submit virtio spec patch to describe XDP offloading feature
- DoS: Offloaded map uses host's memory which is other than what has
been allocated for the guest. Offloading many maps of large size can
be one of the DoS strategy. Hence qemu should have parameter to
limit how many maps guest can offload or how much memory offloaded
maps use.
Note:
This set directly modifies virtio_net.h header instead of
importing it from existing kernel headers because relevant changes
aren't present in kernel repository yet. Hence changes to virtio_net.h
are for RFC purpose only.
Jason Wang (2):
virtio-net: add support for offloading XDP program
virtio-net: add support for offloading an ebpf map
Prashant Bhole (1):
configure: add libbpf support
configure | 23 +++
hw/net/Makefile.objs | 2 +
hw/net/virtio-net.c | 157 ++++++++++++++++++++
include/net/tap.h | 2 +
include/standard-headers/linux/virtio_net.h | 50 +++++++
net/Makefile.objs | 1 +
net/tap-bsd.c | 5 +
net/tap-linux.c | 48 ++++++
net/tap-linux.h | 1 +
net/tap-solaris.c | 5 +
net/tap-stub.c | 5 +
net/tap.c | 7 +
net/tap_int.h | 1 +
13 files changed, 307 insertions(+)
--
2.20.1
Powered by blists - more mailing lists