Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 Mar 2010 20:14:58 +0000 (UTC)
From:      "Bjoern A. Zeeb" <bz@FreeBSD.org>
To:        Rui Paulo <rpaulo@freebsd.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r205637 - head/sys/netinet6
Message-ID:  <20100325201233.J33454@maildrop.int.zabbadoz.net>
In-Reply-To: <DBC6CD04-1108-4AC8-85A7-753F6D9D03C8@freebsd.org>
References:  <201003251029.o2PAT0AW031465@svn.freebsd.org> <DBC6CD04-1108-4AC8-85A7-753F6D9D03C8@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 25 Mar 2010, Rui Paulo wrote:

>
> On 25 Mar 2010, at 10:29, Bjoern A. Zeeb wrote:
>
>> Author: bz
>> Date: Thu Mar 25 10:29:00 2010
>> New Revision: 205637
>> URL: http://svn.freebsd.org/changeset/base/205637
>>
>> Log:
>>  We are holding a write lock here so avoid aquiring it twice calling
>>  the "locked" version rather than the wrapper function.
>>
>>  MFC after:	6 days
>>
>> Modified:
>>  head/sys/netinet6/nd6.c
>>
>> Modified: head/sys/netinet6/nd6.c
>> ==============================================================================
>> --- head/sys/netinet6/nd6.c	Thu Mar 25 10:13:21 2010	(r205636)
>> +++ head/sys/netinet6/nd6.c	Thu Mar 25 10:29:00 2010	(r205637)
>> @@ -1168,7 +1168,7 @@ nd6_nud_hint(struct rtentry *rt, struct
>
>
> This code is probably missing a:
>                LLE_WLOCK_ASSERT(lle);
> at the beginning.

No, the lock is acquired in
 	ln = nd6_lookup(dst6, ND6_EXCLUSIVE, NULL);
 	calling into lla_lookup().. ending in in6_lltable_lookup()
and hold if the ln is not NULL.


>>
>>  	ln->ln_state = ND6_LLINFO_REACHABLE;
>> 	if (!ND6_LLINFO_PERMANENT(ln)) {
>> -		nd6_llinfo_settimer(ln,
>> +		nd6_llinfo_settimer_locked(ln,
>> 		    (long)ND_IFINFO(rt->rt_ifp)->reachable * hz);
>> 	}
>> done:
>
> --
> Rui Paulo
>

-- 
Bjoern A. Zeeb         It will not break if you know what you are doing.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100325201233.J33454>