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