Home | History | Annotate | Download | only in mii
History log of /src/sys/dev/mii/mii_ethersubr.c
RevisionDateAuthorComments
 1.3  15-Mar-2020  thorpej Define and implement a locking protocol for the ifmedia / mii layers:
- MP-safe drivers provide a mutex to ifmedia that is used to serialize
access to media-related structures / hardware regsiters. Converted
drivers use the new ifmedia_init_with_lock() function for this. The
new name is provided to ease the transition.
- Un-converted drivers continue to call ifmedia_init(), which will supply
a compatibility lock to be used instead. Several media-related entry
points must be aware of this compatibility lock, and are able to acquire
it recursively a limited number of times, if needed. This is a SPIN
mutex with priority IPL_NET.
- This same lock is used to serialize access to PHY registers and other
MII-related data structures.

The PHY drivers are modified to acquire and release the lock, as needed,
and assert the lock is held as a diagnostic aid.

The "usbnet" framework has had an overhaul of its internal locking
protocols to fit in with the media / mii changes, and the drivers adapted.

USB wifi drivers have been changed to provide their own adaptive mutex
to the ifmedia later via a new ieee80211_media_init_with_lock() function.
This is required because the USB drivers need an adaptive mutex.

Besised "usbnet", a few other drivers are converted: vmx, wm, ixgbe / ixv.

mcx also now calls ifmedia_init_with_lock() because it needs to also use
an adaptive mutex. The mcx driver still needs to be fully converted to
NET_MPSAFE.
 1.2  25-Mar-2019  msaitoh - Copy copyright messages from if_ethersubr.c rev. 1.157.
- Add missing RCS ID.
 1.1  02-Jan-2008  dyoung branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8; 1.1.106;
Fix XEN2_DOMU (and amd64?) builds: move ether_mediastatus(),
ether_mediachange() to their own module that we compile only if
the kernel configuration demands support for both MII buses and
ethernet. Thanks to Tom Spindler for suggesting that these routines
move to dev/mii/.
 1.1.106.2  08-Apr-2020  martin Merge changes from current as of 20200406
 1.1.106.1  10-Jun-2019  christos Sync with HEAD
 1.1.8.2  18-Feb-2008  mjf Sync with HEAD.
 1.1.8.1  02-Jan-2008  mjf file mii_ethersubr.c was added on branch mjf-devfs on 2008-02-18 21:05:51 +0000
 1.1.6.2  21-Jan-2008  yamt sync with head
 1.1.6.1  02-Jan-2008  yamt file mii_ethersubr.c was added on branch yamt-lazymbuf on 2008-01-21 09:43:26 +0000
 1.1.4.2  09-Jan-2008  matt sync with HEAD
 1.1.4.1  02-Jan-2008  matt file mii_ethersubr.c was added on branch matt-armv6 on 2008-01-09 01:53:22 +0000
 1.1.2.2  02-Jan-2008  bouyer Sync with HEAD
 1.1.2.1  02-Jan-2008  bouyer file mii_ethersubr.c was added on branch bouyer-xeni386 on 2008-01-02 21:54:32 +0000

RSS XML Feed