svn commit: r200523 - head/sys/dev/e1000

John Baldwin jhb at freebsd.org
Mon Dec 14 11:50:00 PST 2009


On Monday 14 December 2009 1:43:18 pm Jack F Vogel wrote:
> Author: jfv
> Date: Mon Dec 14 18:43:18 2009
> New Revision: 200523
> URL: http://svn.freebsd.org/changeset/base/200523
> 
> Log:
>   Remove the MTX_SPIN flag to the shared code MUTEX
>   as it was causing a panic, also took the opportunity
>   to rename the lock for clarity.
> 
> Modified:
>   head/sys/dev/e1000/e1000_osdep.h
> 
> Modified: head/sys/dev/e1000/e1000_osdep.h
> 
==============================================================================
> --- head/sys/dev/e1000/e1000_osdep.h	Mon Dec 14 18:27:34 2009	(r200522)
> +++ head/sys/dev/e1000/e1000_osdep.h	Mon Dec 14 18:43:18 2009	(r200523)
> @@ -82,8 +82,7 @@
>  /* Mutex used in the shared code */
>  #define E1000_MUTEX                     struct mtx
>  #define E1000_MUTEX_INIT(mutex)         mtx_init((mutex), #mutex, \
> -                                        MTX_NETWORK_LOCK, \
> -                                        MTX_DEF | MTX_SPIN)
> +                                        "E1000 Shared Lock", MTX_DEF)
>  #define E1000_MUTEX_DESTROY(mutex)      mtx_destroy(mutex)
>  #define E1000_MUTEX_LOCK(mutex)         mtx_lock(mutex)
>  #define E1000_MUTEX_TRYLOCK(mutex)      mtx_trylock(mutex)

Hmm, most NIC drivers use MTX_NETWORK_LOCK so that WITNESS will report LORs 
that happen if any two NIC drivers locks "cross" (e.g. if one driver leaked a 
lock while passing a packet up the stack that was forwarded to another 
interface).  Not sure if that is relevant to this particular lock though.

-- 
John Baldwin


More information about the svn-src-head mailing list