Patch to fix locking nits in hme

John Baldwin jhb at FreeBSD.org
Thu Aug 4 18:16:58 GMT 2005


On Thursday 04 August 2005 02:05 pm, Marius Strobl wrote:
> On Thu, Aug 04, 2005 at 12:53:17PM -0400, John Baldwin wrote:
> > I have a patch to fix several nits in the hme(4) driver's locking
> > including:
> >
> > - Using the driver lock instead of Giant in a busdma callback.
> > - Using callout_drain() in detach.
> > - Locking access to the mii registers with the driver lock.
> > - Clearing the RUNNING and OACTIVE flags in stop.
> > - Re-enabling updating the media from hme_init_locked().
> > - Making the mutex non-recursive.
> > - Fixing locking in ioctl.
> >
> > Patch is at http://www.freebsd.org/~jhb/patches/hme_locking.patch
>
> @@ -871,11 +859,7 @@
>  #endif
>
>  	/* Set the current media. */
> -	/*
> -	 * HME_UNLOCK(sc);
> -	 * mii_mediachg(sc->sc_mii);
> -	 * HME_LOCK(sc);
> -	 */
> +	mii_mediachg(sc->sc_mii);
>
> Calling mii_mediachg() will trigger some unsolved problems with
> the MIF configuration (most likely) which used to cause dhclient(8)
> not working on Ultra 2 and result in no link at all on Netra T1.

Ok.  I had assumed it was commented out due to locking problems rather than 
that.  I can comment it back out.

-- 
John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org


More information about the freebsd-sparc64 mailing list