-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Major
-
None
-
Affects Version/s: virtio 1.1 cs01
-
None
-
Environment:
"Savir, Gil" <[email protected]>
If VIRTIO_F_EVENT_IDX feature bit is negotiated, then Available Buffer
Notification Suppression mechanism used is avail event (not flags).
The spec (both v1.0 / v1.1-draft) states that the device MAY use this mechanism
(Paragraph 2.4.9.2 / 2.6.10.2 respectively).
This statement implies that the device may choose not to use this suppression
mechanism (even if VIRTIO_F_EVENT_IDX was negotiated).
However – there’s no way for the device to inform the driver that he is not
using avail_event.
As consequence, since there will be a default value in avail_event (probably
0x0), then the driver will always assume that it has to send notify “once-per
ring”.
This will render performance futile, or force the device to actively update
avail_event.