HomeFreeBSD

sfxge: assert either kernel or internal copy of interface flags

Description

sfxge: assert either kernel or internal copy of interface flags

ioctl to put interface down sets ifp->if_flags which holds the intended
administratively defined state and calls driver callback to apply it.
When everything is done, driver updates internal copy of
interface flags sc->if_flags which holds the operational state.
So, transmit from Rx path is possible when interface is intended to be
administratively down in accordance with ifp->if_flags, but not applied
yet and the operational state is up in accordance with sc->if_flags.

Sponsored by: Solarflare Communications, Inc.
Differential Revision: https://reviews.freebsd.org/D2075

Event Timeline