summaryrefslogtreecommitdiffstats
path: root/vhost_loopback.h
diff options
context:
space:
mode:
authorTimos Ampelikiotis <t.ampelikiotis@virtualopensystems.com>2023-09-13 15:22:26 +0000
committerAngelos Mouzakitis <a.mouzakitis@virtualopensystems.com>2023-10-03 15:18:54 +0300
commita99fe32fc076f0654a8c8fab7a16abff42ba4218 (patch)
treecbe0643ca79b8056d46efd933a1daf61e0f79a63 /vhost_loopback.h
parentcfb9918442a1a22639f55f5923e9807481cc4045 (diff)
Introduce Virtio-loopback epsilon-release:
Epsilon release introduces a new compatibility layer which make virtio-loopback design to work with QEMU and rust-vmm vhost-user backend without require any changes. Changes and fixes done during this development are: - Add new memory exchange mechanism - Update binaries command line: argument limit - Update features exchange for vhost-user-rng backend - Updare VQS index exchange process between driver and adapter - Add VHOST_RAM_SLOTS constant Signed-off-by: Timos Ampelikiotis <t.ampelikiotis@virtualopensystems.com>
Diffstat (limited to 'vhost_loopback.h')
-rw-r--r--vhost_loopback.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/vhost_loopback.h b/vhost_loopback.h
index b73caeb..78c2755 100644
--- a/vhost_loopback.h
+++ b/vhost_loopback.h
@@ -29,14 +29,22 @@
#include "vhost_user_loopback.h"
#include "virtio_loopback.h"
+#define VHOST_INVALID_FEATURE_BIT (0xff)
+#define VHOST_QUEUE_NUM_CONFIG_INR 0
+
int vhost_dev_enable_notifiers(struct vhost_dev *hdev, VirtIODevice *vdev);
-int vhost_dev_start(struct vhost_dev *hdev, VirtIODevice *vdev);
+int vhost_dev_start(struct vhost_dev *hdev, VirtIODevice *vdev, bool vrings);
void vhost_virtqueue_mask(struct vhost_dev *hdev, VirtIODevice *vdev,
int n, bool mask);
int vhost_dev_get_config(struct vhost_dev *hdev, uint8_t *config,
uint32_t config_len);
int vhost_dev_set_config(struct vhost_dev *hdev, const uint8_t *data,
uint32_t offset, uint32_t size, uint32_t flags);
+uint64_t vhost_get_features(struct vhost_dev *hdev, const int *feature_bits,
+ uint64_t features);
+void vhost_ack_features(struct vhost_dev *hdev, const int *feature_bits,
+ uint64_t features);
+
/**
* vhost_dev_set_config_notifier() - register VhostDevConfigOps
* @hdev: common vhost_dev_structure