[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 0/2] virtio-blk: Avoid processing requests on the main context on
From: |
Sergio Lopez |
Subject: |
[PATCH 0/2] virtio-blk: Avoid processing requests on the main context on restart |
Date: |
Wed, 3 Jun 2020 11:32:38 +0200 |
On restart, we were scheduling a BH to process queued requests, which
would run before starting up the data plane, leading to those requests
being assigned and started on coroutines on the main context.
This could cause requests to be wrongly processed in parallel from
different threads (the main thread and the iothread managing the data
plane), potentially leading to multiple issues.
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1812765
See "virtio-blk: Disable request queuing while switching contexts" for
previous discussion:
- https://lists.gnu.org/archive/html/qemu-devel/2020-06/msg00304.html
Sergio Lopez (2):
virtio-blk: Refactor the code that processes queued requests
virtio-blk: On restart, process queued requests in the proper context
include/hw/virtio/virtio-blk.h | 1 +
hw/block/dataplane/virtio-blk.c | 8 ++++++++
hw/block/virtio-blk.c | 30 +++++++++++++++++++++---------
3 files changed, 30 insertions(+), 9 deletions(-)
--
2.26.2
- [PATCH 0/2] virtio-blk: Avoid processing requests on the main context on restart,
Sergio Lopez <=