--- sys/dev/e1000/if_em.c.orig 2010-11-01 20:57:53.000000000 -0400 +++ sys/dev/e1000/if_em.c 2010-11-16 01:28:00.000000000 -0500 @@ -3754,8 +3769,13 @@ em_refresh_mbufs(struct rx_ring *rxr, in ** they can only be due to an error ** and are to be reused. */ - if (rxbuf->m_head != NULL) + if (rxbuf->m_head != NULL) { + rxbuf->m_head->m_len = rxbuf->m_head->m_pkthdr.len = adapter->rx_mbuf_sz; + rxbuf->m_head->m_flags |= M_PKTHDR; + rxbuf->m_head->m_data = rxbuf->m_head->m_ext.ext_buf; + rxbuf->m_head->m_next = NULL; goto reuse; + } m = m_getjcl(M_DONTWAIT, MT_DATA, M_PKTHDR, adapter->rx_mbuf_sz); /*