[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 06/16] vhost: use variable arguments for vhost_ca
From: |
marcandre . lureau |
Subject: |
[Qemu-devel] [PATCH v3 06/16] vhost: use variable arguments for vhost_call() |
Date: |
Thu, 6 Aug 2015 14:40:42 +0200 |
From: Marc-André Lureau <address@hidden>
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 v3 05/16] vhost: document log resizing, (continued)
- [Qemu-devel] [PATCH v3 05/16] vhost: document log resizing, marcandre . lureau, 2015/08/06
- [Qemu-devel] [PATCH v3 12/16] vhost-user-test: remove useless static check, marcandre . lureau, 2015/08/06
- [Qemu-devel] [PATCH v3 08/16] vhost-user: send log shm fd along with log_base, marcandre . lureau, 2015/08/06
- [Qemu-devel] [PATCH v3 11/16] vhost-user-test: move wait_for_fds() out, marcandre . lureau, 2015/08/06
- [Qemu-devel] [PATCH v3 14/16] vhost-user-test: learn to tweak various qemu arguments, marcandre . lureau, 2015/08/06
- [Qemu-devel] [PATCH v3 15/16] vhost-user-test: add live-migration test, marcandre . lureau, 2015/08/06
- [Qemu-devel] [PATCH v3 16/16] vhost-user-test: check ownership during migration, marcandre . lureau, 2015/08/06
- [Qemu-devel] [PATCH v3 10/16] net: add trace_vhost_user_event, marcandre . lureau, 2015/08/06
- [Qemu-devel] [PATCH v3 07/16] vhost-user: start and end the va_list, marcandre . lureau, 2015/08/06
- [Qemu-devel] [PATCH v3 13/16] vhost-user-test: wrap server in TestServer struct, marcandre . lureau, 2015/08/06
- [Qemu-devel] [PATCH v3 06/16] vhost: use variable arguments for vhost_call(),
marcandre . lureau <=
- [Qemu-devel] [PATCH v3 09/16] vhost-user: document migration log, marcandre . lureau, 2015/08/06