Skip to content

virtio-scsi: fix 100% CPU consumption with IOThreads

Bugzilla: 2079347
Signed-off-by: Stefan Hajnoczi stefanha@redhat.com
Brew: broken due to clang 14 upgrade, see https://bugzilla.redhat.com/show_bug.cgi?id=2064530

The virtio-scsi device emulation code was polling the event virtqueue. This is an rx-style virtqueue where the driver supplies available buffers and the device uses those buffers when an event occurs. It doesn't make sense to consume CPU waiting for new event virtqueue buffers since the device cannot use them until an event actually occurs. This manifests itself as 100% CPU consumption.

Patch 1 solves another bug related to dataplane/IOThread and patches 3 and beyond clean up the code.

Merge request reports