Changeset View
Changeset View
Standalone View
Standalone View
sys/netpfil/ipfw/dn_aqm_codel.c
Show First 20 Lines • Show All 196 Lines • ▼ Show 20 Lines | codel_extract_head(struct dn_queue *q, aqm_time_t *pkt_ts) | ||||
if (m == NULL) | if (m == NULL) | ||||
return m; | return m; | ||||
q->mq.head = m->m_nextpkt; | q->mq.head = m->m_nextpkt; | ||||
/* Update stats */ | /* Update stats */ | ||||
update_stats(q, -m->m_pkthdr.len, 0); | update_stats(q, -m->m_pkthdr.len, 0); | ||||
if (q->ni.length == 0) /* queue is now idle */ | if (q->ni.length == 0) /* queue is now idle */ | ||||
q->q_time = dn_cfg.curr_time; | q->q_time = V_dn_cfg.curr_time; | ||||
/* extract packet TS*/ | /* extract packet TS*/ | ||||
mtag = m_tag_locate(m, MTAG_ABI_COMPAT, DN_AQM_MTAG_TS, NULL); | mtag = m_tag_locate(m, MTAG_ABI_COMPAT, DN_AQM_MTAG_TS, NULL); | ||||
if (mtag == NULL) { | if (mtag == NULL) { | ||||
D("Codel timestamp mtag not found!"); | D("Codel timestamp mtag not found!"); | ||||
*pkt_ts = 0; | *pkt_ts = 0; | ||||
} else { | } else { | ||||
*pkt_ts = *(aqm_time_t *)(mtag + 1); | *pkt_ts = *(aqm_time_t *)(mtag + 1); | ||||
▲ Show 20 Lines • Show All 230 Lines • Show Last 20 Lines |