lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 29 Mar 2017 23:48:43 +0300 From: "Michael S. Tsirkin" <mst@...hat.com> To: linux-kernel@...r.kernel.org Cc: John Fastabend <john.fastabend@...il.com> Subject: [PATCH 0/6] virtio: support extra per-buffer context virtio net is resorting to hacks in order to fit all per-buffer info in a single 64 bit value. But in fact we have some unused memory there - normally used for indirect descriptors - that we can utilize without slowing everyone down. Add APIs to do exactly that, and use them to simplify mergeable buffer handling code. This will also easily enable switching XDP mode on/off without doing device resets (leading to packet drops), and more optimizations. Michael S. Tsirkin (6): virtio: wrap find_vqs virtio: add context flag to find vqs virtio: allow extra context per descriptor virtio_net: allow specifying context for rx virtio_net: rework mergeable buffer handling virtio_net: reduce alignment for buffers drivers/block/virtio_blk.c | 3 +- drivers/char/virtio_console.c | 6 +- drivers/crypto/virtio/virtio_crypto_core.c | 3 +- drivers/gpu/drm/virtio/virtgpu_kms.c | 3 +- drivers/misc/mic/vop/vop_main.c | 9 ++- drivers/net/caif/caif_virtio.c | 3 +- drivers/net/virtio_net.c | 116 ++++++++++++++--------------- drivers/rpmsg/virtio_rpmsg_bus.c | 2 +- drivers/s390/virtio/kvm_virtio.c | 6 +- drivers/s390/virtio/virtio_ccw.c | 7 +- drivers/scsi/virtio_scsi.c | 3 +- drivers/virtio/virtio_balloon.c | 3 +- drivers/virtio/virtio_input.c | 3 +- drivers/virtio/virtio_mmio.c | 8 +- drivers/virtio/virtio_pci_common.c | 18 +++-- drivers/virtio/virtio_pci_common.h | 4 +- drivers/virtio/virtio_pci_legacy.c | 4 +- drivers/virtio/virtio_pci_modern.c | 12 ++- drivers/virtio/virtio_ring.c | 77 +++++++++++++++---- include/linux/virtio.h | 9 +++ include/linux/virtio_config.h | 25 ++++++- include/linux/virtio_ring.h | 3 + net/vmw_vsock/virtio_transport.c | 6 +- 23 files changed, 212 insertions(+), 121 deletions(-) -- MST
Powered by blists - more mailing lists