Lines Matching defs:delay_ch

173 	struct delay_io_channel *delay_ch = arg;
177 completions += _process_io_stailq(&delay_ch->avg_read_io, ticks);
178 completions += _process_io_stailq(&delay_ch->avg_write_io, ticks);
179 completions += _process_io_stailq(&delay_ch->p99_read_io, ticks);
180 completions += _process_io_stailq(&delay_ch->p99_write_io, ticks);
195 struct delay_io_channel *delay_ch = spdk_io_channel_get_ctx(io_ctx->ch);
211 STAILQ_INSERT_TAIL(&delay_ch->avg_read_io, io_ctx, link);
215 STAILQ_INSERT_TAIL(&delay_ch->avg_write_io, io_ctx, link);
219 STAILQ_INSERT_TAIL(&delay_ch->p99_read_io, io_ctx, link);
223 STAILQ_INSERT_TAIL(&delay_ch->p99_write_io, io_ctx, link);
245 struct delay_io_channel *delay_ch = spdk_io_channel_get_ctx(io_ctx->ch);
252 rc = spdk_bdev_queue_io_wait(bdev_io->bdev, delay_ch->base_ch, &io_ctx->bdev_io_wait);
274 struct delay_io_channel *delay_ch = spdk_io_channel_get_ctx(ch);
284 rc = spdk_bdev_readv_blocks_ext(delay_node->base_desc, delay_ch->base_ch, bdev_io->u.bdev.iovs,
303 struct delay_io_channel *delay_ch = spdk_io_channel_get_ctx(io_ctx->ch);
307 rc = spdk_bdev_reset(delay_node->base_desc, delay_ch->base_ch,
344 struct delay_io_channel *delay_ch = spdk_io_channel_get_ctx(ch);
346 _abort_all_delayed_io(&delay_ch->avg_read_io);
347 _abort_all_delayed_io(&delay_ch->avg_write_io);
348 _abort_all_delayed_io(&delay_ch->p99_read_io);
349 _abort_all_delayed_io(&delay_ch->p99_write_io);
376 vbdev_delay_abort(struct vbdev_delay *delay_node, struct delay_io_channel *delay_ch,
381 if (abort_delayed_io(&delay_ch->avg_read_io, bio_to_abort) ||
382 abort_delayed_io(&delay_ch->avg_write_io, bio_to_abort) ||
383 abort_delayed_io(&delay_ch->p99_read_io, bio_to_abort) ||
384 abort_delayed_io(&delay_ch->p99_write_io, bio_to_abort)) {
389 return spdk_bdev_abort(delay_node->base_desc, delay_ch->base_ch, bio_to_abort,
397 struct delay_io_channel *delay_ch = spdk_io_channel_get_ctx(ch);
403 is_p99 = rand_r(&delay_ch->rand_seed) % 100 == 0 ? true : false;
420 rc = spdk_bdev_writev_blocks_ext(delay_node->base_desc, delay_ch->base_ch, bdev_io->u.bdev.iovs,
426 rc = spdk_bdev_write_zeroes_blocks(delay_node->base_desc, delay_ch->base_ch,
432 rc = spdk_bdev_unmap_blocks(delay_node->base_desc, delay_ch->base_ch,
438 rc = spdk_bdev_flush_blocks(delay_node->base_desc, delay_ch->base_ch,
451 rc = vbdev_delay_abort(delay_node, delay_ch, bdev_io);
460 rc = spdk_bdev_zcopy_start(delay_node->base_desc, delay_ch->base_ch,
498 struct spdk_io_channel *delay_ch = NULL;
500 delay_ch = spdk_get_io_channel(delay_node);
502 return delay_ch;
564 struct delay_io_channel *delay_ch = ctx_buf;
567 STAILQ_INIT(&delay_ch->avg_read_io);
568 STAILQ_INIT(&delay_ch->p99_read_io);
569 STAILQ_INIT(&delay_ch->avg_write_io);
570 STAILQ_INIT(&delay_ch->p99_write_io);
572 delay_ch->io_poller = SPDK_POLLER_REGISTER(_delay_finish_io, delay_ch, 0);
573 delay_ch->base_ch = spdk_bdev_get_io_channel(delay_node->base_desc);
574 delay_ch->rand_seed = time(NULL);
586 struct delay_io_channel *delay_ch = ctx_buf;
588 spdk_poller_unregister(&delay_ch->io_poller);
589 spdk_put_io_channel(delay_ch->base_ch);