Date: Sun, 2 Aug 2009 22:56:10 +0100 (BST) From: Robert Watson <rwatson@FreeBSD.org> To: Russell Cattelan <cattelan@thebarn.com> Cc: FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: small fix to netatalk Message-ID: <alpine.BSF.2.00.0908022235050.1507@fledge.watson.org> In-Reply-To: <4A7320E1.4050308@thebarn.com> References: <4A7320E1.4050308@thebarn.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 31 Jul 2009, Russell Cattelan wrote: > starting up netatalk would panic the system with a lock not locked panic. > > It appears somebody reversed the 2 lock statements in netatalk/at_control.c Indeed -- almost certainly me, although there must be some differences in our netatalk setups as my box didn't panic in testing :-). I'll give it a more thorough spin locally and request RE permission to merge the patch tomorrow. Thanks! Robert N M Watson Computer Laboratory University of Cambridge > > diff --git a/sys/netatalk/at_control.c b/sys/netatalk/at_control.c > index 5193d66..b2d8422 100644 > - --- a/sys/netatalk/at_control.c > +++ b/sys/netatalk/at_control.c > @@ -276,7 +276,7 @@ at_control(struct socket *so, u_long cmd, caddr_t > data, struct ifnet *ifp, > * If the request is specifying phase 1, then > * only look at a phase one address > */ > - - AT_IFADDR_RUNLOCK(); > + AT_IFADDR_RLOCK(); > for (oaa = aa; aa; aa = TAILQ_NEXT(aa, aa_link)) { > if (aa->aa_ifp == ifp && > (aa->aa_flags & AFA_PHASE2) == 0) > @@ -286,7 +286,7 @@ at_control(struct socket *so, u_long cmd, caddr_t > data, struct ifnet *ifp, > ifa_free(&oaa->aa_ifa); > if (aa != NULL && oaa != aa) > ifa_ref(&aa->aa_ifa); > - - AT_IFADDR_RLOCK(); > + AT_IFADDR_RUNLOCK(); > } else { > struct at_ifaddr *oaa; > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.7 (Darwin) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org > > iD8DBQFKcyDhNRmM+OaGhBgRAnDKAJ0Ys2GMVJphbq6Qdgq6cvj85iKShwCfQsAE > P95+NxdFPwEjB/r0yQbTris= > =K0G2 > -----END PGP SIGNATURE----- > > _______________________________________________ > freebsd-current@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org" >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?alpine.BSF.2.00.0908022235050.1507>