Print this page
8628 nvme: use a semaphore to guard submission queue
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
Reviewed by: Jason King <jason.king@joyent.com>
Reviewed by: Robert Mustacchi <rm@joyent.com>
*** 107,116 ****
--- 107,117 ----
uint16_t nq_next_cmd;
uint_t nq_active_cmds;
int nq_phase;
kmutex_t nq_mutex;
+ ksema_t nq_sema;
};
struct nvme {
dev_info_t *n_dip;
int n_progress;
*** 184,198 ****
/* errors detected by driver */
uint32_t n_dma_bind_err;
uint32_t n_abort_failed;
uint32_t n_cmd_timeout;
uint32_t n_cmd_aborted;
- uint32_t n_async_resubmit_failed;
uint32_t n_wrong_logpage;
uint32_t n_unknown_logpage;
uint32_t n_too_many_cookies;
- uint32_t n_admin_queue_full;
/* errors detected by hardware */
uint32_t n_data_xfr_err;
uint32_t n_internal_err;
uint32_t n_abort_rq_err;
--- 185,197 ----