Paolo Bonzini <> writes:
> All currently defined event structs have the same fields. Simplify the
> driver by enforcing this also for future structs.
>
> Signed-off-by: Paolo Bonzini <>
This one looks like this:
commit 10633ee0ebae4540e9443367df4b195cb31f98c5
Author: Rusty Russell <>
Date: Wed Aug 21 15:55:17 2013 +0930
2.5.6.6.3: unify event structs
From: Paolo Bonzini <>
All currently defined event structs have the same fields. Simplify the
driver by enforcing this also for future structs.
Signed-off-by: Paolo Bonzini <>
See: https://lists.oasis-open.org/archives/virtio-comment/201308/msg00031.html
Signed-off-by: Rusty Russell <>
diff --git a/virtio-v1.0-wd01-part1-specification.txt b/virtio-v1.0-wd01-part1-specification.txt
index 3a0a592..c4a341e 100644
--- a/virtio-v1.0-wd01-part1-specification.txt
+++ b/virtio-v1.0-wd01-part1-specification.txt
@@ -2417,7 +2417,8 @@ following format:
struct virtio_scsi_event {
// Write-only part
u32 event;
- ...
+ u8 lun[8];
+ i32 reason;
}
If bit 31 is set in the event field, the device failed to report
@@ -2426,7 +2427,7 @@ poll the logical units for unit attention conditions, and/or do
whatever form of bus scan is appropriate for the guest operating
system.
-Other data that the device writes to the buffer depends on the
+The meaning of the reason field depends on the
contents of the event field. The following events are defined:
No event
@@ -2449,13 +2450,6 @@ contents of the event field. The following events are defined:
Transport reset
#define VIRTIO_SCSI_T_TRANSPORT_RESET 1
- struct virtio_scsi_event_reset {
- // Write-only part
- u32 event;
- u8 lun[8];
- u32 reason;
- }
-
#define VIRTIO_SCSI_EVT_RESET_HARD 0
#define VIRTIO_SCSI_EVT_RESET_RESCAN 1
#define VIRTIO_SCSI_EVT_RESET_REMOVED 2
@@ -2514,13 +2508,6 @@ contents of the event field. The following events are defined:
Asynchronous notification
#define VIRTIO_SCSI_T_ASYNC_NOTIFY 2
- struct virtio_scsi_event_an {
- // Write-only part
- u32 event;
- u8 lun[8];
- u32 reason;
- }
-
By sending this event, the device signals that an asynchronous
event was fired from a physical interface.