Lines Matching refs:sq
499 struct nvme_submission_queue *sq = sc->submit_queues; in pci_nvme_init_queues() local
502 pthread_mutex_init(&sq[i].mtx, NULL); in pci_nvme_init_queues()
1200 struct nvme_submission_queue *sq = &sc->submit_queues[sqid]; in pci_nvme_cq_update() local
1213 cqe->sqhd = sq->head; in pci_nvme_cq_update()
2045 struct nvme_submission_queue *sq; in pci_nvme_handle_admin_cmd() local
2051 sq = &sc->submit_queues[0]; in pci_nvme_handle_admin_cmd()
2054 pthread_mutex_lock(&sq->mtx); in pci_nvme_handle_admin_cmd()
2056 sqhead = sq->head; in pci_nvme_handle_admin_cmd()
2057 DPRINTF("sqhead %u, tail %u", sqhead, sq->tail); in pci_nvme_handle_admin_cmd()
2059 while (sqhead != atomic_load_acq_short(&sq->tail)) { in pci_nvme_handle_admin_cmd()
2060 cmd = &(sq->qbase)[sqhead]; in pci_nvme_handle_admin_cmd()
2135 sqhead = (sqhead + 1) % sq->size; in pci_nvme_handle_admin_cmd()
2147 sq->head = sqhead; in pci_nvme_handle_admin_cmd()
2152 pthread_mutex_unlock(&sq->mtx); in pci_nvme_handle_admin_cmd()
2289 struct nvme_submission_queue *sq, int sqid, uint16_t cid, uint16_t status) in pci_nvme_set_completion() argument
2291 struct nvme_completion_queue *cq = &sc->compl_queues[sq->cqid]; in pci_nvme_set_completion()
2294 __func__, sqid, sq->cqid, cid, NVME_STATUS_GET_SCT(status), in pci_nvme_set_completion()
2304 __func__, sq->cqid); in pci_nvme_set_completion()
2363 struct nvme_submission_queue *sq = req->nvme_sq; in pci_nvme_io_done() local
2373 pci_nvme_set_completion(req->sc, sq, req->sqid, req->cid, status); in pci_nvme_io_done()
2739 struct nvme_submission_queue *sq; in pci_nvme_handle_io_cmd() local
2744 sq = &sc->submit_queues[idx]; in pci_nvme_handle_io_cmd()
2746 pthread_mutex_lock(&sq->mtx); in pci_nvme_handle_io_cmd()
2748 sqhead = sq->head; in pci_nvme_handle_io_cmd()
2750 idx, sqhead, sq->tail, sq->qbase); in pci_nvme_handle_io_cmd()
2752 while (sqhead != atomic_load_acq_short(&sq->tail)) { in pci_nvme_handle_io_cmd()
2762 cmd = &sq->qbase[sqhead]; in pci_nvme_handle_io_cmd()
2763 sqhead = (sqhead + 1) % sq->size; in pci_nvme_handle_io_cmd()
2780 req->nvme_sq = sq; in pci_nvme_handle_io_cmd()
2813 pci_nvme_set_completion(sc, sq, idx, cmd->cid, status); in pci_nvme_handle_io_cmd()
2819 sq->head = sqhead; in pci_nvme_handle_io_cmd()
2821 pthread_mutex_unlock(&sq->mtx); in pci_nvme_handle_io_cmd()
2830 pci_nvme_sq_doorbell_valid(struct nvme_submission_queue *sq, uint64_t value) in pci_nvme_sq_doorbell_valid() argument
2839 if (sq->head == sq->tail) in pci_nvme_sq_doorbell_valid()
2840 capacity = sq->size - 1; in pci_nvme_sq_doorbell_valid()
2841 else if (sq->head > sq->tail) in pci_nvme_sq_doorbell_valid()
2842 capacity = sq->size - (sq->head - sq->tail) - 1; in pci_nvme_sq_doorbell_valid()
2844 capacity = sq->tail - sq->head - 1; in pci_nvme_sq_doorbell_valid()
2846 if ((value == sq->tail) || /* same as previous */ in pci_nvme_sq_doorbell_valid()
2849 __func__, sq->size, sq->head, sq->tail, capacity, value); in pci_nvme_sq_doorbell_valid()