[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 4/5] docs: introduce RSS support in Vhost-user specification
From: |
Maxime Coquelin |
Subject: |
[PATCH 4/5] docs: introduce RSS support in Vhost-user specification |
Date: |
Fri, 8 Apr 2022 14:28:12 +0200 |
This patch documents RSS feature in Vhost-user specification.
Two new requests are introduced backed by a dedicated
protocol feature.
First one is to query the Vhost-user slave RSS capabilities
such as supported hash types, maximum key length and
indirection table size.
The second one is to provide the slave with driver's RSS
configuration.
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
---
docs/interop/vhost-user.rst | 57 +++++++++++++++++++++++++++++++++++++
1 file changed, 57 insertions(+)
diff --git a/docs/interop/vhost-user.rst b/docs/interop/vhost-user.rst
index 4dbc84fd00..9de6297568 100644
--- a/docs/interop/vhost-user.rst
+++ b/docs/interop/vhost-user.rst
@@ -258,6 +258,42 @@ Inflight description
:queue size: a 16-bit size of virtqueues
+RSS capabilities description
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
++----------------------+-------------+---------------+
+| supported hash types | max key len | max indir len |
++----------------------+-------------+---------------+
+
+:supported hash types: a 32-bit bitfield of supported hash types as defined
+ in the Virtio specification
+
+:max key len: a 8-bit maximum size of the RSS key
+
+:max indir len: a 16-bits maximum size of the RSS indirection table
+
+RSS data description
+^^^^^^^^^^^^^^^^^^^^
+
++------------+---------+-----+-----------+-------------+---------------+
+| hash types | key len | key | indir len | indir table | default queue |
++------------+---------+-----+-----------+-------------+---------------+
+
+:hash types: a 32-bit bitfield of supported hash types as defined in the
+ Virtio specification
+
+:key len: 8-bit size of the RSS key
+
+:key: a 8-bit array of 52 elements containing the RSS key
+
+:indir len: a 16-bit size of the RSS indirection table
+
+:indir table: a 16-bit array of 512 elements containing the hash indirection
+ table
+
+:default queue: the default queue index for flows not matching requested hash
+ types
+
C structure
-----------
@@ -858,6 +894,7 @@ Protocol features
#define VHOST_USER_PROTOCOL_F_INBAND_NOTIFICATIONS 14
#define VHOST_USER_PROTOCOL_F_CONFIGURE_MEM_SLOTS 15
#define VHOST_USER_PROTOCOL_F_STATUS 16
+ #define VHOST_USER_PROTOCOL_F_NET_RSS 17
Master message types
--------------------
@@ -1371,6 +1408,26 @@ Master message types
query the backend for its device status as defined in the Virtio
specification.
+``VHOST_USER_NET_GET_RSS``
+ :id: 41
+ :equivalent ioctl: N/A
+ :slave payload: RSS capabilities description
+ :master payload: N/A
+
+ When the ``VHOST_USER_PROTOCOL_F_NET_RSS`` protocol has been successfully
+ negotiated, this message is submitted by the master to get the RSS
+ capabilities of the slave.
+
+``VHOST_USER_NET_SET_RSS``
+ :id: 42
+ :equivalent ioctl: N/A
+ :slave payload: N/A
+ :master payload: RSS data description
+
+ When the ``VHOST_USER_PROTOCOL_F_NET_RSS`` protocol has been successfully
+ negotiated, this message is submitted by the master to set the RSS
+ configuration defined by the Virtio driver.
+
Slave message types
-------------------
--
2.35.1
- [PATCH 0/5] Vhost-user: add Virtio RSS support, Maxime Coquelin, 2022/04/08
- [PATCH 5/5] vhost-user: add RSS support, Maxime Coquelin, 2022/04/08
- [PATCH 4/5] docs: introduce RSS support in Vhost-user specification,
Maxime Coquelin <=
- [PATCH 3/5] virtio-net: add RSS support for Vhost backends, Maxime Coquelin, 2022/04/08
- [PATCH 1/5] ebpf: pass and check RSS key length to the loader, Maxime Coquelin, 2022/04/08
- [PATCH 2/5] virtio-net: prepare for variable RSS key and indir table lengths, Maxime Coquelin, 2022/04/08
- Re: [PATCH 0/5] Vhost-user: add Virtio RSS support, Jason Wang, 2022/04/15