mirror of
https://github.com/qemu/qemu.git
synced 2025-01-09 23:23:40 +08:00
24d1eb33eb
Decouple vhost from the Linux kernel by introducing vhost_ops. The intention is to provide different backends - a 'kernel' backend based on the ioctl interface, and an 'user' backend based on a UNIX domain socket and shared memory interface. Signed-off-by: Antonios Motakis <a.motakis@virtualopensystems.com> Signed-off-by: Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
28 lines
705 B
C
28 lines
705 B
C
/*
|
|
* vhost-backend
|
|
*
|
|
* Copyright (c) 2013 Virtual Open Systems Sarl.
|
|
*
|
|
* This work is licensed under the terms of the GNU GPL, version 2 or later.
|
|
* See the COPYING file in the top-level directory.
|
|
*
|
|
*/
|
|
|
|
#ifndef VHOST_BACKEND_H_
|
|
#define VHOST_BACKEND_H_
|
|
|
|
struct vhost_dev;
|
|
|
|
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);
|
|
|
|
typedef struct VhostOps {
|
|
vhost_call vhost_call;
|
|
vhost_backend_init vhost_backend_init;
|
|
vhost_backend_cleanup vhost_backend_cleanup;
|
|
} VhostOps;
|
|
|
|
#endif /* VHOST_BACKEND_H_ */
|