nvme_queue
int nvme_ans_q_alloc(struct nvme_softc *, struct nvme_queue *);
void nvme_ans_q_free(struct nvme_softc *, struct nvme_queue *);
nvme_ans_sq_enter(struct nvme_softc *, struct nvme_queue *,
struct nvme_queue *, struct nvme_ccb *);
struct nvme_queue *, struct nvme_ccb *);
nvme_ans_q_alloc(struct nvme_softc *sc, struct nvme_queue *q)
struct nvme_queue *q)
struct nvme_queue *q, struct nvme_ccb *ccb)
nvme_ans_tcb(struct nvme_queue *q, unsigned int qid)
struct nvme_queue *q, struct nvme_ccb *ccb)
struct nvme_queue *q, struct nvme_ccb *ccb)
struct nvme_queue *q)
static void nvme_poll_done(struct nvme_queue *, struct nvme_ccb *,
nvme_getcache_fill(struct nvme_queue *q, struct nvme_ccb *ccb, void *slot)
static void nvme_sqe_fill(struct nvme_queue *, struct nvme_ccb *, void *);
nvme_getcache_done(struct nvme_queue *q, struct nvme_ccb *ccb,
static void nvme_empty_done(struct nvme_queue *, struct nvme_ccb *,
static struct nvme_queue *
static int nvme_q_create(struct nvme_softc *, struct nvme_queue *);
nvme_setcache_fill(struct nvme_queue *q, struct nvme_ccb *ccb, void *slot)
static void nvme_q_reset(struct nvme_softc *, struct nvme_queue *);
nvme_setcache_done(struct nvme_queue *q, struct nvme_ccb *ccb,
static int nvme_q_delete(struct nvme_softc *, struct nvme_queue *);
static void nvme_q_submit(struct nvme_softc *, struct nvme_queue *,
struct nvme_queue *q = sc->sc_admin_q;
struct nvme_ccb *, void (*)(struct nvme_queue *,
static int nvme_q_complete(struct nvme_softc *, struct nvme_queue *q);
static void nvme_q_free(struct nvme_softc *, struct nvme_queue *);
static void nvme_q_wait_complete(struct nvme_softc *, struct nvme_queue *,
nvme_pt_fill(struct nvme_queue *q, struct nvme_ccb *ccb, void *slot)
static void nvme_ns_io_fill(struct nvme_queue *, struct nvme_ccb *,
static void nvme_ns_io_done(struct nvme_queue *, struct nvme_ccb *,
nvme_pt_done(struct nvme_queue *q, struct nvme_ccb *ccb, struct nvme_cqe *cqe)
static void nvme_ns_sync_fill(struct nvme_queue *, struct nvme_ccb *,
static void nvme_ns_sync_done(struct nvme_queue *, struct nvme_ccb *,
struct nvme_queue *q;
static void nvme_getcache_fill(struct nvme_queue *, struct nvme_ccb *,
static void nvme_getcache_done(struct nvme_queue *, struct nvme_ccb *,
static void nvme_pt_fill(struct nvme_queue *, struct nvme_ccb *,
struct nvme_queue *q, struct nvme_ccb *ccb)
struct nvme_queue *q, struct nvme_ccb *ccb)
static void nvme_pt_done(struct nvme_queue *, struct nvme_ccb *,
struct nvme_queue *q, struct nvme_ccb *ccb)
struct nvme_queue *q, struct nvme_ccb *ccb)
nvme_q_submit(struct nvme_softc *sc, struct nvme_queue *q, struct nvme_ccb *ccb,
void (*fill)(struct nvme_queue *, struct nvme_ccb *, void *))
void (*done)(struct nvme_queue *, struct nvme_ccb *, struct nvme_cqe *);
nvme_poll(struct nvme_softc *sc, struct nvme_queue *q, struct nvme_ccb *ccb,
void (*fill)(struct nvme_queue *, struct nvme_ccb *, void *), int timo_sec)
nvme_poll_fill(struct nvme_queue *q, struct nvme_ccb *ccb, void *slot)
nvme_poll_done(struct nvme_queue *q, struct nvme_ccb *ccb,
nvme_sqe_fill(struct nvme_queue *q, struct nvme_ccb *ccb, void *slot)
nvme_empty_done(struct nvme_queue *q, struct nvme_ccb *ccb,
struct nvme_queue *q, struct nvme_ccb *ccb)
nvme_q_complete(struct nvme_softc *sc, struct nvme_queue *q)
struct nvme_queue *q, bool (*finished)(void *), void *cookie)
nvme_q_create(struct nvme_softc *sc, struct nvme_queue *q)
nvme_q_delete(struct nvme_softc *sc, struct nvme_queue *q)
nvme_fill_identify(struct nvme_queue *q, struct nvme_ccb *ccb, void *slot)
nvme_ccbs_alloc(struct nvme_queue *q, uint16_t nccbs)
nvme_ccb_get(struct nvme_queue *q, bool wait)
struct nvme_queue **selq)
struct nvme_queue *q = sc->sc_q[(cpuindex + qoff) % sc->sc_nq];
nvme_ccb_put(struct nvme_queue *q, struct nvme_ccb *ccb)
nvme_ccbs_free(struct nvme_queue *q)
static struct nvme_queue *
struct nvme_queue *q;
nvme_q_reset(struct nvme_softc *sc, struct nvme_queue *q)
nvme_q_free(struct nvme_softc *sc, struct nvme_queue *q)
struct nvme_queue *q = xq;
struct nvme_queue *q = xq;
struct nvme_queue *q = xq;
struct nvme_queue *, struct nvme_ccb *);
struct nvme_queue *, struct nvme_ccb *);
struct nvme_queue *, struct nvme_ccb *);
struct nvme_queue *, struct nvme_ccb *);
struct nvme_queue *, struct nvme_ccb *);
struct nvme_queue *q;
nvme_ns_io_fill(struct nvme_queue *q, struct nvme_ccb *ccb, void *slot)
static void nvme_fill_identify(struct nvme_queue *, struct nvme_ccb *,
nvme_ns_io_done(struct nvme_queue *q, struct nvme_ccb *ccb,
static int nvme_ccbs_alloc(struct nvme_queue *, uint16_t);
static void nvme_ccbs_free(struct nvme_queue *);
nvme_ccb_get(struct nvme_queue *, bool);
struct nvme_queue *q = nvme_get_q(sc);
struct nvme_queue **);
static void nvme_ccb_put(struct nvme_queue *, struct nvme_ccb *);
nvme_ns_sync_fill(struct nvme_queue *q, struct nvme_ccb *ccb, void *slot)
nvme_ns_sync_done(struct nvme_queue *q, struct nvme_ccb *ccb,
static int nvme_poll(struct nvme_softc *, struct nvme_queue *,
struct nvme_ccb *, void (*)(struct nvme_queue *,
struct nvme_queue *q = sc->sc_admin_q;
static void nvme_poll_fill(struct nvme_queue *, struct nvme_ccb *, void *);
struct nvme_queue *);
struct nvme_queue *);
struct nvme_queue *, struct nvme_ccb *);
struct nvme_queue *, struct nvme_ccb *);
struct nvme_queue *, struct nvme_ccb *);
struct nvme_queue *, struct nvme_ccb *);
struct nvme_queue *, struct nvme_ccb *);
uint16_t qid, struct nvme_queue *);
struct nvme_queue *sc_admin_q;
struct nvme_queue **sc_q;
static __inline struct nvme_queue *
struct nvme_queue;
void (*ccb_done)(struct nvme_queue *,
struct nvme_queue *q)
uint16_t, struct nvme_queue *);