pmcs_cmd
STAILQ_REMOVE(&xp->aq, sp, pmcs_cmd, cmd_next);
STAILQ_REMOVE(&xp->aq, sp, pmcs_cmd, cmd_next);
STAILQ_REMOVE(&xp->aq, sp, pmcs_cmd, cmd_next);
STAILQ_REMOVE(&xp->aq, sp, pmcs_cmd, cmd_next);
STAILQ_REMOVE(&xp->wq, sp, pmcs_cmd, cmd_next);
STAILQ_REMOVE(&tgt->wq, sp, pmcs_cmd, cmd_next);
STAILQ_REMOVE(&tgt->aq, sp, pmcs_cmd, cmd_next);
STAILQ_REMOVE(&tgt->sq, sp, pmcs_cmd, cmd_next);
STAILQ_HEAD(wqh, pmcs_cmd) wq;
STAILQ_HEAD(aqh, pmcs_cmd) aq;
STAILQ_HEAD(sqh, pmcs_cmd) sq; /* SATA specific */
STAILQ_HEAD(dqh, pmcs_cmd) dq; /* dead commands */
STAILQ_HEAD(cqh, pmcs_cmd) cq; /* completed commands */
typedef struct pmcs_cmd pmcs_cmd_t;
STAILQ_ENTRY(pmcs_cmd) cmd_next; /* linked list */