提交 7ebcfe56 编写于 作者: M Michael S. Tsirkin

specs/vhost-user: fix spec to match reality

We wanted to start/stop rings on VRING_ENABLE, but that is not what QEMU
does. Rather than tweaking code some more, with risk to stability, let's
just document it as it is.

We'll be  able to fix this in the future with a new protocol feature bit.
Reported-by: NVictor Kaplansky <victork@redhat.com>
Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
上级 5c93c473
...@@ -148,20 +148,26 @@ a feature bit was dedicated for this purpose: ...@@ -148,20 +148,26 @@ a feature bit was dedicated for this purpose:
Starting and stopping rings Starting and stopping rings
---------------------- ----------------------
Each ring is initialized in a stopped state, client must not process it until Client must only process each ring when it is both started and enabled.
ring is enabled.
If VHOST_USER_F_PROTOCOL_FEATURES has not been negotiated, the ring is initialized
in an enabled state.
If VHOST_USER_F_PROTOCOL_FEATURES has been negotiated, client must start and If VHOST_USER_F_PROTOCOL_FEATURES has been negotiated, the ring is initialized
stop ring processing upon receiving VHOST_USER_SET_VRING_ENABLE with parameters in a disabled state. Client must not process it until ring is enabled by
1 and 0 respoectively. VHOST_USER_SET_VRING_ENABLE with parameter 1, or after it has been disabled by
VHOST_USER_SET_VRING_ENABLE with parameter 0.
Each ring is initialized in a stopped state, client must not process it until
ring is started, or after it has been stopped.
If VHOST_USER_F_PROTOCOL_FEATURES has not been negotiated, client must start Client must start ring upon receiving a kick (that is, detecting that file
ring processing upon receiving a kick (that is, detecting that file descriptor descriptor is readable) on the descriptor specified by
is readable) on the descriptor specified by VHOST_USER_SET_VRING_KICK, and stop VHOST_USER_SET_VRING_KICK, and stop ring upon receiving
ring processing upon receiving VHOST_USER_GET_VRING_BASE. VHOST_USER_GET_VRING_BASE.
While rings are running, client must support changing some configuration While processing the rings (when they are started and enabled), client must
aspects on the fly. support changing some configuration aspects on the fly.
Multiple queue support Multiple queue support
---------------------- ----------------------
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册