Loading drivers/vhost/tcm_vhost.c +10 −2 Original line number Diff line number Diff line Loading @@ -83,9 +83,16 @@ struct vhost_scsi_inflight { struct vhost_scsi_virtqueue { struct vhost_virtqueue vq; /* Track inflight reqs, protected by vq->mutex */ /* * Reference counting for inflight reqs, used for flush operation. At * each time, one reference tracks new commands submitted, while we * wait for another one to reach 0. */ struct vhost_scsi_inflight inflights[2]; /* Indicate current inflight in use, protected by vq->mutex */ /* * Indicate current inflight in use, protected by vq->mutex. * Writers must also take dev mutex and flush under it. */ int inflight_idx; }; Loading Loading @@ -1015,6 +1022,7 @@ static void vhost_scsi_flush_vq(struct vhost_scsi *vs, int index) vhost_poll_flush(&vs->vqs[index].vq.poll); } /* Callers must hold dev mutex */ static void vhost_scsi_flush(struct vhost_scsi *vs) { struct vhost_scsi_inflight *old_inflight[VHOST_SCSI_MAX_VQ]; Loading Loading
drivers/vhost/tcm_vhost.c +10 −2 Original line number Diff line number Diff line Loading @@ -83,9 +83,16 @@ struct vhost_scsi_inflight { struct vhost_scsi_virtqueue { struct vhost_virtqueue vq; /* Track inflight reqs, protected by vq->mutex */ /* * Reference counting for inflight reqs, used for flush operation. At * each time, one reference tracks new commands submitted, while we * wait for another one to reach 0. */ struct vhost_scsi_inflight inflights[2]; /* Indicate current inflight in use, protected by vq->mutex */ /* * Indicate current inflight in use, protected by vq->mutex. * Writers must also take dev mutex and flush under it. */ int inflight_idx; }; Loading Loading @@ -1015,6 +1022,7 @@ static void vhost_scsi_flush_vq(struct vhost_scsi *vs, int index) vhost_poll_flush(&vs->vqs[index].vq.poll); } /* Callers must hold dev mutex */ static void vhost_scsi_flush(struct vhost_scsi *vs) { struct vhost_scsi_inflight *old_inflight[VHOST_SCSI_MAX_VQ]; Loading