summaryrefslogtreecommitdiffstats
path: root/include/uapi/linux/virtio_config.h
diff options
context:
space:
mode:
authorStefan Hajnoczi2016-03-29 17:43:45 +0200
committerMichael S. Tsirkin2016-04-07 14:16:41 +0200
commitc00bbcf8628969e103d4a7b351a53746f1025576 (patch)
tree4e88bf869d6bd8194931fc3ba4a4337af95245d2 /include/uapi/linux/virtio_config.h
parentMAINTAINERS: add entry for QEMU (diff)
downloadkernel-qcow2-linux-c00bbcf8628969e103d4a7b351a53746f1025576.tar.gz
kernel-qcow2-linux-c00bbcf8628969e103d4a7b351a53746f1025576.tar.xz
kernel-qcow2-linux-c00bbcf8628969e103d4a7b351a53746f1025576.zip
virtio: add VIRTIO_CONFIG_S_NEEDS_RESET device status bit
The VIRTIO 1.0 specification added the DEVICE_NEEDS_RESET device status bit in "VIRTIO-98: Add DEVICE_NEEDS_RESET". This patch defines the device status bit in the uapi header file so that both the kernel and userspace applications can use it. The bit is currently unused by the virtio guest drivers and vhost. According to the spec "a good implementation will try to recover by issuing a reset". This is not attempted here because it requires auditing the virtio drivers to ensure there are no resource leaks or crashes if the device needs to be reset mid-operation. See "2.1 Device Status Field" in the VIRTIO 1.0 specification for details. Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'include/uapi/linux/virtio_config.h')
-rw-r--r--include/uapi/linux/virtio_config.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/uapi/linux/virtio_config.h b/include/uapi/linux/virtio_config.h
index c18264df9504..4cb65bbfa654 100644
--- a/include/uapi/linux/virtio_config.h
+++ b/include/uapi/linux/virtio_config.h
@@ -40,6 +40,8 @@
#define VIRTIO_CONFIG_S_DRIVER_OK 4
/* Driver has finished configuring features */
#define VIRTIO_CONFIG_S_FEATURES_OK 8
+/* Device entered invalid state, driver must reset it */
+#define VIRTIO_CONFIG_S_NEEDS_RESET 0x40
/* We've given up on this device. */
#define VIRTIO_CONFIG_S_FAILED 0x80