virtio: remove virtio_dev_get_status asserts

virtio_dev_get_status may result in an MMIO read,
which is quite expensive. Removed it to improve
performance on debug builds.

Change-Id: Ibe2d13ad381f02f8d258d630283c14ce20b7a340
Signed-off-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com>
Reviewed-on: https://review.gerrithub.io/398468
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
This commit is contained in:
Dariusz Stojaczyk 2018-02-05 20:58:10 +01:00 committed by Jim Harris
parent 91f0458271
commit 7f0c2bf4b4

View File

@ -459,8 +459,6 @@ virtqueue_req_start(struct virtqueue *vq, void *cookie, int iovcnt)
struct vring_desc *desc; struct vring_desc *desc;
struct vq_desc_extra *dxp; struct vq_desc_extra *dxp;
assert(virtio_dev_get_status(vq->vdev) & VIRTIO_CONFIG_S_DRIVER_OK);
if (iovcnt > vq->vq_free_cnt) { if (iovcnt > vq->vq_free_cnt) {
return iovcnt > vq->vq_nentries ? -EINVAL : -ENOMEM; return iovcnt > vq->vq_nentries ? -EINVAL : -ENOMEM;
} }
@ -571,8 +569,6 @@ virtio_recv_pkts(struct virtqueue *vq, void **io, uint32_t *len, uint16_t nb_pkt
{ {
uint16_t nb_used, num; uint16_t nb_used, num;
assert(virtio_dev_get_status(vq->vdev) & VIRTIO_CONFIG_S_DRIVER_OK);
nb_used = VIRTQUEUE_NUSED(vq); nb_used = VIRTQUEUE_NUSED(vq);
virtio_rmb(); virtio_rmb();