Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: CVS commit: src/sys/dev/ic
On Tue, May 13, 2003 at 07:00:01AM -0700, Jason Thorpe wrote:
>
> On Tuesday, May 13, 2003, at 01:35 AM, dyoung%netbsd.org@localhost wrote:
>
> >2 Adopt the macros WI_LOCK/WI_UNLOCK for synchronization. FreeBSD
> > uses a different synchronization mechanism.
>
> Please tell me that you're not removing the existing spl*() stuff from
> the driver, and that the WI_{LOCK,UNLOCK}macros are just noop stubs.
>
> Our synchronization *semantics* are also different from FreeBSD, and
> blindly making a driver match is likely to cause problems.
On NetBSD, WI_LOCK/WI_UNLOCK wrap splnet/splx. I have not blindly
made wi match: I've made sure all the locking/unlocking is still
correct by an spl interpretation.
This is NOT a satisfactory way to unify the Free/Net code, especially
since there is an IEEE80211_LOCK/_UNLOCK, also, which if I use according
to the spl interpretation while Free uses it by their interpretation,
FreeBSD will deadlock.
I will see if I can work out a compromise with FreeBSD. In the mean
time, I think I will switch back to splnet.
> >5 Bug fix: if IFF_ALLMULTI, don't filter any multicasts.
>
> Our IFF_ALLMULTI semantics are different from FreeBSD; making a
> driver's IFF_ALLMULTI handling match FreeBSD is broken by definition.
Enami pointed it out and I've fixed it. Is there any guide to FreeBSD /
NetBSD differences on-line?
Dave
--
David Young OJC Technologies
dyoung%ojctech.com@localhost Urbana, IL * (217) 278-3933
Home |
Main Index |
Thread Index |
Old Index