Commit c85df535 authored by GangCao's avatar GangCao Committed by Tomasz Zawadzki
Browse files

lib/virtio: handle double free of virtio_dev device



Change-Id: I76a3f9125d05aa6ca0c31e8220036cf853a24619
Signed-off-by: default avatarGangCao <gang.cao@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/15617


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarChangpeng Liu <changpeng.liu@intel.com>
Reviewed-by: default avatarTomasz Zawadzki <tomasz.zawadzki@intel.com>
Community-CI: Mellanox Build Bot
parent f67c74a2
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
@@ -428,7 +428,6 @@ virtio_vfio_user_dev_init(struct virtio_dev *vdev, const char *name, const char
	if (!dev->ctx) {
		SPDK_ERRLOG("Error to setup %s as vfio device\n", path);
		virtio_dev_destruct(vdev);
		free(dev);
		return -EINVAL;
	}

@@ -438,8 +437,6 @@ virtio_vfio_user_dev_init(struct virtio_dev *vdev, const char *name, const char
	if (rc != 0) {
		SPDK_ERRLOG("Read PCI CMD REG failed\n");
		virtio_dev_destruct(vdev);
		spdk_vfio_user_release(dev->ctx);
		free(dev);
		return rc;
	}
	cmd_reg |= 0x404;
@@ -448,8 +445,6 @@ virtio_vfio_user_dev_init(struct virtio_dev *vdev, const char *name, const char
	if (rc != 0) {
		SPDK_ERRLOG("Write PCI CMD REG failed\n");
		virtio_dev_destruct(vdev);
		spdk_vfio_user_release(dev->ctx);
		free(dev);
		return rc;
	}