/spdk/lib/ftl/ |
H A D | ftl_reloc.c | 211 mv->rq->iter.idx = 0; in move_set_state() 212 mv->rq->iter.count = 0; in move_set_state() 281 if (!ftl_band_filled(band, band->md->iter.offset)) { in move_get_band() 298 struct ftl_rq_entry *entry = &rq->entries[rq->iter.idx]; in move_advance_rq() 300 assert(rq->iter.idx + rq->iter.count <= rq->num_blocks); in move_advance_rq() 302 for (i = 0; i < rq->iter.count; i++) { in move_advance_rq() 319 rq->iter.qd++; in move_advance_rq() 322 rq->iter.idx += rq->iter.count; in move_advance_rq() 329 struct ftl_rq_entry *iter = &rq->entries[idx]; in move_init_entries() local 335 iter->addr = FTL_ADDR_INVALID; in move_init_entries() [all …]
|
H A D | ftl_band.h | 61 } iter; member 249 band->md->iter.addr = band->start_addr; in ftl_band_iter_init() 250 band->md->iter.offset = 0; in ftl_band_iter_init() 256 band->md->iter.offset += num_blocks; in ftl_band_iter_advance() 257 band->md->iter.addr = ftl_band_next_xfer_addr(band, band->md->iter.addr, num_blocks); in ftl_band_iter_advance() 258 assert(band->md->iter.addr != FTL_ADDR_INVALID); in ftl_band_iter_advance() 264 band->md->iter.offset = num_blocks; in ftl_band_iter_set() 265 band->md->iter.addr = ftl_band_next_xfer_addr(band, band->md->iter.addr, num_blocks); in ftl_band_iter_set() 266 assert(band->md->iter.addr != FTL_ADDR_INVALID); in ftl_band_iter_set()
|
H A D | ftl_writer.c | 168 assert(1 == rq->iter.qd); in ftl_writer_pad_band_cb() 169 rq->iter.qd = 0; in ftl_writer_pad_band_cb() 191 if (writer->pad->iter.qd) { in ftl_writer_pad_band() 198 writer->pad->iter.qd++; in ftl_writer_pad_band() 241 writer->band->md->iter.offset); in ftl_writer_get_free_blocks() 246 writer->next_band->md->iter.offset); in ftl_writer_get_free_blocks()
|
H A D | ftl_p2l.c | 164 struct ftl_rq_entry *iter = rq->entries; in ftl_p2l_ckpt_issue() local 193 for (j = 0; i < rq->num_blocks && j < FTL_NUM_P2L_ENTRIES_NO_VSS; i++, iter++, j++) { in ftl_p2l_ckpt_issue() 194 if (iter->lba != FTL_LBA_INVALID) { in ftl_p2l_ckpt_issue() 197 ftl_band_set_p2l(band, iter->lba, addr, iter->seq_id); in ftl_p2l_ckpt_issue() 199 page->map[j].lba = iter->lba; in ftl_p2l_ckpt_issue() 200 page->map[j].seq_id = iter->seq_id; in ftl_p2l_ckpt_issue() 365 band_offs = ftl_band_block_offset_from_addr(band, band->md->iter.addr); in ftl_mngt_persist_bands_p2l() 512 assert(band->md->iter.offset % dev->xfer_size == 0); in ftl_mngt_p2l_ckpt_restore_clean() 520 if (band->md->iter.offset == 0) { in ftl_mngt_p2l_ckpt_restore_clean() 525 num_written_pages = band->md->iter.offset / dev->xfer_size * ckpt->pages_per_xfer; in ftl_mngt_p2l_ckpt_restore_clean() [all …]
|
H A D | ftl_band_ops.c | 72 rq->io.addr = band->md->iter.addr; in ftl_band_rq_write() 80 if (ftl_band_filled(band, band->md->iter.offset)) { in ftl_band_rq_write() 139 struct ftl_rq_entry *entry = &rq->entries[rq->iter.idx]; in ftl_band_rq_read() 141 assert(rq->iter.idx + rq->iter.count <= rq->num_blocks); in ftl_band_rq_read() 145 rq->io.addr = band->md->iter.addr; in ftl_band_rq_read() 148 entry->bdev_io.num_blocks = rq->iter.count; in ftl_band_rq_read() 202 brq->io.addr = band->md->iter.addr; in ftl_band_basic_rq_write() 211 if (ftl_band_filled(band, band->md->iter.offset)) { in ftl_band_basic_rq_write()
|
H A D | ftl_nv_cache.c | 733 rq->iter.status = status; in compaction_process_pin_lba() 737 if (--rq->iter.remaining == 0) { in compaction_process_pin_lba() 738 if (rq->iter.status) { in compaction_process_pin_lba() 756 assert(rq->iter.count); in compaction_process_read_entry_cb() 757 rq->iter.remaining = rq->iter.count; in compaction_process_read_entry_cb() 758 rq->iter.status = 0; in compaction_process_read_entry_cb() 760 FTL_RQ_ENTRY_LOOP(rq, entry, rq->iter.count) { in compaction_process_read_entry_cb() 789 assert(rq->iter.remaining >= entry->bdev_io.num_blocks); in compaction_process_read_entry() 790 rq->iter in compaction_process_read_entry() [all...] |
/spdk/lib/util/ |
H A D | iov.c | 23 spdk_ioviter_first(struct spdk_ioviter *iter, in spdk_ioviter_first() argument 39 len = spdk_ioviter_firstv(iter, 2, iovs, iovcnts, out); in spdk_ioviter_first() 50 spdk_ioviter_firstv(struct spdk_ioviter *iter, in spdk_ioviter_firstv() argument 59 iter->count = count; in spdk_ioviter_firstv() 62 it = &iter->iters[i]; in spdk_ioviter_firstv() 70 return spdk_ioviter_nextv(iter, out); in spdk_ioviter_firstv() 74 spdk_ioviter_next(struct spdk_ioviter *iter, void **src, void **dst) in spdk_ioviter_next() argument 79 len = spdk_ioviter_nextv(iter, out); in spdk_ioviter_next() 90 spdk_ioviter_nextv(struct spdk_ioviter *iter, void **out) in spdk_ioviter_nextv() argument 98 for (i = 0; i < iter->count; i++) { in spdk_ioviter_nextv() [all …]
|
H A D | string.c | 210 const uint8_t *iter; in spdk_strlen_pad() local 220 iter = start + size - 1; in spdk_strlen_pad() 222 if (*iter != pad_byte) { in spdk_strlen_pad() 223 return iter - start + 1; in spdk_strlen_pad() 226 if (iter == start) { in spdk_strlen_pad() 230 iter--; in spdk_strlen_pad()
|
/spdk/scripts/perf/vhost/ |
H A D | conf-generator | 19 local diff iter 66 for ((iter = 0; iter < aligned_number_of_vms && vm < vm_count; iter++, vm++)); do 130 local iter nvmes_no=0 vms_no=0 _vms_per_nvme 138 for ((iter = 0; iter <= (vms_no - nvmes_no <= 0 ? 1 : vms_no - nvmes_no); iter++)); do
|
/spdk/test/nvme/reserve/ |
H A D | reserve.c | 24 #define foreach_dev(iter) \ argument 25 for (iter = g_devs; iter - g_devs < g_num_devs; iter++) 395 struct dev *iter; in main() local 415 foreach_dev(iter) { in main() 416 ret = reserve_controller(iter->ctrlr, &iter->pci_addr); in main() 424 foreach_dev(iter) { in main() 425 spdk_nvme_detach_async(iter in main() [all...] |
/spdk/lib/ftl/mngt/ |
H A D | ftl_mngt_recovery.c | 36 } iter; member 56 ctx->iter.i++; in recovery_iter_advance() 63 snippet->current.blocks = spdk_min(snippet->current.blocks, ctx->iter.block_limit); in recovery_iter_advance() 66 ctx->iter.lba_first = first_block * (FTL_BLOCK_SIZE / dev->layout.l2p.addr_size); in recovery_iter_advance() 69 ctx->iter.lba_last = last_blocks * (FTL_BLOCK_SIZE / dev->layout.l2p.addr_size); in recovery_iter_advance() 71 if (ctx->iter.lba_last > dev->num_lbas) { in recovery_iter_advance() 72 ctx->iter.lba_last = dev->num_lbas; in recovery_iter_advance() 110 ctx->iter.block_limit = spdk_divide_round_up(l2p_limit, FTL_BLOCK_SIZE); in ftl_mngt_recovery_init() 113 ctx->l2p_snippet.count = ctx->iter.block_limit * lbas_in_block; in ftl_mngt_recovery_init() 126 ctx->l2p_snippet.region.current.blocks = ctx->iter.block_limit; in ftl_mngt_recovery_init() [all …]
|
/spdk/lib/log/ |
H A D | log_flags.c | 30 struct spdk_log_flag *iter; in spdk_log_register_flag() local 44 TAILQ_FOREACH(iter, &g_log_flags, tailq) { in spdk_log_register_flag() 45 if (strcasecmp(iter->name, flag->name) > 0) { in spdk_log_register_flag() 46 TAILQ_INSERT_BEFORE(iter, flag, tailq); in spdk_log_register_flag()
|
/spdk/test/nvme/sgl/ |
H A D | sgl.c | 28 #define foreach_dev(iter) \ argument 29 for (iter = devs; iter - devs < num_devs; iter++) 482 struct dev *iter; in main() local 505 foreach_dev(iter) { in main() 506 #define TEST(x) writev_readv_tests(iter, x, #x) in main() 521 printf("%s: failed sgl tests\n", iter->name); in main() 527 foreach_dev(iter) { in main() 528 spdk_nvme_detach_async(iter in main() [all...] |
/spdk/lib/rocksdb/ |
H A D | env_spdk.cc | 555 spdk_fs_iter iter; in GetChildren() local 559 iter = spdk_fs_iter_first(g_fs); in GetChildren() 560 while (iter != NULL) { in GetChildren() 561 file = spdk_fs_iter_get_file(iter); in GetChildren() 564 iter = spdk_fs_iter_next(iter); in GetChildren() 575 iter = spdk_fs_iter_next(iter); in GetChildren() 718 spdk_fs_iter iter; in ~SpdkEnv() local 725 iter = spdk_fs_iter_first(g_fs); in ~SpdkEnv() 726 while (iter != NULL) { in ~SpdkEnv() 727 file = spdk_fs_iter_get_file(iter); in ~SpdkEnv() [all …]
|
/spdk/module/blobfs/bdev/ |
H A D | blobfs_fuse.c | 84 spdk_fs_iter iter; in fuse_readdir() local 89 iter = spdk_fs_iter_first(thd_bfuse->fs); in fuse_readdir() 90 while (iter != NULL) { in fuse_readdir() 91 file = spdk_fs_iter_get_file(iter); in fuse_readdir() 92 iter = spdk_fs_iter_next(iter); in fuse_readdir()
|
/spdk/lib/init/ |
H A D | subsystem.c | 49 struct spdk_subsystem *iter; in _subsystem_find() local 51 TAILQ_FOREACH(iter, list, tailq) { in _subsystem_find() 52 if (strcmp(name, iter->name) == 0) { in _subsystem_find() 53 return iter; in _subsystem_find()
|
/spdk/test/nvme/err_injection/ |
H A D | err_injection.c | 26 #define foreach_dev(iter) \ argument 27 for (iter = devs; iter - devs < num_devs; iter++)
|
/spdk/lib/idxd/ |
H A D | idxd.c | 98 struct idxd_vtophys_iter *iter, in idxd_vtophys_iter_init() argument 101 iter->src = src; in idxd_vtophys_iter_init() 102 iter->dst = dst; in idxd_vtophys_iter_init() 103 iter->len = len; in idxd_vtophys_iter_init() 104 iter->offset = 0; in idxd_vtophys_iter_init() 105 iter->pasid_enabled = chan->pasid_enabled; in idxd_vtophys_iter_init() 109 idxd_vtophys_iter_next(struct idxd_vtophys_iter *iter, in idxd_vtophys_iter_next() argument 116 src = iter->src + iter->offset; in idxd_vtophys_iter_next() 117 dst = iter in idxd_vtophys_iter_next() 657 struct spdk_ioviter iter; spdk_idxd_submit_copy() local 831 struct spdk_ioviter iter; spdk_idxd_submit_compare() local 1081 struct spdk_ioviter iter; spdk_idxd_submit_copy_crc32c() local [all...] |
/spdk/test/nvme/e2edp/ |
H A D | nvme_dp.c | 31 #define foreach_dev(iter) \ argument 32 for (iter = devs; iter - devs < num_devs; iter++) 623 struct dev *iter; in main() local 664 foreach_dev(iter) { in main() 665 #define TEST(x) write_read_e2e_dp_tests(iter, x, #x) in main() 675 printf("%s: failed End-to-End data protection tests\n", iter->name); in main() 681 foreach_dev(iter) { in main() 682 spdk_nvme_detach_async(iter in main() [all...] |
/spdk/module/accel/error/ |
H A D | accel_error.c | 182 accel_error_inject_channel(struct spdk_io_channel_iter *iter) in accel_error_module_init() 184 struct spdk_io_channel *ch = spdk_io_channel_iter_get_channel(iter); 186 struct accel_error_inject_opts *opts = spdk_io_channel_iter_get_ctx(iter); in accel_error_unregister_cb() 192 spdk_for_each_channel_continue(iter, 0); in accel_error_module_fini() 103 accel_error_inject_channel(struct spdk_io_channel_iter * iter) accel_error_inject_channel() argument
|
/spdk/test/external_code/accel/ |
H A D | module.c | 22 struct spdk_ioviter iter; in ex_accel_copy_iovs() local 26 for (len = spdk_ioviter_first(&iter, src_iovs, src_iovcnt, in ex_accel_copy_iovs() 29 len = spdk_ioviter_next(&iter, &src, &dst)) { in ex_accel_copy_iovs()
|
/spdk/include/spdk/ |
H A D | blobfs.h | 273 spdk_fs_iter spdk_fs_iter_next(spdk_fs_iter iter); 275 #define spdk_fs_iter_get_file(iter) ((struct spdk_file *)(iter)) argument
|
/spdk/test/unit/lib/blobfs/blobfs_async_ut/ |
H A D | blobfs_async_ut.c | 92 spdk_fs_iter iter; in fs_open() local 127 iter = spdk_fs_iter_first(fs); in fs_open() 128 CU_ASSERT(iter != NULL); in fs_open() 129 file = spdk_fs_iter_get_file(iter); in fs_open() 132 iter = spdk_fs_iter_next(iter); in fs_open() 133 CU_ASSERT(iter == NULL); in fs_open()
|
/spdk/lib/json/ |
H A D | json_util.c | 81 const char *iter; in json_number_split() local 104 iter = val->start; in json_number_split() 105 if (*iter == '-') { in json_number_split() 107 iter++; in json_number_split() 114 char c = *iter++; in json_number_split()
|
/spdk/test/unit/lib/ftl/ftl_p2l.c/ |
H A D | ftl_p2l_ut.c | 464 g_band.md->iter.offset = 2 * xfer_size; in test_clean_restore_p2l() 484 g_band.md->iter.offset = 2 * xfer_size; in test_clean_restore_p2l() 513 CU_ASSERT_EQUAL(g_band.md->iter.offset, 2 * xfer_size); in test_dirty_restore_p2l() 535 CU_ASSERT_EQUAL(g_band.md->iter.offset, 2 * xfer_size); in test_dirty_restore_p2l() 555 CU_ASSERT_EQUAL(g_band.md->iter.offset, 2 * xfer_size); in test_dirty_restore_p2l() 575 CU_ASSERT_EQUAL(g_band.md->iter.offset, 2 * xfer_size); in test_dirty_restore_p2l() 596 CU_ASSERT_EQUAL(g_band.md->iter.offset, 2 * xfer_size); in test_dirty_restore_p2l()
|