Commit c82b59e7 authored by tangwenji's avatar tangwenji Committed by Nicholas Bellinger
Browse files

target: fix destroy device in target_configure_device



After dev->transport->configure_device succeeds, target_configure_device
exits abnormally, dev_flags has not set DF_CONFIGURED yet, does not call
destroy_device function in free_device.

Signed-off-by: default avatartangwenji <tang.wenji@zte.com.cn>
Acked-by: default avatarMike Christie <mchristi@redhat.com>
Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
parent 892782ca
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -997,7 +997,7 @@ int target_configure_device(struct se_device *dev)

	ret = core_setup_alua(dev);
	if (ret)
		goto out_free_index;
		goto out_destroy_device;

	/*
	 * Startup the struct se_device processing thread
@@ -1041,6 +1041,8 @@ int target_configure_device(struct se_device *dev)

out_free_alua:
	core_alua_free_lu_gp_mem(dev);
out_destroy_device:
	dev->transport->destroy_device(dev);
out_free_index:
	mutex_lock(&device_mutex);
	idr_remove(&devices_idr, dev->dev_index);