Lines Matching refs:task
203 struct bdev_daos_task *task = bdev_daos_task; in _bdev_daos_io_complete() local
206 task->offset, task->io_status ? "FAILURE" : "SUCCESS", task->io_status); in _bdev_daos_io_complete()
208 if (task->io_status == 0) { in _bdev_daos_io_complete()
209 spdk_bdev_io_complete(spdk_bdev_io_from_ctx(task), SPDK_BDEV_IO_STATUS_SUCCESS); in _bdev_daos_io_complete()
211 spdk_bdev_io_complete_aio_status(spdk_bdev_io_from_ctx(task), task->io_status); in _bdev_daos_io_complete()
218 struct bdev_daos_task *task = (struct bdev_daos_task *)bdev_io->driver_ctx; in bdev_daos_io_complete() local
221 assert(task->submit_td != NULL); in bdev_daos_io_complete()
223 task->io_status = io_status; in bdev_daos_io_complete()
224 if (task->submit_td != current_thread) { in bdev_daos_io_complete()
225 spdk_thread_send_msg(task->submit_td, _bdev_daos_io_complete, task); in bdev_daos_io_complete()
227 _bdev_daos_io_complete(task); in bdev_daos_io_complete()
233 struct bdev_daos_task *task, in bdev_daos_writev() argument
243 assert(task != NULL); in bdev_daos_writev()
252 if ((rc = daos_event_init(&task->ev, ch->queue, NULL))) { in bdev_daos_writev()
259 d_iov_set(&(task->diovs[i]), iov->iov_base, iov->iov_len); in bdev_daos_writev()
262 task->sgl.sg_nr = iovcnt; in bdev_daos_writev()
263 task->sgl.sg_nr_out = 0; in bdev_daos_writev()
264 task->sgl.sg_iovs = task->diovs; in bdev_daos_writev()
265 task->offset = offset; in bdev_daos_writev()
267 if ((rc = dfs_write(ch->dfs, ch->obj, &task->sgl, offset, &task->ev))) { in bdev_daos_writev()
270 daos_event_fini(&task->ev); in bdev_daos_writev()
279 struct bdev_daos_task *task, in bdev_daos_readv() argument
289 assert(task != NULL); in bdev_daos_readv()
298 if ((rc = daos_event_init(&task->ev, ch->queue, NULL))) { in bdev_daos_readv()
305 d_iov_set(&(task->diovs[i]), iov->iov_base, iov->iov_len); in bdev_daos_readv()
308 task->sgl.sg_nr = iovcnt; in bdev_daos_readv()
309 task->sgl.sg_nr_out = 0; in bdev_daos_readv()
310 task->sgl.sg_iovs = task->diovs; in bdev_daos_readv()
311 task->offset = offset; in bdev_daos_readv()
313 if ((rc = dfs_read(ch->dfs, ch->obj, &task->sgl, offset, &task->read_size, &task->ev))) { in bdev_daos_readv()
316 daos_event_fini(&task->ev); in bdev_daos_readv()
397 bdev_daos_reset(struct bdev_daos *daos, struct bdev_daos_task *task) in bdev_daos_reset() argument
400 assert(task != NULL); in bdev_daos_reset()
402 daos->reset_task = task; in bdev_daos_reset()
481 struct bdev_daos_task *task = (struct bdev_daos_task *)bdev_io->driver_ctx; in bdev_daos_submit_request() local
484 assert(task != NULL); in bdev_daos_submit_request()
486 task->submit_td = submit_td; in bdev_daos_submit_request()
487 task->bdev_io = bdev_io; in bdev_daos_submit_request()
520 struct bdev_daos_task *task = SPDK_CONTAINEROF(evp[i], struct bdev_daos_task, ev); in bdev_daos_channel_poll() local
522 assert(task != NULL); in bdev_daos_channel_poll()
524 if (task->ev.ev_error != DER_SUCCESS) { in bdev_daos_channel_poll()
525 status = -task->ev.ev_error; in bdev_daos_channel_poll()
528 daos_event_fini(&task->ev); in bdev_daos_channel_poll()
529 bdev_daos_io_complete(task->bdev_io, status); in bdev_daos_channel_poll()