summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatej Genci <matej.genci@nutanix.com>2019-09-11 14:49:53 +0200
committerMichael S. Tsirkin <mst@redhat.com>2020-06-02 08:45:13 +0200
commite7c8cc35a64d1d21e6fb811c519eadbda30f4f77 (patch)
treea2065d7a2dfb7fc69b2dce63f76995bdd6006b09
parentLinux 5.7 (diff)
downloadlinux-e7c8cc35a64d1d21e6fb811c519eadbda30f4f77.tar.xz
linux-e7c8cc35a64d1d21e6fb811c519eadbda30f4f77.zip
virtio: add VIRTIO_RING_NO_LEGACY
Add macro to disable legacy vring functions. Signed-off-by: Matej Genci <matej.genci@nutanix.com> Link: https://lore.kernel.org/r/20190911124942.243713-1-matej.genci@nutanix.com Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
-rw-r--r--drivers/virtio/virtio_pci_modern.c1
-rw-r--r--include/uapi/linux/virtio_ring.h4
2 files changed, 5 insertions, 0 deletions
diff --git a/drivers/virtio/virtio_pci_modern.c b/drivers/virtio/virtio_pci_modern.c
index 7abcc50838b8..db93cedd262f 100644
--- a/drivers/virtio/virtio_pci_modern.c
+++ b/drivers/virtio/virtio_pci_modern.c
@@ -16,6 +16,7 @@
#include <linux/delay.h>
#define VIRTIO_PCI_NO_LEGACY
+#define VIRTIO_RING_NO_LEGACY
#include "virtio_pci_common.h"
/*
diff --git a/include/uapi/linux/virtio_ring.h b/include/uapi/linux/virtio_ring.h
index 559f42e73315..9223c3a5c46a 100644
--- a/include/uapi/linux/virtio_ring.h
+++ b/include/uapi/linux/virtio_ring.h
@@ -135,6 +135,8 @@ struct vring {
#define VRING_USED_ALIGN_SIZE 4
#define VRING_DESC_ALIGN_SIZE 16
+#ifndef VIRTIO_RING_NO_LEGACY
+
/* The standard layout for the ring is a continuous chunk of memory which looks
* like this. We assume num is a power of 2.
*
@@ -181,6 +183,8 @@ static inline unsigned vring_size(unsigned int num, unsigned long align)
+ sizeof(__virtio16) * 3 + sizeof(struct vring_used_elem) * num;
}
+#endif /* VIRTIO_RING_NO_LEGACY */
+
/* The following is used with USED_EVENT_IDX and AVAIL_EVENT_IDX */
/* Assuming a given event_idx value from the other side, if
* we have just incremented index from old to new_idx,