dn_queue
int (*enqueue)(struct dn_queue *, struct mbuf *);
struct mbuf * (*dequeue)(struct dn_queue *);
int (*init)(struct dn_queue *);
int (*cleanup)(struct dn_queue *);
update_stats(struct dn_queue *q, int len, int drop)
codel_extract_head(struct dn_queue *q, aqm_time_t *pkt_ts)
aqm_codel_enqueue(struct dn_queue *q, struct mbuf *m)
aqm_codel_dequeue(struct dn_queue *q)
aqm_codel_init(struct dn_queue *q)
aqm_codel_cleanup(struct dn_queue *q)
codel_dequeue(struct dn_queue *q)
struct mbuf *codel_extract_head(struct dn_queue *, aqm_time_t *);
codel_dodequeue(struct dn_queue *q, aqm_time_t now, uint16_t *ok_to_drop)
pie_extract_head(struct dn_queue *q, aqm_time_t *pkt_ts, int getts)
aqm_pie_dequeue(struct dn_queue *q)
aqm_pie_enqueue(struct dn_queue *q, struct mbuf* m)
aqm_pie_init(struct dn_queue *q)
aqm_pie_cleanup(struct dn_queue *q)
struct dn_queue *pq;
int (*enqueue)(struct dn_sch_inst *, struct dn_queue *,
int (*new_queue)(struct dn_queue *q);
int (*free_queue)(struct dn_queue *q);
int dn_enqueue(struct dn_queue *q, struct mbuf* m, int drop);
dn_dequeue(struct dn_queue *q)
_SI( .si_datalen = ) sizeof(struct dn_queue),
fifo_enqueue(struct dn_sch_inst *si, struct dn_queue *q, struct mbuf *m)
return dn_enqueue((struct dn_queue *)(si+1), m, 0);
return dn_dequeue((struct dn_queue *)(si + 1));
struct dn_queue *q = (struct dn_queue *)(si + 1);
struct dn_queue *q = (struct dn_queue *)(si + 1);
fq_codel_enqueue(struct dn_sch_inst *_si, struct dn_queue *_q,
struct dn_queue *mainq;
mainq = (struct dn_queue *)(_si + 1);
struct dn_queue *q;
struct dn_queue main_q; /* main queue is after si directly */
struct dn_queue *q;
struct dn_queue main_q; /* main queue is after si directly */
fq_pie_enqueue(struct dn_sch_inst *_si, struct dn_queue *_q,
struct dn_queue *mainq;
mainq = (struct dn_queue *)(_si + 1);
struct dn_queue *q;
prio_new_queue(struct dn_queue *q)
struct dn_queue *oldq;
prio_free_queue(struct dn_queue *q)
struct dn_queue *q_array[MAXPRIO]; /* Array of queues pointers */
prio_enqueue(struct dn_sch_inst *_si, struct dn_queue *q, struct mbuf *m)
struct dn_queue _q;
qfq_new_queue(struct dn_queue *_q)
qfq_free_queue(struct dn_queue *_q)
qfq_enqueue(struct dn_sch_inst *si, struct dn_queue *_q, struct mbuf *m)
_SI( .q_datalen = ) sizeof(struct qfq_class) - sizeof(struct dn_queue),
rr_enqueue(struct dn_sch_inst *_si, struct dn_queue *q, struct mbuf *m)
rr_new_queue(struct dn_queue *_q)
rr_free_queue(struct dn_queue *_q)
_SI( .q_datalen = ) sizeof(struct rr_queue) - sizeof(struct dn_queue),
struct dn_queue q; /* Standard queue */
struct dn_queue *q = HEAP_TOP(h)->object;
wf2qp_enqueue(struct dn_sch_inst *_si, struct dn_queue *q, struct mbuf *m)
struct dn_queue *q;
wf2qp_new_queue(struct dn_queue *_q)
wf2qp_free_queue(struct dn_queue *q)
sizeof(struct dn_queue),
struct dn_queue _q;
red_drops (struct dn_queue *q, int len)
dn_enqueue(struct dn_queue *q, struct mbuf* m, int drop)
struct dn_queue *q = NULL; /* default */
SLIST_ENTRY(dn_queue) q_next; /* hash chain list for qht */
struct dn_queue *ipdn_q_find(struct dn_fsk *, struct dn_sch_inst *,
struct dn_queue *q = obj;
V_dn_cfg.queue_count, sizeof(struct dn_queue), DN_QUEUE);
struct dn_queue *q = _q;
&((struct dn_queue *)key)->ni.fid :
struct dn_queue *o = (struct dn_queue *)obj;
id2 = &((struct dn_queue *)key)->ni.fid;
struct dn_queue *q, *template = arg;
dn_delete_queue(struct dn_queue *q, int flags)
dn_delete_queue((struct dn_queue *)(fs->qht), flags);
struct dn_queue *
struct dn_queue template;
offsetof(struct dn_queue, q_next),
return (struct dn_queue *)fs->qht;
if(s->fs->aqmfp->init((struct dn_queue *)(si + 1))) {
struct dn_queue *q = (struct dn_queue *)(si + 1);
si->sched->fs->aqmfp->cleanup((struct dn_queue *) (si+1));
struct dn_queue *q = _q;
fs->aqmfp->cleanup((struct dn_queue *) (si+1));
fs->aqmfp->cleanup((struct dn_queue *)(fs->qht));
struct dn_queue *q;
default_enqueue(struct dn_sch_inst *si, struct dn_queue *q, struct mbuf *m)
struct dn_queue *_q = FI2Q(c, mb->flow_id);
struct dn_queue *_q = FI2Q(c, mb->flow_id);
struct dn_queue *q = FI2Q(c, m->flow_id);
struct dn_queue *q = FI2Q(c, j);
c->q_len = sizeof(struct dn_queue);
int (*enq)(struct dn_sch_inst *, struct dn_queue *,
struct dn_queue *q = FI2Q(c, i);
struct dn_queue *q;
q = list_first_entry(h, struct dn_queue, ni.h);
#define FI2Q(c, i) ((struct dn_queue *)((c)->q + (c)->q_len * (i)))
struct dn_queue *q = _q;
dn_enqueue(struct dn_queue *q, struct mbuf* m, int drop)