[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v1 1/3] vhost-user: add reply let the portocol more
From: |
linhaifeng |
Subject: |
[Qemu-devel] [PATCH v1 1/3] vhost-user: add reply let the portocol more safe. |
Date: |
Fri, 13 Feb 2015 20:00:29 +0800 |
From: Linhaifeng <address@hidden>
Every messages need reply.
Signed-off-by: Linhaifeng <address@hidden>
---
docs/specs/vhost-user.txt | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/docs/specs/vhost-user.txt b/docs/specs/vhost-user.txt
index 650bb18..4a14e63 100644
--- a/docs/specs/vhost-user.txt
+++ b/docs/specs/vhost-user.txt
@@ -23,6 +23,10 @@ be a software Ethernet switch running in user space, such as
Snabbswitch.
Master and slave can be either a client (i.e. connecting) or server (listening)
in the socket communication.
+version 0x1: Supply base communication between master and slave.
+version 0x6: Add reply for more robust.
+
+
Message Specification
---------------------
@@ -35,7 +39,7 @@ consists of 3 header fields and a payload:
* Request: 32-bit type of the request
* Flags: 32-bit bit field:
- - Lower 2 bits are the version (currently 0x01)
+ - Lower 2 bits are the version (currently 0x06)
- Bit 2 is the reply flag - needs to be sent on each reply from the slave
* Size - 32-bit size of the payload
@@ -144,6 +148,7 @@ Message types
Id: 2
Ioctl: VHOST_SET_FEATURES
Master payload: u64
+ Slave payload: u64 0:success else:fail
Enable features in the underlying vhost implementation using a bitmask.
@@ -152,6 +157,7 @@ Message types
Id: 3
Equivalent ioctl: VHOST_SET_OWNER
Master payload: N/A
+ Slave payload: u64 0:success else:fail
Issued when a new connection is established. It sets the current Master
as an owner of the session. This can be used on the Slave as a
@@ -162,6 +168,7 @@ Message types
Id: 4
Equivalent ioctl: VHOST_RESET_OWNER
Master payload: N/A
+ Slave payload: u64 0:success else:fail
Issued when a new connection is about to be closed. The Master will no
longer own this connection (and will usually close it).
@@ -171,6 +178,7 @@ Message types
Id: 5
Equivalent ioctl: VHOST_SET_MEM_TABLE
Master payload: memory regions description
+ Slave payload: u64 0:success else:fail
Sets the memory map regions on the slave so it can translate the vring
addresses. In the ancillary data there is an array of file descriptors
@@ -182,6 +190,7 @@ Message types
Id: 6
Equivalent ioctl: VHOST_SET_LOG_BASE
Master payload: u64
+ Slave payload: u64 0:success else:fail
Sets the logging base address.
@@ -190,6 +199,7 @@ Message types
Id: 7
Equivalent ioctl: VHOST_SET_LOG_FD
Master payload: N/A
+ Slave payload: u64 0:success else:fail
Sets the logging file descriptor, which is passed as ancillary data.
@@ -198,6 +208,7 @@ Message types
Id: 8
Equivalent ioctl: VHOST_SET_VRING_NUM
Master payload: vring state description
+ Slave payload: u64 0:success else:fail
Sets the number of vrings for this owner.
@@ -206,7 +217,7 @@ Message types
Id: 9
Equivalent ioctl: VHOST_SET_VRING_ADDR
Master payload: vring address description
- Slave payload: N/A
+ Slave payload: u64 0:success else:fail
Sets the addresses of the different aspects of the vring.
@@ -215,6 +226,7 @@ Message types
Id: 10
Equivalent ioctl: VHOST_SET_VRING_BASE
Master payload: vring state description
+ Slave payload: u64 0:success else:fail
Sets the base offset in the available vring.
@@ -232,6 +244,7 @@ Message types
Id: 12
Equivalent ioctl: VHOST_SET_VRING_KICK
Master payload: u64
+ Slave payload: u64 0:success else:fail
Set the event file descriptor for adding buffers to the vring. It
is passed in the ancillary data.
@@ -245,6 +258,7 @@ Message types
Id: 13
Equivalent ioctl: VHOST_SET_VRING_CALL
Master payload: u64
+ Slave payload: u64 0:success else:fail
Set the event file descriptor to signal when buffers are used. It
is passed in the ancillary data.
@@ -258,6 +272,7 @@ Message types
Id: 14
Equivalent ioctl: VHOST_SET_VRING_ERR
Master payload: u64
+ Slave payload: u64 0:success else:fail
Set the event file descriptor to signal when error occurs. It
is passed in the ancillary data.
--
1.7.12.4