Commit a6824b5e authored by Haoqian He's avatar Haoqian He Committed by Tomasz Zawadzki
Browse files

vhost_scsi: don't free svdev when vhost_dev_unregister failed



In vhost_scsi, when vhost_dev_unregister failed, svdev should
not be free like vhost_blk.

Change-Id: Ic090e3cf1d2af590fc435ba68abad85d1282f265
Signed-off-by: default avatarHaoqian He <haoqian.he@smartx.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/20338


Community-CI: Mellanox Build Bot
Reviewed-by: default avatarChangpeng Liu <changpeng.liu@intel.com>
Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarJim Harris <jim.harris@samsung.com>
parent c0aa9f19
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -175,9 +175,10 @@ vhost_scsi_dev_unregister(void *arg1)
{
	struct spdk_vhost_scsi_dev *svdev = arg1;

	vhost_dev_unregister(&svdev->vdev);
	if (vhost_dev_unregister(&svdev->vdev) == 0) {
		free(svdev);
	}
}

static void
remove_scsi_tgt(struct spdk_vhost_scsi_dev *svdev,
@@ -904,6 +905,9 @@ vhost_scsi_dev_remove(struct spdk_vhost_dev *vdev)

	if (svdev->ref == 0) {
		rc = vhost_dev_unregister(vdev);
		if (rc != 0) {
			return rc;
		}
		free(svdev);
	}