dm: virtio-blk: add multiple queues (mq) support

Virtio-blk can support multiple virtqueues (mq) which is negotiated
between FE and BE by the feature bit VIRTIO_BLK_F_MQ. The virtqueue
number of virtio-blk can be specified by "mq=x" in the parameter.
For example: "virtio-blk,iothread,mq=2,..."

Tracked-On: #8612

Signed-off-by: Jian Jun Chen <jian.jun.chen@intel.com>
Acked-by: Wang, Yu1 <yu1.wang@intel.com>
This commit is contained in:
Jian Jun Chen
2023-07-10 19:51:05 +08:00
committed by acrnsi-robot
parent 74bc2f7cfb
commit 562c22fb4e
4 changed files with 100 additions and 32 deletions

View File

@@ -48,6 +48,7 @@ struct blockif_req {
ssize_t resid;
void (*callback)(struct blockif_req *req, int err);
void *param;
int qidx;
};
struct blockif_ctxt;

View File

@@ -63,6 +63,7 @@ extern bool is_winvm;
*/
void *paddr_guest2host(struct vmctx *ctx, uintptr_t gaddr, size_t len);
int virtio_uses_msix(void);
int guest_cpu_num(void);
size_t high_bios_size(void);
void init_debugexit(void);
void deinit_debugexit(void);