[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 6/9] vhost: use variable arguments for vhost_call
From: |
Marc-André Lureau |
Subject: |
[Qemu-devel] [PATCH v2 6/9] vhost: use variable arguments for vhost_call() |
Date: |
Tue, 28 Jul 2015 19:36:40 +0200 |
It is useful to pass extra arguments to the funtions, for
various backend needs.
Signed-off-by: Marc-André Lureau <address@hidden>
---
hw/virtio/vhost-backend.c | 4 ++--
hw/virtio/vhost-user.c | 4 ++--
include/hw/virtio/vhost-backend.h | 6 ++++--
3 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/hw/virtio/vhost-backend.c b/hw/virtio/vhost-backend.c
index 4d68a27..7255089 100644
--- a/hw/virtio/vhost-backend.c
+++ b/hw/virtio/vhost-backend.c
@@ -14,8 +14,8 @@
#include <sys/ioctl.h>
-static int vhost_kernel_call(struct vhost_dev *dev, unsigned long int request,
- void *arg)
+static int vhost_kernel_call(struct vhost_dev *dev,
+ unsigned long int request, void *arg, ...)
{
int fd = (uintptr_t) dev->opaque;
diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c
index 4993b63..8b6d7e7 100644
--- a/hw/virtio/vhost-user.c
+++ b/hw/virtio/vhost-user.c
@@ -190,8 +190,8 @@ static int vhost_user_write(struct vhost_dev *dev,
VhostUserMsg *msg,
0 : -1;
}
-static int vhost_user_call(struct vhost_dev *dev, unsigned long int request,
- void *arg)
+static int vhost_user_call(struct vhost_dev *dev,
+ unsigned long int request, void *arg, ...)
{
VhostUserMsg msg;
VhostUserRequest msg_request;
diff --git a/include/hw/virtio/vhost-backend.h
b/include/hw/virtio/vhost-backend.h
index e472f29..36fa0f7 100644
--- a/include/hw/virtio/vhost-backend.h
+++ b/include/hw/virtio/vhost-backend.h
@@ -11,6 +11,8 @@
#ifndef VHOST_BACKEND_H_
#define VHOST_BACKEND_H_
+#include <stdarg.h>
+
typedef enum VhostBackendType {
VHOST_BACKEND_TYPE_NONE = 0,
VHOST_BACKEND_TYPE_KERNEL = 1,
@@ -20,8 +22,8 @@ typedef enum VhostBackendType {
struct vhost_dev;
-typedef int (*vhost_call)(struct vhost_dev *dev, unsigned long int request,
- void *arg);
+typedef int (*vhost_call)(struct vhost_dev *dev,
+ unsigned long int request, void *arg, ...);
typedef int (*vhost_backend_init)(struct vhost_dev *dev, void *opaque);
typedef int (*vhost_backend_cleanup)(struct vhost_dev *dev);
--
2.4.3
- [Qemu-devel] [PATCH v2 0/9] vhost-user: add migration log support (for 2.5), Marc-André Lureau, 2015/07/28
- [Qemu-devel] [PATCH v2 5/9] vhost: document log resizing, Marc-André Lureau, 2015/07/28
- [Qemu-devel] [PATCH v2 6/9] vhost: use variable arguments for vhost_call(),
Marc-André Lureau <=
- [Qemu-devel] [PATCH v2 7/9] vhost-user: start and end the va_list, Marc-André Lureau, 2015/07/28
- [Qemu-devel] [PATCH v2 8/9] vhost-user: send log shm fd along with log_base, Marc-André Lureau, 2015/07/28
- [Qemu-devel] [PATCH v2 9/9] vhost-user: document migration log, Marc-André Lureau, 2015/07/28