Searched refs:qpair (Results 1 - 9 of 9) sorted by relevance

/haiku/src/add-ons/kernel/drivers/disk/nvme/libnvme/
H A Dnvme_qpair.c153 static inline bool nvme_qpair_is_admin_queue(struct nvme_qpair *qpair) argument
155 return qpair->id == 0;
158 static inline bool nvme_qpair_is_io_queue(struct nvme_qpair *qpair) argument
160 return qpair->id != 0;
178 static void nvme_qpair_admin_qpair_print_command(struct nvme_qpair *qpair, argument
183 qpair->id, cmd->cid,
187 static void nvme_qpair_io_qpair_print_command(struct nvme_qpair *qpair, argument
190 nvme_assert(qpair != NULL, "print_command: qpair == NULL\n");
200 qpair
218 nvme_qpair_print_command(struct nvme_qpair *qpair, struct nvme_cmd *cmd) argument
253 nvme_qpair_print_completion(struct nvme_qpair *qpair, struct nvme_cpl *cpl) argument
342 nvme_qpair_submit_tracker(struct nvme_qpair *qpair, struct nvme_tracker *tr) argument
367 nvme_qpair_complete_tracker(struct nvme_qpair *qpair, struct nvme_tracker *tr, struct nvme_cpl *cpl, bool print_on_error) argument
413 nvme_qpair_submit_queued_requests(struct nvme_qpair *qpair) argument
442 nvme_qpair_manual_complete_tracker(struct nvme_qpair *qpair, struct nvme_tracker *tr, uint32_t sct, uint32_t sc, uint32_t dnr, bool print_on_error) argument
461 nvme_qpair_manual_complete_request(struct nvme_qpair *qpair, struct nvme_request *req, uint32_t sct, uint32_t sc, bool print_on_error) argument
487 nvme_qpair_abort_aers(struct nvme_qpair *qpair) argument
507 _nvme_qpair_admin_qpair_destroy(struct nvme_qpair *qpair) argument
512 _nvme_qpair_req_bad_phys(struct nvme_qpair *qpair, struct nvme_tracker *tr) argument
527 _nvme_qpair_build_contig_request(struct nvme_qpair *qpair, struct nvme_request *req, struct nvme_tracker *tr) argument
583 _nvme_qpair_build_hw_sgl_request(struct nvme_qpair *qpair, struct nvme_request *req, struct nvme_tracker *tr) argument
664 _nvme_qpair_build_prps_sgl_request(struct nvme_qpair *qpair, struct nvme_request *req, struct nvme_tracker *tr) argument
756 _nvme_qpair_admin_qpair_enable(struct nvme_qpair *qpair) argument
776 _nvme_qpair_io_qpair_enable(struct nvme_qpair *qpair) argument
804 _nvme_qpair_admin_qpair_disable(struct nvme_qpair *qpair) argument
810 _nvme_qpair_io_qpair_disable(struct nvme_qpair *qpair) argument
843 nvme_qpair_construct(struct nvme_ctrlr *ctrlr, struct nvme_qpair *qpair, enum nvme_qprio qprio, uint16_t entries, uint16_t trackers) argument
970 nvme_qpair_destroy(struct nvme_qpair *qpair) argument
997 nvme_qpair_enabled(struct nvme_qpair *qpair) argument
1005 nvme_qpair_submit_request(struct nvme_qpair *qpair, struct nvme_request *req) argument
1100 nvme_qpair_poll(struct nvme_qpair *qpair, unsigned int max_completions) argument
1162 nvme_qpair_reset(struct nvme_qpair *qpair) argument
1182 nvme_qpair_enable(struct nvme_qpair *qpair) argument
1194 nvme_qpair_disable(struct nvme_qpair *qpair) argument
1206 nvme_qpair_fail(struct nvme_qpair *qpair) argument
[all...]
H A Dnvme_request.c39 static struct nvme_request *nvme_alloc_request(struct nvme_qpair *qpair) argument
43 pthread_mutex_lock(&qpair->lock);
45 req = STAILQ_FIRST(&qpair->free_req);
47 STAILQ_REMOVE_HEAD(&qpair->free_req, stailq);
51 pthread_mutex_unlock(&qpair->lock);
82 int nvme_request_pool_construct(struct nvme_qpair *qpair) argument
87 qpair->num_reqs = qpair->trackers * NVME_IO_ENTRIES_VS_TRACKERS_RATIO;
88 qpair->reqs = calloc(qpair
109 nvme_request_pool_destroy(struct nvme_qpair *qpair) argument
126 nvme_request_allocate(struct nvme_qpair *qpair, const struct nvme_payload *payload, uint32_t payload_size, nvme_cmd_cb cb_fn, void *cb_arg) argument
154 nvme_request_allocate_contig(struct nvme_qpair *qpair, void *buffer, uint32_t payload_size, nvme_cmd_cb cb_fn, void *cb_arg) argument
170 nvme_request_allocate_null(struct nvme_qpair *qpair, nvme_cmd_cb cb_fn, void *cb_arg) argument
[all...]
H A Dnvme_ns.c225 struct nvme_qpair *qpair,
233 struct nvme_qpair *qpair,
264 child = _nvme_ns_rw(ns, qpair, payload, lba, lba_count, cb_fn,
297 struct nvme_qpair *qpair,
327 req = nvme_request_allocate(qpair, payload,
340 return _nvme_ns_split_request(ns, qpair, payload, lba,
347 return _nvme_ns_split_request(ns, qpair, payload, lba,
377 int nvme_ns_read(struct nvme_ns *ns, struct nvme_qpair *qpair, argument
390 req = _nvme_ns_rw(ns, qpair, &payload, lba, lba_count, cb_fn, cb_arg,
393 return nvme_qpair_submit_request(qpair, re
232 _nvme_ns_split_request(struct nvme_ns *ns, struct nvme_qpair *qpair, const struct nvme_payload *payload, uint64_t lba, uint32_t lba_count, nvme_cmd_cb cb_fn, void *cb_arg, uint32_t opc, uint32_t io_flags, struct nvme_request *req, uint32_t sectors_per_max_io, uint32_t sector_mask, uint16_t apptag_mask, uint16_t apptag) argument
296 _nvme_ns_rw(struct nvme_ns *ns, struct nvme_qpair *qpair, const struct nvme_payload *payload, uint64_t lba, uint32_t lba_count, nvme_cmd_cb cb_fn, void *cb_arg, uint32_t opc, uint32_t io_flags, uint16_t apptag_mask, uint16_t apptag) argument
398 nvme_ns_read_with_md(struct nvme_ns *ns, struct nvme_qpair *qpair, void *buffer, void *metadata, uint64_t lba, uint32_t lba_count, nvme_cmd_cb cb_fn, void *cb_arg, unsigned int io_flags, uint16_t apptag_mask, uint16_t apptag) argument
420 nvme_ns_readv(struct nvme_ns *ns, struct nvme_qpair *qpair, uint64_t lba, uint32_t lba_count, nvme_cmd_cb cb_fn, void *cb_arg, unsigned int io_flags, nvme_req_reset_sgl_cb reset_sgl_fn, nvme_req_next_sge_cb next_sge_fn) argument
447 nvme_ns_write(struct nvme_ns *ns, struct nvme_qpair *qpair, void *buffer, uint64_t lba, uint32_t lba_count, nvme_cmd_cb cb_fn, void *cb_arg, unsigned int io_flags) argument
468 nvme_ns_write_with_md(struct nvme_ns *ns, struct nvme_qpair *qpair, void *buffer, void *metadata, uint64_t lba, uint32_t lba_count, nvme_cmd_cb cb_fn, void *cb_arg, unsigned int io_flags, uint16_t apptag_mask, uint16_t apptag) argument
490 nvme_ns_writev(struct nvme_ns *ns, struct nvme_qpair *qpair, uint64_t lba, uint32_t lba_count, nvme_cmd_cb cb_fn, void *cb_arg, unsigned int io_flags, nvme_req_reset_sgl_cb reset_sgl_fn, nvme_req_next_sge_cb next_sge_fn) argument
517 nvme_ns_write_zeroes(struct nvme_ns *ns, struct nvme_qpair *qpair, uint64_t lba, uint32_t lba_count, nvme_cmd_cb cb_fn, void *cb_arg, unsigned int io_flags) argument
545 nvme_ns_deallocate(struct nvme_ns *ns, struct nvme_qpair *qpair, void *payload, uint16_t ranges, nvme_cmd_cb cb_fn, void *cb_arg) argument
572 nvme_ns_flush(struct nvme_ns *ns, struct nvme_qpair *qpair, nvme_cmd_cb cb_fn, void *cb_arg) argument
589 nvme_ns_reservation_register(struct nvme_ns *ns, struct nvme_qpair *qpair, struct nvme_reservation_register_data *payload, bool ignore_key, enum nvme_reservation_register_action action, enum nvme_reservation_register_cptpl cptpl, nvme_cmd_cb cb_fn, void *cb_arg) argument
619 nvme_ns_reservation_release(struct nvme_ns *ns, struct nvme_qpair *qpair, struct nvme_reservation_key_data *payload, bool ignore_key, enum nvme_reservation_release_action action, enum nvme_reservation_type type, nvme_cmd_cb cb_fn, void *cb_arg) argument
649 nvme_ns_reservation_acquire(struct nvme_ns *ns, struct nvme_qpair *qpair, struct nvme_reservation_acquire_data *payload, bool ignore_key, enum nvme_reservation_acquire_action action, enum nvme_reservation_type type, nvme_cmd_cb cb_fn, void *cb_arg) argument
679 nvme_ns_reservation_report(struct nvme_ns *ns, struct nvme_qpair *qpair, void *payload, size_t len, nvme_cmd_cb cb_fn, void *cb_arg) argument
[all...]
H A Dnvme.h722 * @param qpair I/O queue pair handle
726 extern int nvme_ioqp_release(struct nvme_qpair *qpair);
731 * @param qpair I/O queue pair handle
736 extern int nvme_qpair_stat(struct nvme_qpair *qpair,
742 * @param qpair I/O qpair handle
757 extern int nvme_ioqp_submit_cmd(struct nvme_qpair *qpair,
765 * @param qpair I/O queue pair handle
780 extern unsigned int nvme_qpair_poll(struct nvme_qpair *qpair,
829 * @param qpair
[all...]
H A Dnvme_ctrlr.c57 struct nvme_qpair *qpair)
62 ret = nvme_admin_create_ioq(ctrlr, qpair, NVME_IO_COMPLETION_QUEUE);
65 qpair->id);
70 ret = nvme_admin_create_ioq(ctrlr, qpair, NVME_IO_SUBMISSION_QUEUE);
74 qpair->id);
75 nvme_admin_delete_ioq(ctrlr, qpair, NVME_IO_COMPLETION_QUEUE);
79 nvme_qpair_reset(qpair);
88 struct nvme_qpair *qpair)
93 ret = nvme_admin_delete_ioq(ctrlr, qpair, NVME_IO_SUBMISSION_QUEUE);
96 qpair
56 nvme_ctrlr_create_qpair(struct nvme_ctrlr *ctrlr, struct nvme_qpair *qpair) argument
87 nvme_ctrlr_delete_qpair(struct nvme_ctrlr *ctrlr, struct nvme_qpair *qpair) argument
245 struct nvme_qpair *qpair; local
992 struct nvme_qpair *qpair; local
1143 struct nvme_qpair *qpair; local
1405 struct nvme_qpair *qpair = NULL; local
1486 nvme_ioqp_release(struct nvme_qpair *qpair) argument
1515 nvme_ioqp_submit_cmd(struct nvme_qpair *qpair, struct nvme_cmd *cmd, void *buf, size_t len, nvme_cmd_cb cb_fn, void *cb_arg) argument
[all...]
H A Dnvme_internal.h113 * NVME_IO_ENTRIES defines the size of an I/O qpair's submission and completion
115 * will allow outstanding on an I/O qpair at any time. The only advantage in
276 * For queueing in qpair queued_req or free_req.
278 struct nvme_qpair *qpair; member in struct:nvme_request
651 struct nvme_qpair *qpair,
688 struct nvme_qpair *qpair, enum nvme_qprio qprio,
691 extern void nvme_qpair_destroy(struct nvme_qpair *qpair);
692 extern void nvme_qpair_enable(struct nvme_qpair *qpair);
693 extern void nvme_qpair_disable(struct nvme_qpair *qpair);
694 extern int nvme_qpair_submit_request(struct nvme_qpair *qpair,
[all...]
H A Dnvme_admin.c196 struct nvme_qpair *qpair,
206 cmd.cdw11 = (qpair->id << 16) | (qpair->qprio << 1) | 0x1;
207 cmd.dptr.prp.prp1 = qpair->cmd_bus_addr;
216 cmd.dptr.prp.prp1 = qpair->cpl_bus_addr;
222 cmd.cdw10 = ((qpair->entries - 1) << 16) | qpair->id;
232 struct nvme_qpair *qpair,
249 cmd.cdw10 = qpair->id;
195 nvme_admin_create_ioq(struct nvme_ctrlr *ctrlr, struct nvme_qpair *qpair, enum nvme_io_queue_type io_qtype) argument
231 nvme_admin_delete_ioq(struct nvme_ctrlr *ctrlr, struct nvme_qpair *qpair, enum nvme_io_queue_type io_qtype) argument
H A Dnvme.c301 /* Maximum io qpair possible */
351 * Get qpair information
353 int nvme_qpair_stat(struct nvme_qpair *qpair, struct nvme_qpair_stat *qpstat) argument
355 struct nvme_ctrlr *ctrlr = qpair->ctrlr;
366 qpstat->id = qpair->id;
367 qpstat->qd = qpair->entries;
368 qpstat->enabled = qpair->enabled;
369 qpstat->qprio = qpair->qprio;
/haiku/src/add-ons/kernel/drivers/disk/nvme/
H A Dnvme_disk.cpp100 struct nvme_qpair* qpair; member in struct:__anon25::qpair_info
280 info->qpairs[i].qpair = nvme_ioqp_get(info->ctrlr,
282 if (info->qpairs[i].qpair == NULL)
416 await_status(nvme_disk_driver_info* info, struct nvme_qpair* qpair, status_t& status) argument
425 nvme_qpair_poll(qpair, 0);
436 // no matter the qpair or transfer within; so if it does occur,
442 nvme_qpair_fail(qpair);
453 nvme_qpair_poll(qpair, 0);
516 ret = nvme_ns_writev(info->ns, qpinfo->qpair, request->lba_start,
521 ret = nvme_ns_readv(info->ns, qpinfo->qpair, reques
917 qpair_info* qpair = get_qpair(info); local
[all...]

Completed in 134 milliseconds