It only prevent null pointer dereference.
On Mon, Nov 18, 2019 at 3:18 PM <m...@netbsd.org> wrote: > > On Mon, Nov 18, 2019 at 06:15:27AM +0000, m...@netbsd.org wrote: > > > Modified files: > > > > > > Index: src/sys/dev/pci/if_mcx.c > > > diff -u src/sys/dev/pci/if_mcx.c:1.5 src/sys/dev/pci/if_mcx.c:1.6 > > > --- src/sys/dev/pci/if_mcx.c:1.5 Thu Oct 17 15:57:56 2019 > > > +++ src/sys/dev/pci/if_mcx.c Mon Nov 18 04:40:05 2019 > > > @@ -1,4 +1,4 @@ > > > -/* $NetBSD: if_mcx.c,v 1.5 2019/10/17 15:57:56 msaitoh Exp $ */ > > > +/* $NetBSD: if_mcx.c,v 1.6 2019/11/18 04:40:05 nonaka Exp $ */ > > > /* $OpenBSD: if_mcx.c,v 1.33 2019/09/12 04:23:59 jmatthew Exp $ */ > > > > > > /* > > > @@ -6347,7 +6347,7 @@ mcx_load_mbuf(struct mcx_softc *sc, stru > > > break; > > > > > > case EFBIG: > > > - if (m_defrag(m, M_DONTWAIT) == 0 && > > > + if (m_defrag(m, M_DONTWAIT) != NULL && > > > bus_dmamap_load_mbuf(sc->sc_dmat, ms->ms_map, m, > > > BUS_DMA_STREAMING | BUS_DMA_NOWAIT) == 0) > > > break; > > > > > > > Is this one of those "m_defrag misbehaves because it will not turn it > > into a chain of 1 packet, but 2"? > > > > (I think this will not work) > > Additional context: > http://mail-index.netbsd.org/tech-net/2018/09/01/msg007031.html