]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/spdk/test/unit/lib/nvmf/ctrlr_discovery.c/ctrlr_discovery_ut.c
import 15.2.0 Octopus source
[ceph.git] / ceph / src / spdk / test / unit / lib / nvmf / ctrlr_discovery.c / ctrlr_discovery_ut.c
index f86bdf2bd142ac296afda099fa9a49642863f61f..33d9fa7a6b68a710a2459be3a98758cd3001d3a6 100644 (file)
 
 SPDK_LOG_REGISTER_COMPONENT("nvmf", SPDK_LOG_NVMF)
 
-DEFINE_STUB(spdk_bdev_module_claim_bdev,
-           int,
-           (struct spdk_bdev *bdev, struct spdk_bdev_desc *desc,
-            struct spdk_bdev_module *module), 0);
-
 DEFINE_STUB_V(spdk_bdev_module_release_bdev,
              (struct spdk_bdev *bdev));
 
+DEFINE_STUB(spdk_bdev_get_block_size, uint32_t,
+           (const struct spdk_bdev *bdev), 512);
+
+DEFINE_STUB(spdk_nvmf_transport_stop_listen,
+           int,
+           (struct spdk_nvmf_transport *transport,
+            const struct spdk_nvme_transport_id *trid), 0);
+
 uint32_t
 spdk_env_get_current_core(void)
 {
@@ -132,12 +135,6 @@ spdk_nvmf_tgt_get_transport(struct spdk_nvmf_tgt *tgt, enum spdk_nvme_transport_
        return &g_transport;
 }
 
-bool
-spdk_nvmf_transport_qpair_is_idle(struct spdk_nvmf_qpair *qpair)
-{
-       return false;
-}
-
 int
 spdk_nvme_transport_id_parse_trtype(enum spdk_nvme_transport_type *trtype, const char *str)
 {
@@ -214,12 +211,16 @@ test_discovery_log(void)
        struct spdk_nvmf_tgt tgt = {};
        struct spdk_nvmf_subsystem *subsystem;
        uint8_t buffer[8192];
+       struct iovec iov;
        struct spdk_nvmf_discovery_log_page *disc_log;
        struct spdk_nvmf_discovery_log_page_entry *entry;
        struct spdk_nvme_transport_id trid = {};
 
-       tgt.opts.max_subsystems = 1024;
-       tgt.subsystems = calloc(tgt.opts.max_subsystems, sizeof(struct spdk_nvmf_subsystem *));
+       iov.iov_base = buffer;
+       iov.iov_len = 8192;
+
+       tgt.max_subsystems = 1024;
+       tgt.subsystems = calloc(tgt.max_subsystems, sizeof(struct spdk_nvmf_subsystem *));
        SPDK_CU_ASSERT_FATAL(tgt.subsystems != NULL);
 
        /* Add one subsystem and verify that the discovery log contains it */
@@ -232,24 +233,25 @@ test_discovery_log(void)
        snprintf(trid.traddr, sizeof(trid.traddr), "1234");
        snprintf(trid.trsvcid, sizeof(trid.trsvcid), "5678");
        SPDK_CU_ASSERT_FATAL(spdk_nvmf_subsystem_add_listener(subsystem, &trid) == 0);
+       subsystem->state = SPDK_NVMF_SUBSYSTEM_ACTIVE;
 
        /* Get only genctr (first field in the header) */
        memset(buffer, 0xCC, sizeof(buffer));
        disc_log = (struct spdk_nvmf_discovery_log_page *)buffer;
-       spdk_nvmf_get_discovery_log_page(&tgt, buffer, 0, sizeof(disc_log->genctr));
+       spdk_nvmf_get_discovery_log_page(&tgt, &iov, 1, 0, sizeof(disc_log->genctr));
        CU_ASSERT(disc_log->genctr == 1); /* one added subsystem */
 
        /* Get only the header, no entries */
        memset(buffer, 0xCC, sizeof(buffer));
        disc_log = (struct spdk_nvmf_discovery_log_page *)buffer;
-       spdk_nvmf_get_discovery_log_page(&tgt, buffer, 0, sizeof(*disc_log));
+       spdk_nvmf_get_discovery_log_page(&tgt, &iov, 1, 0, sizeof(*disc_log));
        CU_ASSERT(disc_log->genctr == 1);
        CU_ASSERT(disc_log->numrec == 1);
 
        /* Offset 0, exact size match */
        memset(buffer, 0xCC, sizeof(buffer));
        disc_log = (struct spdk_nvmf_discovery_log_page *)buffer;
-       spdk_nvmf_get_discovery_log_page(&tgt, buffer, 0,
+       spdk_nvmf_get_discovery_log_page(&tgt, &iov, 1, 0,
                                         sizeof(*disc_log) + sizeof(disc_log->entries[0]));
        CU_ASSERT(disc_log->genctr != 0);
        CU_ASSERT(disc_log->numrec == 1);
@@ -258,7 +260,7 @@ test_discovery_log(void)
        /* Offset 0, oversize buffer */
        memset(buffer, 0xCC, sizeof(buffer));
        disc_log = (struct spdk_nvmf_discovery_log_page *)buffer;
-       spdk_nvmf_get_discovery_log_page(&tgt, buffer, 0, sizeof(buffer));
+       spdk_nvmf_get_discovery_log_page(&tgt, &iov, 1, 0, sizeof(buffer));
        CU_ASSERT(disc_log->genctr != 0);
        CU_ASSERT(disc_log->numrec == 1);
        CU_ASSERT(disc_log->entries[0].trtype == 42);
@@ -268,10 +270,12 @@ test_discovery_log(void)
        /* Get just the first entry, no header */
        memset(buffer, 0xCC, sizeof(buffer));
        entry = (struct spdk_nvmf_discovery_log_page_entry *)buffer;
-       spdk_nvmf_get_discovery_log_page(&tgt, buffer,
+       spdk_nvmf_get_discovery_log_page(&tgt, &iov,
+                                        1,
                                         offsetof(struct spdk_nvmf_discovery_log_page, entries[0]),
                                         sizeof(*entry));
        CU_ASSERT(entry->trtype == 42);
+       subsystem->state = SPDK_NVMF_SUBSYSTEM_INACTIVE;
        spdk_nvmf_subsystem_destroy(subsystem);
        free(tgt.subsystems);
        free(tgt.discovery_log_page);