m_ext
m->m_ext.ext_buf, m->m_ext.ext_free,
m->m_ext.ext_size, m->m_ext.ext_ref);
KASSERT(m->m_ext.ext_paddr != M_PADDR_INVALID);
lastaddr = m->m_ext.ext_paddr +
(m->m_data - m->m_ext.ext_buf);
KASSERT(m->m_ext.ext_paddr != M_PADDR_INVALID);
paddr = m->m_ext.ext_paddr +
(m->m_data - m->m_ext.ext_buf);
KASSERT(m->m_ext.ext_buf <= m->m_data);
m->m_ext.ext_buf + m->m_ext.ext_size);
trunc_page((vaddr_t)m->m_ext.ext_buf);
m->m_ext.ext_pgs + (offset >> PAGE_SHIFT);
m->m_ext.ext_buf, MCLBYTES,
m->m_ext.ext_buf, MCLBYTES, NULL,
if ((m->m_ext.ext_paddr >> 28) == 8) {
m->m_len = m->m_pkthdr.len = m->m_ext.ext_size;
m->m_ext.ext_buf, MCLBYTES,
m->m_ext.ext_buf, MCLBYTES, NULL, BUS_DMA_WAITOK);
m->m_ext.ext_buf, m->m_ext.ext_size, NULL,
m->m_ext.ext_buf, m->m_ext.ext_size, NULL, BUS_DMA_NOWAIT);
__m->m_data = __m->m_ext.ext_buf; \
m->m_pkthdr.len = m->m_len = m->m_ext.ext_size;
KASSERT(m->m_ext.ext_size >= (NPE_FRAME_SIZE_DEFAULT + ETHER_ALIGN));
m->m_data = m->m_ext.ext_buf + (m->m_ext.ext_size
m->m_ext.ext_buf, m->m_ext.ext_size, NULL,
__m->m_data = __m->m_ext.ext_buf + 2; \
__m->m_data = __m->m_ext.ext_buf + 2; \
__m->m_data = __m->m_ext.ext_buf; \
((((__m->m_ext.ext_size - 1) & ~0x3U) \
m->m_ext.ext_buf, m->m_ext.ext_size, NULL,
if ((m->m_flags & M_EXT) && m->m_ext.ext_free != NULL)
if (((*rm)->m_flags & M_EXT) && (*rm)->m_ext.ext_free != NULL) {
m->m_data = m->m_ext.ext_buf;
error = bus_dmamap_load(sc->sc_dmat, rxs->rxs_dmamap, m->m_ext.ext_buf,
m->m_ext.ext_size, NULL, BUS_DMA_READ | BUS_DMA_NOWAIT);
m_new->m_data = m_new->m_ext.ext_buf;
m->m_len = m->m_pkthdr.len = m->m_ext.ext_size;
m->m_ext.ext_buf, m->m_ext.ext_size, NULL, BUS_DMA_NOWAIT);
__m->m_data = __m->m_ext.ext_buf + 2; \
__rxd->md_data_len = __m->m_ext.ext_size - 2; \
KASSERT(m->m_ext.ext_paddr != M_PADDR_INVALID);
lastaddr = m->m_ext.ext_paddr +
(m->m_data - m->m_ext.ext_buf);
KASSERT(m->m_ext.ext_paddr != M_PADDR_INVALID);
paddr = m->m_ext.ext_paddr +
(m->m_data - m->m_ext.ext_buf);
KASSERT(m->m_ext.ext_buf <= m->m_data);
m->m_ext.ext_buf + m->m_ext.ext_size);
trunc_page((vaddr_t)m->m_ext.ext_buf);
m->m_ext.ext_pgs + (offset >> PAGE_SHIFT);
m->m_ext.ext_buf, m->m_ext.ext_size, NULL, BUS_DMA_NOWAIT)) != 0) {
framelen = m->m_ext.ext_size - 3;
__m->m_data = __m->m_ext.ext_buf;
__rxd->hpc3_hdd_ctl = __m->m_ext.ext_size | HPC3_HDD_CTL_OWN |
__rxd->hpc1_hdd_ctl = __m->m_ext.ext_size | HPC1_HDD_CTL_OWN |
KASSERT(m->m_ext.ext_paddr != M_PADDR_INVALID);
lastaddr = m->m_ext.ext_paddr
+ (m->m_data - m->m_ext.ext_buf);
KASSERT(m->m_ext.ext_paddr != M_PADDR_INVALID);
paddr = m->m_ext.ext_paddr +
(m->m_data - m->m_ext.ext_buf);
KASSERTMSG(m->m_ext.ext_buf <= m->m_data,
m, m->m_ext.ext_buf, m->m_ext.ext_size, m->m_data);
m->m_ext.ext_buf + m->m_ext.ext_size),
m, m->m_ext.ext_buf, m->m_ext.ext_size, m->m_data);
trunc_page((vaddr_t)m->m_ext.ext_buf);
m->m_ext.ext_pgs + (offset >> PAGE_SHIFT);
m->m_ext.ext_paddr = pa;
KASSERT(buf == m->m_ext.ext_buf);
(void *)va, m->m_ext.ext_paddr);
bd->nb_len = (m->m_ext.ext_size - 2);
(long)kvtopte(m->m_ext.ext_buf);
bd->nb_len = (m->m_ext.ext_size - 2);
bd->nb_pte = (long)kvtopte(m->m_ext.ext_buf);
sc->rxq[bi].m_dmamap, m->m_ext.ext_buf,
m->m_ext.ext_buf, MCLBYTES, NULL,
m->m_ext.ext_buf, m->m_ext.ext_size, NULL,
m->m_pkthdr.len = m->m_len = m->m_ext.ext_size;
m->m_ext.ext_buf, m->m_ext.ext_size, NULL,
m->m_pkthdr.len = m->m_len = MIN(m->m_ext.ext_size, len);
htole32(__SHIFTIN(((m->m_ext.ext_size - 1) & ~0x3U),
tlen = m->m_ext.ext_size;
m->m_len = m->m_ext.ext_size;
m->m_pkthdr.len = m->m_len = m->m_ext.ext_size;
m->m_ext.ext_buf, m->m_ext.ext_size, NULL,
__m->m_data = __m->m_ext.ext_buf; \
__m->m_data = __m->m_ext.ext_buf + 2; \
m->m_pkthdr.len = m->m_len = m->m_ext.ext_size;
mnew->m_len = mnew->m_pkthdr.len = mnew->m_ext.ext_size;
= data->rd_m->m_ext.ext_size;
m->m_ext.ext_buf, MCLBYTES, NULL,
memset(m->m_ext.ext_buf, 0, m->m_ext.ext_size);
m->m_ext.ext_buf, m->m_ext.ext_size, NULL,
__m->m_data = __m->m_ext.ext_buf; \
(((__m->m_ext.ext_size)<<GEM_RD_BUFSHIFT) \
(((__m->m_ext.ext_size)<<GEM_RD_BUFSHIFT) \
(m->m_ext.ext_size - 1);
m->m_len = m->m_pkthdr.len = m->m_ext.ext_size;
#define FXP_RXBUFSIZE(sc, m) ((m)->m_ext.ext_size - \
#define FXP_MTORFA(m) (struct fxp_rfa *)((m)->m_ext.ext_buf + \
(m)->m_data = (m)->m_ext.ext_buf + (sc)->sc_rfa_size + \
m->m_data = m->m_ext.ext_buf;
m->m_pkthdr.len = m->m_len = m->m_ext.ext_size;
m->m_ext.ext_buf, m->m_ext.ext_size, NULL,
rp->ze_bufsize = (m->m_ext.ext_size - 2);
m->m_ext.ext_buf, m->m_ext.ext_size, NULL,
__m->m_data = __m->m_ext.ext_buf + 2; \
__rxd->er_control = RXCTL_BUFLENGTH(__m->m_ext.ext_size - 2); \
m->m_ext.ext_buf, m->m_ext.ext_size, NULL,
__m->m_data = __m->m_ext.ext_buf; \
htole32((((__m->m_ext.ext_size - 1) & ~0x3U) \
m->m_len = m->m_pkthdr.len = m->m_ext.ext_size;
m0->m_len = m0->m_pkthdr.len = m0->m_ext.ext_size;
m_new->m_data = m_new->m_ext.ext_buf;
m->m_len = m->m_pkthdr.len = m->m_ext.ext_size;
m->m_ext.ext_buf, m->m_ext.ext_size, NULL,
buf = m_new->m_data = m_new->m_ext.ext_buf;
m_new->m_ext.ext_size = BGE_JUMBO_FRAMELEN;
"ext_size = 0x%04zX\n", mp, mp->m_ext.ext_size);
m->m_len = m->m_pkthdr.len = m->m_ext.ext_size;
__m->m_data = __m->m_ext.ext_buf + (sc)->sc_align_tweak; \
mnew->m_pkthdr.len = mnew->m_len = mnew->m_ext.ext_size;
sbuf->m->m_pkthdr.len = sbuf->m->m_len = sbuf->m->m_ext.ext_size;
m->m_pkthdr.len = m->m_len = m->m_ext.ext_size;
m->m_data = m->m_ext.ext_buf + JME_RX_PAD_BYTES;
m->m_len = m->m_pkthdr.len = m->m_ext.ext_size;
if ((m->m_flags & M_EXT) && m->m_ext.ext_free) {
m->m_ext.ext_buf, m->m_ext.ext_size, NULL, BUS_DMA_NOWAIT);
__m->m_data = __m->m_ext.ext_buf; \
m_adj(m, m->m_ext.ext_size - sc->sc_rxbufsz);
m->m_ext.ext_buf, m->m_ext.ext_size, NULL,
__m->m_data = __m->m_ext.ext_buf + 2; \
m->m_ext.ext_buf, m->m_ext.ext_size, NULL,
m_new->m_data = m_new->m_ext.ext_buf;
m->m_ext.ext_buf, m->m_ext.ext_size, NULL,
__m->m_data = __m->m_ext.ext_buf + 2; \
m->m_data = m->m_ext.ext_buf + 2;
m->m_ext.ext_buf, m->m_ext.ext_size, NULL, BUS_DMA_NOWAIT);
m_new->m_data = m_new->m_ext.ext_buf;
m_new->m_data = m_new->m_ext.ext_buf;
m_new->m_ext.ext_size = ETHER_MAX_LEN_JUMBO;
m->m_data = m->m_ext.ext_buf;
m->m_data = m->m_ext.ext_buf;
m->m_ext.ext_buf, m->m_ext.ext_size, NULL, BUS_DMA_NOWAIT)) != 0) {
m->m_data = m->m_ext.ext_buf;
m_new->m_ext.ext_buf, m_new->m_ext.ext_size, NULL,
m->m_data = m->m_ext.ext_buf + sc->sc_align_tweak;
m->m_len = m->m_pkthdr.len = m->m_ext.ext_size;
error = bus_dmamap_load(sc->sc_dmat, rxs->rxs_dmamap, m->m_ext.ext_buf,
m->m_ext.ext_size, NULL, BUS_DMA_READ | BUS_DMA_NOWAIT);
m[0]->m_len = m[0]->m_pkthdr.len = m[0]->m_ext.ext_size;
buf_start = (uint8_t *)m->m_ext.ext_buf;
buf_end = buf_start +m->m_ext.ext_size;
m->m_ext.ext_buf, m->m_ext.ext_size, NULL, BUS_DMA_NOWAIT);
rp->qe_buf_len = -(m->m_ext.ext_size - 2) / 2;
m->m_ext.ext_buf, m->m_ext.ext_size, NULL, BUS_DMA_NOWAIT);
mn->m_ext.ext_buf, mn->m_ext.ext_size, NULL, BUS_DMA_NOWAIT)))
m_new->m_data = m_new->m_ext.ext_buf;
KASSERT((o)->m_ext.ext_refcnt >= 1); \
atomic_inc_uint(&(o)->m_ext.ext_refcnt); \
if (__predict_true(m->m_ext.ext_refcnt == 1)) {
refcnt = m->m_ext.ext_refcnt = 0;
refcnt = atomic_dec_uint_nv(&m->m_ext.ext_refcnt);
m->m_ext.ext_refcnt++; /* XXX */
m->m_ext.ext_buf, m->m_ext.ext_paddr);
} else if (m->m_ext.ext_free) {
(*m->m_ext.ext_free)(m,
m->m_ext.ext_buf, m->m_ext.ext_size,
m->m_ext.ext_arg);
free(m->m_ext.ext_buf, 0);
m->m_ext.ext_refcnt,
m->m_ext.ext_buf, m->m_ext.ext_size,
m->m_ext.ext_free, m->m_ext.ext_arg);
vaddr_t sva = (vaddr_t)m->m_ext.ext_buf;
vaddr_t eva = sva + m->m_ext.ext_size;
(*pr)(" %p", m->m_ext.ext_pgs[i]);
m->m_data = m->m_ext.ext_buf;
m->m_ext.ext_size = MCLBYTES;
m->m_ext.ext_free = NULL;
m->m_ext.ext_arg = NULL;
KASSERT(m->m_ext.ext_refcnt == 0);
rv += m->m_ext.ext_size;
sodoloanfree(m->m_ext.ext_pgs, m->m_ext.ext_buf,
m->m_ext.ext_size);
m->m_ext.ext_pgs, UVM_LOAN_TOPAGE);
pmap_kenter_pa(va, VM_PAGE_TO_PHYS(m->m_ext.ext_pgs[i]),
mbcnt += m2->m_ext.ext_size;
sc->sc_ep = (u_char *)sc->sc_mbuf->m_ext.ext_buf +
sc->sc_mbuf->m_ext.ext_size;
sc->sc_mp = sc->sc_pktstart = (u_char *)sc->sc_mbuf->m_ext.ext_buf +
sc->sc_ep = (u_char *)sc->sc_mbuf->m_ext.ext_buf +
sc->sc_mbuf->m_ext.ext_size;
sc->sc_mp = sc->sc_pktstart = (u_char *)sc->sc_mbuf->m_ext.ext_buf +
n->m_len = n->m_ext.ext_size;
mbcnt += chk->data->m_ext.ext_size;
mbcnt_e += chk->data->m_ext.ext_size;
*mbcnt += m->m_ext.ext_size;
*mbcnt += m->m_ext.ext_size;
m->m_ext.ext_buf, m->m_ext.ext_free,
m->m_ext.ext_size, m->m_ext.ext_refcnt);
pgpp = m->m_ext.ext_pgs;
#define NFSMSIZ(m) ((M_HASCL(m)) ? (m)->m_ext.ext_size : \
KASSERT(m->m_ext.ext_paddr != M_PADDR_INVALID);
lastaddr = m->m_ext.ext_paddr +
(m->m_data - m->m_ext.ext_buf);
(m)->m_ext.ext_refcnt = 1; \
(m)->m_data = (m)->m_ext.ext_buf; \
(m)->m_ext.ext_size = (size); \
(m)->m_ext.ext_free = NULL; \
(m)->m_ext.ext_arg = NULL; \
(m)->m_data = (m)->m_ext.ext_buf = (char *)(buf); \
(m)->m_ext.ext_size = (size); \
(m)->m_ext.ext_free = (free); \
(m)->m_ext.ext_arg = (arg); \
(((m)->m_flags & M_EXT) ? (m)->m_ext.ext_buf : \
(((m)->m_flags & M_EXT) ? (m)->m_ext.ext_size : \
(m)->m_ext.ext_refcnt > 1))
((m)->m_flags & M_EXT ? (m)->m_ext.ext_buf + (m)->m_ext.ext_size - \
sb->sb_mbcnt += m->m_ext.ext_size;
sb->sb_mbcnt -= m->m_ext.ext_size;