diff --git a/sys/net/lagg/if_lagg.c b/sys/net/lagg/if_lagg.c --- a/sys/net/lagg/if_lagg.c +++ b/sys/net/lagg/if_lagg.c @@ -1442,8 +1442,14 @@ lagg_input(struct ifnet *ifp, struct mbuf *m) { struct lagg_port *lp = ifp->if_lagg; - struct lagg_softc *sc = lp->lp_softc; - struct ifnet *scifp = sc->sc_ifp; + struct lagg_softc *sc; + struct ifnet *scifp; + + if (lp == NULL || (sc = lp->lp_softc) == NULL) { + m_freem(m); + return; + } + scifp = sc->sc_ifp; LAGG_RLOCK(sc); if ((scifp->if_flags & IFF_RUNNING) == 0 ||