rte_vhost_vring_call() from upstream DPDK can read some unitialized memory and crash if it's called on invalid queue ids. The implementation in our internal rte_vhost fork ends up wiritng to a random descriptor number, which doesn't cause any crashes but is a bug nevertheless. To fix it, just check if the queue is initialized before interrupting it during the session start. It's not a hot I/O path and there's no performance impact. Change-Id: I830c1be98ef00d4ece9a6bd88cf79b9dfe29d2a9 Signed-off-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com> Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/457247 Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> |
||
---|---|---|
.. | ||
rte_vhost | ||
Makefile | ||
rte_vhost_compat.c | ||
vhost_blk.c | ||
vhost_internal.h | ||
vhost_nvme.c | ||
vhost_rpc.c | ||
vhost_scsi.c | ||
vhost.c |