mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2026-03-18 11:04:12 +00:00
block_if is the backend of ahci and virtio-blk. Only one queue is supported by block_if now. Several worker threads are created as the thread pool for the queue. One BIG mutex is used for the queue and thread operation. With this patch block_if can support multiple queues and each queue is backed by several worker threads. blockif_req can be submited/enqueued into one specified queue. By spliting into several queues contention from the BIG mutex can be relieved/eliminated. This is used to support virtio-blk multiple queues feature. Tracked-On: #8612 Signed-off-by: Jian Jun Chen <jian.jun.chen@intel.com> Acked-by: Wang, Yu1 <yu1.wang@intel.com>