renamed the link fields of mio_q_t, mio_wq_t, mio_cwq_t

This commit is contained in:
hyung-hwan 2020-05-03 16:02:56 +00:00
parent a69d2401c0
commit f6c4e55337
2 changed files with 49 additions and 49 deletions

View File

@ -174,7 +174,7 @@ void mio_fini (mio_t* mio)
mio_cwq_t* cwq; mio_cwq_t* cwq;
while ((cwq = mio->cwqfl[i])) while ((cwq = mio->cwqfl[i]))
{ {
mio->cwqfl[i] = cwq->next; mio->cwqfl[i] = cwq->q_next;
mio_freemem (mio, cwq); mio_freemem (mio, cwq);
} }
} }
@ -593,7 +593,7 @@ int mio_exec (mio_t* mio)
if (cwqfl_index < MIO_COUNTOF(mio->cwqfl)) if (cwqfl_index < MIO_COUNTOF(mio->cwqfl))
{ {
/* reuse the cwq object if dstaddr is 0 in size. chain it to the free list */ /* reuse the cwq object if dstaddr is 0 in size. chain it to the free list */
cwq->next = mio->cwqfl[cwqfl_index]; cwq->q_next = mio->cwqfl[cwqfl_index];
mio->cwqfl[cwqfl_index] = cwq; mio->cwqfl[cwqfl_index] = cwq;
} }
else else
@ -1272,12 +1272,12 @@ enqueue_completed_write:
{ {
/* take an available cwq object from the free cwq list */ /* take an available cwq object from the free cwq list */
cwq = dev->mio->cwqfl[cwqfl_index]; cwq = dev->mio->cwqfl[cwqfl_index];
dev->mio->cwqfl[cwqfl_index] = cwq->next; dev->mio->cwqfl[cwqfl_index] = cwq->q_next;
} }
else else
{ {
cwq = (mio_cwq_t*)mio_allocmem(mio, MIO_SIZEOF(*cwq) + cwq_extra_aligned); cwq = (mio_cwq_t*)mio_allocmem(mio, MIO_SIZEOF(*cwq) + cwq_extra_aligned);
if (!cwq) return -1; if (MIO_UNLIKELY(!cwq)) return -1;
} }
MIO_MEMSET (cwq, 0, MIO_SIZEOF(*cwq)); MIO_MEMSET (cwq, 0, MIO_SIZEOF(*cwq));
@ -1482,7 +1482,7 @@ enqueue_completed_write:
{ {
/* take an available cwq object from the free cwq list */ /* take an available cwq object from the free cwq list */
cwq = dev->mio->cwqfl[cwqfl_index]; cwq = dev->mio->cwqfl[cwqfl_index];
dev->mio->cwqfl[cwqfl_index] = cwq->next; dev->mio->cwqfl[cwqfl_index] = cwq->q_next;
} }
else else
{ {

View File

@ -222,40 +222,40 @@ struct mio_dev_evcb_t
struct mio_q_t struct mio_q_t
{ {
mio_q_t* next; mio_q_t* q_next;
mio_q_t* prev; mio_q_t* q_prev;
}; };
#define MIO_Q_INIT(q) ((q)->next = (q)->prev = (q)) #define MIO_Q_INIT(q) ((q)->q_next = (q)->q_prev = (q))
#define MIO_Q_TAIL(q) ((q)->prev) #define MIO_Q_TAIL(q) ((q)->q_prev)
#define MIO_Q_HEAD(q) ((q)->next) #define MIO_Q_HEAD(q) ((q)->q_next)
#define MIO_Q_IS_EMPTY(q) (MIO_Q_HEAD(q) == (q)) #define MIO_Q_IS_EMPTY(q) (MIO_Q_HEAD(q) == (q))
#define MIO_Q_ISNODE(q,x) ((q) != (x)) #define MIO_Q_IS_NODE(q,x) ((q) != (x))
#define MIO_Q_ISHEAD(q,x) (MIO_Q_HEAD(q) == (x)) #define MIO_Q_IS_HEAD(q,x) (MIO_Q_HEAD(q) == (x))
#define MIO_Q_ISTAIL(q,x) (MIO_Q_TAIL(q) == (x)) #define MIO_Q_IS_TAIL(q,x) (MIO_Q_TAIL(q) == (x))
#define MIO_Q_NEXT(x) ((x)->next) #define MIO_Q_NEXT(x) ((x)->q_next)
#define MIO_Q_PREV(x) ((x)->prev) #define MIO_Q_PREV(x) ((x)->q_prev)
#define MIO_Q_LINK(p,x,n) do { \ #define MIO_Q_LINK(p,x,n) do { \
mio_q_t* pp = (p), * nn = (n); \ mio_q_t* __pp = (p), * __nn = (n); \
(x)->prev = (p); \ (x)->q_prev = (p); \
(x)->next = (n); \ (x)->q_next = (n); \
nn->prev = (x); \ __nn->q_prev = (x); \
pp->next = (x); \ __pp->q_next = (x); \
} while (0) } while (0)
#define MIO_Q_UNLINK(x) do { \ #define MIO_Q_UNLINK(x) do { \
mio_q_t* pp = (x)->prev, * nn = (x)->next; \ mio_q_t* __pp = (x)->q_prev, * __nn = (x)->q_next; \
nn->prev = pp; pp->next = nn; \ __nn->q_prev = __pp; __pp->q_next = __nn; \
} while (0) } while (0)
#define MIO_Q_REPL(o,n) do { \ #define MIO_Q_REPL(o,n) do { \
mio_q_t* oo = (o), * nn = (n); \ mio_q_t* __oo = (o), * __nn = (n); \
nn->next = oo->next; \ __nn->q_next = __oo->q_next; \
nn->next->prev = nn; \ __nn->q_next->q_prev = __nn; \
nn->prev = oo->prev; \ __nn->q_prev = __oo->q_prev; \
nn->prev->next = nn; \ __nn->q_prev->q_next = __nn; \
} while (0) } while (0)
/* insert an item at the back of the queue */ /* insert an item at the back of the queue */
@ -268,8 +268,8 @@ struct mio_q_t
/* completed write queue */ /* completed write queue */
struct mio_cwq_t struct mio_cwq_t
{ {
mio_cwq_t* next; mio_cwq_t* q_next;
mio_cwq_t* prev; mio_cwq_t* q_prev;
mio_iolen_t olen; mio_iolen_t olen;
void* ctx; void* ctx;
@ -277,26 +277,26 @@ struct mio_cwq_t
mio_devaddr_t dstaddr; mio_devaddr_t dstaddr;
}; };
#define MIO_CWQ_INIT(cwq) ((cwq)->next = (cwq)->prev = (cwq)) #define MIO_CWQ_INIT(cwq) ((cwq)->q_next = (cwq)->q_prev = (cwq))
#define MIO_CWQ_TAIL(cwq) ((cwq)->prev) #define MIO_CWQ_TAIL(cwq) ((cwq)->q_prev)
#define MIO_CWQ_HEAD(cwq) ((cwq)->next) #define MIO_CWQ_HEAD(cwq) ((cwq)->q_next)
#define MIO_CWQ_IS_EMPTY(cwq) (MIO_CWQ_HEAD(cwq) == (cwq)) #define MIO_CWQ_IS_EMPTY(cwq) (MIO_CWQ_HEAD(cwq) == (cwq))
#define MIO_CWQ_ISNODE(cwq,x) ((cwq) != (x)) #define MIO_CWQ_IS_NODE(cwq,x) ((cwq) != (x))
#define MIO_CWQ_ISHEAD(cwq,x) (MIO_CWQ_HEAD(cwq) == (x)) #define MIO_CWQ_IS_HEAD(cwq,x) (MIO_CWQ_HEAD(cwq) == (x))
#define MIO_CWQ_ISTAIL(cwq,x) (MIO_CWQ_TAIL(cwq) == (x)) #define MIO_CWQ_IS_TAIL(cwq,x) (MIO_CWQ_TAIL(cwq) == (x))
#define MIO_CWQ_NEXT(x) ((x)->next) #define MIO_CWQ_NEXT(x) ((x)->q_next)
#define MIO_CWQ_PREV(x) ((x)->prev) #define MIO_CWQ_PREV(x) ((x)->q_prev)
#define MIO_CWQ_LINK(p,x,n) MIO_Q_LINK((mio_q_t*)p,(mio_q_t*)x,(mio_q_t*)n) #define MIO_CWQ_LINK(p,x,n) MIO_Q_LINK((mio_q_t*)p,(mio_q_t*)x,(mio_q_t*)n)
#define MIO_CWQ_UNLINK(x) MIO_Q_UNLINK((mio_q_t*)x) #define MIO_CWQ_UNLINK(x) MIO_Q_UNLINK((mio_q_t*)x)
#define MIO_CWQ_REPL(o,n) MIO_CWQ_REPL(o,n); #define MIO_CWQ_REPL(o,n) MIO_Q_REPL(o,n);
#define MIO_CWQ_ENQ(cwq,x) MIO_CWQ_LINK(MIO_CWQ_TAIL(cwq), (mio_q_t*)x, cwq) #define MIO_CWQ_ENQ(cwq,x) MIO_CWQ_LINK(MIO_CWQ_TAIL(cwq), (mio_q_t*)x, cwq)
#define MIO_CWQ_DEQ(cwq) MIO_CWQ_UNLINK(MIO_CWQ_HEAD(cwq)) #define MIO_CWQ_DEQ(cwq) MIO_CWQ_UNLINK(MIO_CWQ_HEAD(cwq))
/* write queue */ /* write queue */
struct mio_wq_t struct mio_wq_t
{ {
mio_wq_t* next; mio_wq_t* q_next;
mio_wq_t* prev; mio_wq_t* q_prev;
mio_iolen_t olen; /* original data length */ mio_iolen_t olen; /* original data length */
mio_uint8_t* ptr; /* pointer to data */ mio_uint8_t* ptr; /* pointer to data */
@ -308,18 +308,18 @@ struct mio_wq_t
mio_devaddr_t dstaddr; mio_devaddr_t dstaddr;
}; };
#define MIO_WQ_INIT(wq) ((wq)->next = (wq)->prev = (wq)) #define MIO_WQ_INIT(wq) ((wq)->q_next = (wq)->q_prev = (wq))
#define MIO_WQ_TAIL(wq) ((wq)->prev) #define MIO_WQ_TAIL(wq) ((wq)->q_prev)
#define MIO_WQ_HEAD(wq) ((wq)->next) #define MIO_WQ_HEAD(wq) ((wq)->q_next)
#define MIO_WQ_IS_EMPTY(wq) (MIO_WQ_HEAD(wq) == (wq)) #define MIO_WQ_IS_EMPTY(wq) (MIO_WQ_HEAD(wq) == (wq))
#define MIO_WQ_ISNODE(wq,x) ((wq) != (x)) #define MIO_WQ_IS_NODE(wq,x) ((wq) != (x))
#define MIO_WQ_ISHEAD(wq,x) (MIO_WQ_HEAD(wq) == (x)) #define MIO_WQ_IS_HEAD(wq,x) (MIO_WQ_HEAD(wq) == (x))
#define MIO_WQ_ISTAIL(wq,x) (MIO_WQ_TAIL(wq) == (x)) #define MIO_WQ_IS_TAIL(wq,x) (MIO_WQ_TAIL(wq) == (x))
#define MIO_WQ_NEXT(x) ((x)->next) #define MIO_WQ_NEXT(x) ((x)->q_next)
#define MIO_WQ_PREV(x) ((x)->prev) #define MIO_WQ_PREV(x) ((x)->q_prev)
#define MIO_WQ_LINK(p,x,n) MIO_Q_LINK((mio_q_t*)p,(mio_q_t*)x,(mio_q_t*)n) #define MIO_WQ_LINK(p,x,n) MIO_Q_LINK((mio_q_t*)p,(mio_q_t*)x,(mio_q_t*)n)
#define MIO_WQ_UNLINK(x) MIO_Q_UNLINK((mio_q_t*)x) #define MIO_WQ_UNLINK(x) MIO_Q_UNLINK((mio_q_t*)x)
#define MIO_WQ_REPL(o,n) MIO_WQ_REPL(o,n); #define MIO_WQ_REPL(o,n) MIO_Q_REPL(o,n);
#define MIO_WQ_ENQ(wq,x) MIO_WQ_LINK(MIO_WQ_TAIL(wq), (mio_q_t*)x, wq) #define MIO_WQ_ENQ(wq,x) MIO_WQ_LINK(MIO_WQ_TAIL(wq), (mio_q_t*)x, wq)
#define MIO_WQ_DEQ(wq) MIO_WQ_UNLINK(MIO_WQ_HEAD(wq)) #define MIO_WQ_DEQ(wq) MIO_WQ_UNLINK(MIO_WQ_HEAD(wq))