tcm_vhost: document inflight ref-counting use
Add more comments so we remember not to break it next time we change things. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
2839400f8f
commit
3dfbff328f
1 changed files with 10 additions and 2 deletions
|
@ -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;
|
||||
};
|
||||
|
||||
|
@ -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…
Add table
Reference in a new issue