Hi,
I put here a bug among others:

---------------------------- sys/dev/ic/ti.c ---------------------------

648             MGETHDR(m_new, M_DONTWAIT, MT_DATA);
                if (m_new == NULL)
                        return (ENOBUFS);

                m_new->m_len = m_new->m_pkthdr.len = MHLEN;
                m_adj(m_new, ETHER_ALIGN);

                if (bus_dmamap_load_mbuf(sc->sc_dmatag, dmamap, m_new,
                    BUS_DMA_NOWAIT)) {
                        m_freem(m);
                        return (ENOBUFS);
                }

------------------------------------------------------------------------

'm_new' is leaked.

Found by The Brainy Code Scanner.

Maxime

Reply via email to