diff options
Diffstat (limited to 'content.tex')
-rw-r--r-- | content.tex | 44 |
1 files changed, 22 insertions, 22 deletions
diff --git a/content.tex b/content.tex index 1d06aa4..a509b20 100644 --- a/content.tex +++ b/content.tex @@ -651,7 +651,7 @@ Device Initialization / Read feature bits} Read device feature bits, and write t device's virtio configuration space, and population of virtqueues. \item\label{itm:General Initialization And Device Operation / Device Initialization / Set DRIVER-OK} Set the DRIVER_OK status bit. At this point the device is - "live". + ``live''. \end{enumerate} If any of these steps go irrecoverably wrong, the driver SHOULD @@ -883,7 +883,7 @@ exposed in the available ring (and not marked consumed by the device in the used ring) of a live virtqueue. A driver MUST NOT decrement the available \field{idx} on a live virtqueue (ie. -there is no way to "unexpose" buffers). +there is no way to ``unexpose'' buffers). Thus a driver MUST ensure a virtqueue isn't live (by device reset) before removing exposed buffers. @@ -954,7 +954,7 @@ All 32-bit and 16-bit fields are little-endian. \drivernormative{\subsubsection}{PCI Device Layout}{Virtio Transport Options / Virtio Over PCI Bus / PCI Device Layout} The driver -MUST access each field using the “natural” access method, i.e. +MUST access each field using the ``natural'' access method, i.e. 32-bit accesses for 32-bit fields, 16-bit accesses for 16-bit fields and 8-bit accesses for 8-bit fields. @@ -1410,7 +1410,7 @@ I/O region of the PCI device, as documented below. When using the legacy interface the driver MAY access the device-specific region using any width accesses, and a transitional device MUST present driver with the same results as -when accessed using the “natural” access method (i.e. +when accessed using the ``natural'' access method (i.e. 32-bit accesses for 32-bit fields, etc). Note that this is possible because while the virtio common configuration structure is PCI @@ -1748,7 +1748,7 @@ The driver interrupt handler would typically: Virtual environments without PCI support (a common situation in embedded devices models) might use simple memory mapped device -("virtio-mmio") instead of the PCI device. +(``virtio-mmio'') instead of the PCI device. The memory mapped virtio device behaviour is based on the PCI device specification. Therefore most of operations like device @@ -1805,7 +1805,7 @@ All register values are organized as Little Endian. \endlastfoot \mmioreg{MagicValue}{Magic value}{0x000}{R}{% 0x74726976 - (a Little Endian equivalent of the "virt" string). + (a Little Endian equivalent of the ``virt'' string). } \hline \mmioreg{Version}{Device version number}{0x004}{R}{% @@ -2818,7 +2818,7 @@ features. \begin{description} \item[VIRTIO_NET_F_CSUM (0)] Device handles packets with partial checksum. This - “checksum offload” is a common feature on modern network cards. + ``checksum offload'' is a common feature on modern network cards. \item[VIRTIO_NET_F_GUEST_CSUM (1)] Driver handles packets with partial checksum. @@ -2935,7 +2935,7 @@ A driver SHOULD negotiate VIRTIO_NET_F_MAC if the device offers it. If the driver negotiates the VIRTIO_NET_F_MAC feature, the driver MUST set the physical address of the NIC to \field{mac}. Otherwise, it SHOULD use a locally-administered MAC address (see \hyperref[intro:IEEE 802]{IEEE 802}, -"9.2 48-bit universal LAN MAC addresses"). +``9.2 48-bit universal LAN MAC addresses''). If the driver does not negotiate the VIRTIO_NET_F_STATUS feature, it SHOULD assume the link is active, otherwise it SHOULD read the link status from @@ -2970,7 +2970,7 @@ A driver would perform a typical initialization routine like so: number of the transmit and receive queues to use. \item If the VIRTIO_NET_F_MAC feature bit is set, the configuration - space \field{mac} entry indicates the “physical” address of the + space \field{mac} entry indicates the ``physical'' address of the network card, otherwise the driver would typically generate a random local MAC address. @@ -4399,7 +4399,7 @@ followed by four zero bytes. With this representation, a virtio-scsi device can serve up to 256 targets and 16384 LUNs per target. -\field{id} is the command identifier (“tag”). +\field{id} is the command identifier (``tag''). \field{task_attr} defines the task attribute as in the table above, but all task attributes @@ -4415,7 +4415,7 @@ taken from the configuration space. \field{sense} and subsequent fields are always device-writable. \field{sense_len} indicates the number of bytes actually written to the sense buffer. \field{residual} indicates the residual size, -calculated as “data_length - number_of_transferred_bytes”, for +calculated as ``data_length - number_of_transferred_bytes'', for read or write operations. For bidirectional commands, the number_of_transferred_bytes includes both read and written bytes. A \field{residual} that is less than the size of \field{datain} means that @@ -4434,7 +4434,7 @@ following: \item[VIRTIO_SCSI_S_OK] when the request was completed and the \field{status} byte is filled with a SCSI status code (not necessarily - "GOOD"). + ``GOOD''). \item[VIRTIO_SCSI_S_OVERRUN] if the content of the CDB requires transferring more data than is available in the data buffers. @@ -4639,7 +4639,7 @@ them. For this reason, placing 10-15 buffers on the event queue should be enough. Buffers returned by the device on the eventq will be referred to -as "events" in the rest of this section. Events have the +as ``events'' in the rest of this section. Events have the following format: \begin{lstlisting} @@ -4701,18 +4701,18 @@ contents of \field{event}. The following events are defined: above: \begin{description} - \item[VIRTIO_SCSI_EVT_RESET_REMOVED] (“LUN/target removed”) is used + \item[VIRTIO_SCSI_EVT_RESET_REMOVED] (``LUN/target removed'') is used if the target or logical unit is no longer able to receive commands. - \item[VIRTIO_SCSI_EVT_RESET_HARD] (“LUN hard reset”) is used if the + \item[VIRTIO_SCSI_EVT_RESET_HARD] (``LUN hard reset'') is used if the logical unit has been reset, but is still present. - \item[VIRTIO_SCSI_EVT_RESET_RESCAN] (“rescan LUN/target”) is used if + \item[VIRTIO_SCSI_EVT_RESET_RESCAN] (``rescan LUN/target'') is used if a target or logical unit has just appeared on the device. \end{description} - The “removed” and “rescan” events can happen when + The ``removed'' and ``rescan'' events can happen when VIRTIO_SCSI_F_HOTPLUG feature was negotiated; when sent for LUN 0, they MAY apply to the entire target so the driver can ask the initiator to rescan the target to detect this. @@ -4722,13 +4722,13 @@ contents of \field{event}. The following events are defined: application has never discovered them): \begin{itemize} - \item “LUN/target removed” maps to sense key ILLEGAL REQUEST, asc + \item ``LUN/target removed'' maps to sense key ILLEGAL REQUEST, asc 0x25, ascq 0x00 (LOGICAL UNIT NOT SUPPORTED) - \item “LUN hard reset” maps to sense key UNIT ATTENTION, asc 0x29 + \item ``LUN hard reset'' maps to sense key UNIT ATTENTION, asc 0x29 (POWER ON, RESET OR BUS DEVICE RESET OCCURRED) - \item “rescan LUN/target” maps to sense key UNIT ATTENTION, asc + \item ``rescan LUN/target'' maps to sense key UNIT ATTENTION, asc 0x3f, ascq 0x0e (REPORTED LUNS DATA HAS CHANGED) \end{itemize} @@ -4753,8 +4753,8 @@ contents of \field{event}. The following events are defined: All fields are written by the device. \field{event} is set to VIRTIO_SCSI_T_ASYNC_NOTIFY. \field{lun} addresses a logical unit in the SCSI host. \field{reason} is a subset of the - events that the driver has subscribed to via the "Asynchronous - notification subscription" command. + events that the driver has subscribed to via the ``Asynchronous + notification subscription'' command. \item LUN parameter change \begin{lstlisting} |