[PATCH] virtio-spec: Document VIRTIO_BLK_T_GET_ID.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Signed-off-by: Alexey Zaytsev <alexey.zaytsev@xxxxxxxxx>
---

Hi.

This feature has been around for a couple of years, probably time to document it.
Lyx cleaned up some lines I did not touch, is this ok?

 virtio-spec.lyx |   73 ++++++++++++++++++++++++++++++++++++++++++-------------
 1 file changed, 56 insertions(+), 17 deletions(-)

diff --git a/virtio-spec.lyx b/virtio-spec.lyx
index 6c09180..3fe3d0f 100644
--- a/virtio-spec.lyx
+++ b/virtio-spec.lyx
@@ -59,6 +59,7 @@
 \author -608949062 "Rusty Russell,,," 
 \author -385801441 "Cornelia Huck" cornelia.huck@xxxxxxxxxx
 \author 1531152142 "Paolo Bonzini,,," 
+\author 1717892615 "Alexey Zaytsev,,," 
 \author 1986246365 "Michael S. Tsirkin" 
 \end_header
 
@@ -4570,14 +4571,14 @@ status
 
 \change_inserted 1986246365 1354531717
 Only receiveq0, transmitq0 and controlq are used by default.
- To use more queues driver must negotiate the VIRTIO_NET_F_MQ feature;
- initialize up to 
+ To use more queues driver must negotiate the VIRTIO_NET_F_MQ feature; initializ
+e up to 
 \emph on
 max_virtqueue_pairs
 \emph default
- of each of transmit and receive queues; execute_VIRTIO_NET_CTRL_MQ_VQ_PAIRS_SE
-T command specifying the number of the transmit and receive queues that
- is going to be used and wait until the device consumes the controlq buffer
+ of each of transmit and receive queues; execute_VIRTIO_NET_CTRL_MQ_VQ_PAIRS_SET
+ command specifying the number of the transmit and receive queues that is
+ going to be used and wait until the device consumes the controlq buffer
  and acks this command.
 \change_unchanged
 
@@ -5008,8 +5009,8 @@ struct virtio_net_hdr
 \begin_layout Standard
 
 \change_inserted 1986246365 1353594638
-If VIRTIO_NET_F_MQ is negotiated, each of receiveq0...receiveqN that will
- be used should be populated with receive buffers.
+If VIRTIO_NET_F_MQ is negotiated, each of receiveq0...receiveqN that will be
+ used should be populated with receive buffers.
 \change_unchanged
 
 \end_layout
@@ -5453,9 +5454,9 @@ Automatic receive steering in multiqueue mode
 \begin_layout Standard
 
 \change_inserted 1986246365 1354528882
-If the driver negotiates the VIRTIO_NET_F_MQ feature bit (depends on VIRTIO_NET
-_F_CTRL_VQ), it can transmit outgoing packets on one of the multiple transmitq0..t
-ransmitqN and ask the device to queue incoming packets into one the multiple
+If the driver negotiates the VIRTIO_NET_F_MQ feature bit (depends on VIRTIO_NET_
+F_CTRL_VQ), it can transmit outgoing packets on one of the multiple transmitq0..tr
+ansmitqN and ask the device to queue incoming packets into one the multiple
  receiveq0..receiveqN depending on the packet flow.
 \change_unchanged
 
@@ -5532,9 +5533,9 @@ struct virtio_net_ctrl_mq {
 
 \change_inserted 1986246365 1354531492
 Multiqueue is disabled by default.
- Driver enables multiqueue by executing the VIRTIO_NET_CTRL_MQ_VQ_PAIRS_SET command,
- specifying the number of the transmit and receive queues that will be used;
- thus transmitq0..transmitqn and receiveq0..receiveqn where 
+ Driver enables multiqueue by executing the VIRTIO_NET_CTRL_MQ_VQ_PAIRS_SET
+ command, specifying the number of the transmit and receive queues that
+ will be used; thus transmitq0..transmitqn and receiveq0..receiveqn where 
 \emph on
 n=virtqueue_pairs-1
 \emph default
@@ -5554,9 +5555,8 @@ max_virtqueue_pairs
 \begin_layout Standard
 
 \change_inserted 1986246365 1353595328
-When multiqueue is enabled, device uses automatic receive
-steering based on packet flow.
-Programming of the receive steering classificator is implicit.
+When multiqueue is enabled, device uses automatic receivesteering based
+ on packet flow.Programming of the receive steering classificator is implicit.
  Transmitting a packet of a specific flow on transmitqX will cause incoming
  packets for this flow to be steered to receiveqX.
  For uni-directional protocols, or where no packets have been transmitted
@@ -6162,7 +6162,11 @@ the SCSI_CMD and SCSI_CMD_OUT types are equivalent, the device does not
 
 \end_inset
 
-) or a flush (VIRTIO_BLK_T_FLUSH or VIRTIO_BLK_T_FLUSH_OUT
+)
+\change_inserted 1717892615 1355313186
+, device ID (serial number) inquiry (VIRTIO_BLK_T_GET_ID)
+\change_unchanged
+ or a flush (VIRTIO_BLK_T_FLUSH or VIRTIO_BLK_T_FLUSH_OUT
 \begin_inset Foot
 status open
 
@@ -6193,6 +6197,19 @@ status open
 
 \begin_layout Plain Layout
 
+\change_inserted 1717892615 1355312081
+
+#define VIRTIO_BLK_ID_BYTES       20
+\end_layout
+
+\begin_layout Plain Layout
+
+\change_inserted 1717892615 1355310507
+
+\end_layout
+
+\begin_layout Plain Layout
+
 #define VIRTIO_BLK_T_IN           0
 \end_layout
 
@@ -6219,6 +6236,17 @@ status open
 \begin_layout Plain Layout
 
 #define VIRTIO_BLK_T_FLUSH_OUT    5
+\change_inserted 1717892615 1355310422
+
+\end_layout
+
+\begin_layout Plain Layout
+
+\change_inserted 1717892615 1355310087
+
+#define VIRTIO_BLK_T_GET_ID       8
+\change_unchanged
+
 \end_layout
 
 \begin_layout Plain Layout
@@ -6348,6 +6376,17 @@ status open
 \end_layout
 
 \begin_layout Standard
+
+\change_inserted 1717892615 1355312551
+When VIRTIO_BLK_T_GET_ID is issued, the device identifier, up to 20 bytes,
+ is written to the buffer.
+ The identifier should be interpreted as an ascii string.
+ It is terminated with 
+\backslash
+0, unless it is exactly 20 bytes long.
+\end_layout
+
+\begin_layout Standard
 Historically, devices assumed that the fields 
 \emph on
 type
-- 
1.7.10.4

_______________________________________________
Virtualization mailing list
Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linuxfoundation.org/mailman/listinfo/virtualization


[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux