Displaying 3 results from an estimated 3 matches for "target_undepend_item".
2023 Feb 23
5
[PATCH 0/5] vhost-scsi: Fix management operation hangs
The following patches were made over Linus tree and also apply over
mst tree's vhost branch. The patches fix an issue where management
operations like LUN mapping/unmapping and device addition hang for 30
seconds or up to N minutes depending on the device.
The problem is that we use a global mutex to protect the list of tpgs
but we hold that mutex during those management operations. So if you
2023 Mar 21
8
[PATCH v2 0/7] vhost-scsi: Fix crashes and management op hangs
The following patches were made over Linus tree. The patches fix 3
issues:
1. If a user performs LIO LUN unmapping before the endpoint has been
cleared then we can end up trying to free a bogus tmf struct if the
TMF is still exucuting when we do the unmap.
2. If vhost_scsi_setup_vq_cmds fails we can leave the tpg->vhost_scsi
pointer set and we can end up trying to access a freed struct.
3.
2020 Sep 24
0
[PATCH 3/8] vhost scsi: alloc cmds per vq instead of session
...; i--) {
> + if (!vhost_vq_get_backend(&vs->vqs[i].vq))
> + vhost_scsi_destroy_vq_cmds(&vs->vqs[i].vq);
> + }
> +undepend:
> + for (i = 0; i < VHOST_SCSI_MAX_TARGET; i++) {
> + tpg = vs_tpg[i];
> + if (tpg) {
> + tpg->tv_tpg_vhost_count--;
> + target_undepend_item(&tpg->se_tpg.tpg_group.cg_item);
> + }
> + }
> + kfree(vs_tpg);
> out:
> mutex_unlock(&vs->dev.mutex);
> mutex_unlock(&vhost_scsi_mutex);
> @@ -1549,6 +1653,12 @@ static void vhost_scsi_flush(struct vhost_scsi *vs)
> mutex_lock(&vq->mutex);...