diff --git a/sys/dev/cxgb/ulp/tom/cxgb_listen.c b/sys/dev/cxgb/ulp/tom/cxgb_listen.c index 94a219b20c3..e11bb258337 100644 --- a/sys/dev/cxgb/ulp/tom/cxgb_listen.c +++ b/sys/dev/cxgb/ulp/tom/cxgb_listen.c @@ -442,26 +442,13 @@ static struct synq_entry * mbuf_to_synq_entry(struct mbuf *m) { int len = roundup(sizeof (struct synq_entry), 8); - uint8_t *buf; - int buflen; if (__predict_false(M_TRAILINGSPACE(m) < len)) { panic("%s: no room for synq_entry (%td, %d)\n", __func__, M_TRAILINGSPACE(m), len); } - if (m->m_flags & M_EXT) { - buf = m->m_ext.ext_buf; - buflen = m->m_ext.ext_size; - } else if (m->m_flags & M_PKTHDR) { - buf = &m->m_pktdat[0]; - buflen = MHLEN; - } else { - buf = &m->m_dat[0]; - buflen = MLEN; - } - - return ((void *)(buf + buflen - len)); + return ((void *)(M_START(m) + M_SIZE(m) - len)); } #ifdef KTR