[PATCH] ppbus/ppc locking
John Baldwin
jhb at freebsd.org
Wed Jan 21 15:11:12 PST 2009
On Thursday 04 December 2008 9:42:53 am Bruce M. Simpson wrote:
> John Baldwin wrote:
> > Please test! This is the last non-MPSAFE network driver at this point.
This
> > patch adds locking for the ppbus(4)/ppc(4) devices and the various ppbus
> > child devices (lpt, vpo, lpbb, ppi, pps). The basic model is that a
single
> > mutex in the ppc(4) driver protects the ppc0 hardware and is shared with
the
> > various child drivers. Two drivers now have detach methods that did not
have
> > them before (plip and ppi). I've done some simple testing on my laptop
(able
> > to load the drivers and do some simple things w/o panic'ing or tripping
> > assertions), but I am not really able to test the peripheral drivers
fully.
> >
> > http://www.FreeBSD.org/~jhb/patches/ppc_locking.patch
> >
> >
>
> Runway lpt Giant is an occasionally show stopping issue for me because
> my printer is attached via the plt port. I may get time to look at this
> later on...
>
> I tried applying these patches against 7-STABLE.
>
> ppc_cleanup.patch applied OK to 7.
>
> ppc_intr.patch applied OK to 7 with interrupt.h change manually merged,
> and some fixups to ppc.c for earlier intr_event kpi.
>
> ppc_locking.patch does not apply cleanly, and it's too much for me to
> deal with right now.
>
> I found I had to hack up an existing 7 tree in /usr/src to get things to
> compile because of the wide scope of the changes (touching kern, sys
> etc), I couldn't just use an svn checkout to work from.
Try http://www.FreeBSD.org/~jhb/patches/ppc_mpsafe_7.patch It is a complete
backport generated against a fresh stable/7 tree. It does not need the
interrupt changes since my locking patches actually undo them.
--
John Baldwin
More information about the freebsd-current
mailing list