aboutsummaryrefslogtreecommitdiff
path: root/hw/misc/sifive_test.c
diff options
context:
space:
mode:
authorManos Pitsidianakis <manos.pitsidianakis@linaro.org>2024-03-24 12:04:59 +0200
committerMichael Tokarev <mjt@tls.msk.ru>2024-04-09 21:15:05 +0300
commit20cd0c86553e14c495451ce7d1e2e4efd81041f0 (patch)
tree294272788ecac73e63bc4bef2fa013eaed61c79d /hw/misc/sifive_test.c
parent627aa460baf789b44cfd1d1285d6ad038c245959 (diff)
virtio-snd: rewrite invalid tx/rx message handling
The current handling of invalid virtqueue elements inside the TX/RX virt queue handlers is wrong. They are added in a per-stream invalid queue to be processed after the handler is done examining each message, but the invalid message might not be specifying any stream_id; which means it's invalid to add it to any stream->invalid queue since stream could be NULL at this point. This commit moves the invalid queue to the VirtIOSound struct which guarantees there will always be a valid temporary place to store them inside the tx/rx handlers. The queue will be emptied before the handler returns, so the queue must be empty at any other point of the device's lifetime. Signed-off-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org> Message-Id: <virtio-snd-rewrite-invalid-tx-rx-message-handling-v1.manos.pitsidianakis@linaro.org> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> (cherry picked from commit 731655f87f319fd06f27282c6cafbc2467ac8045) Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Diffstat (limited to 'hw/misc/sifive_test.c')
0 files changed, 0 insertions, 0 deletions