diff --git a/lib/scsi/lun.c b/lib/scsi/lun.c index 3b29a79cf..f2e7495a3 100644 --- a/lib/scsi/lun.c +++ b/lib/scsi/lun.c @@ -232,7 +232,7 @@ spdk_scsi_lun_hotplug(void *arg) if (!spdk_scsi_lun_has_pending_tasks(lun)) { spdk_scsi_lun_free_io_channel(lun); - spdk_scsi_lun_delete(lun->name); + spdk_scsi_lun_delete(lun); } } @@ -339,18 +339,11 @@ spdk_scsi_lun_destruct(struct spdk_scsi_lun *lun) } int -spdk_scsi_lun_delete(const char *lun_name) +spdk_scsi_lun_delete(struct spdk_scsi_lun *lun) { - struct spdk_scsi_lun *lun; struct spdk_scsi_dev *dev; pthread_mutex_lock(&g_spdk_scsi.mutex); - lun = spdk_lun_db_get_lun(lun_name); - if (lun == NULL) { - SPDK_ERRLOG("LUN '%s' not found\n", lun_name); - pthread_mutex_unlock(&g_spdk_scsi.mutex); - return -1; - } dev = lun->dev; diff --git a/lib/scsi/scsi_internal.h b/lib/scsi/scsi_internal.h index 3e33f2833..6b09757dc 100644 --- a/lib/scsi/scsi_internal.h +++ b/lib/scsi/scsi_internal.h @@ -139,7 +139,7 @@ void spdk_scsi_lun_execute_tasks(struct spdk_scsi_lun *lun); int spdk_scsi_lun_task_mgmt_execute(struct spdk_scsi_task *task, enum spdk_scsi_task_func func); void spdk_scsi_lun_complete_task(struct spdk_scsi_lun *lun, struct spdk_scsi_task *task); void spdk_scsi_lun_complete_mgmt_task(struct spdk_scsi_lun *lun, struct spdk_scsi_task *task); -int spdk_scsi_lun_delete(const char *lun_name); +int spdk_scsi_lun_delete(struct spdk_scsi_lun *lun); int spdk_scsi_lun_allocate_io_channel(struct spdk_scsi_lun *lun); void spdk_scsi_lun_free_io_channel(struct spdk_scsi_lun *lun); bool spdk_scsi_lun_has_pending_tasks(const struct spdk_scsi_lun *lun); diff --git a/test/unit/lib/scsi/lun.c/lun_ut.c b/test/unit/lib/scsi/lun.c/lun_ut.c index 8b3d48e94..336619258 100644 --- a/test/unit/lib/scsi/lun.c/lun_ut.c +++ b/test/unit/lib/scsi/lun.c/lun_ut.c @@ -654,16 +654,8 @@ lun_delete(void) lun = lun_construct(); - rc = spdk_scsi_lun_delete(lun->name); + rc = spdk_scsi_lun_delete(lun); CU_ASSERT_EQUAL(rc, 0); - - lun = lun_construct(); - - rc = spdk_scsi_lun_delete(lun->name); - CU_ASSERT_EQUAL(rc, 0); - - rc = spdk_scsi_lun_delete("test"); - CU_ASSERT_EQUAL(rc, -1); } int