svn commit: r280374 - head/sys/dev/sfxge

Gleb Smirnoff glebius at FreeBSD.org
Tue Mar 24 12:44:10 UTC 2015


On Mon, Mar 23, 2015 at 03:44:18PM +0000, Andrew Rybchenko wrote:
A> Author: arybchik
A> Date: Mon Mar 23 15:44:17 2015
A> New Revision: 280374
A> URL: https://svnweb.freebsd.org/changeset/base/280374
A> 
A> Log:
A>   sfxge: assert either kernel or internal copy of interface flags
A>   
A>   ioctl to put interface down sets ifp->if_flags which holds the intended
A>   administratively defined state and calls driver callback to apply it.
A>   When everything is done, driver updates internal copy of
A>   interface flags sc->if_flags which holds the operational state.
A>   So, transmit from Rx path is possible when interface is intended to be
A>   administratively down in accordance with ifp->if_flags, but not applied
A>   yet and the operational state is up in accordance with sc->if_flags.
A>   
A>   Sponsored by:   Solarflare Communications, Inc.
A>   Differential Revision: https://reviews.freebsd.org/D2075

In the future ifnet API, that is now being developed in projects/ifnet,
the stack promises to change if_flags only via SIOCSIFFLAGS, so driver
can and should cashe the value and later access it using internal locking.
The if_flags need not be accessed at all by the driver.

-- 
Totus tuus, Glebius.


More information about the svn-src-all mailing list