On Mon, Nov 24, 2008 at 01:18:33PM -0500, bfields wrote: > On Sat, Nov 22, 2008 at 09:08:30PM -0500, Chuck Lever wrote: > > Hi Bruce- > > > > On Nov 22, 2008, at Nov 22, 2008, 11:58 AM, Chuck Lever wrote: > >> The nlm_cmp_addr() function, which compares two IP addresses, is > >> sometimes used to check AF_UNSPEC addresses. If both addresses are > >> AF_UNSPEC, then it should consider them equal -- the contents of an > >> AF_UNSPEC address, other than the address family, are > >> inconsequential. > >> > >> This is important because the loop in nlm_lookup_host() always > >> compares the h_srcaddr field to the incoming source address. For > >> client nlm_host entries, both are always AF_UNSPEC, and should allow > >> the entry match to succeed. If it always fails, then we create a > >> fresh nlm_host entry every time we mount the same server, even if > >> all other items in the existing entry (protocol, NLM version, host > >> address) match. > >> > >> These extra entries will eventually expire once the server is > >> unmounted, so the impact of this bug, introduced in 2.6.28 with > >> commit 781b61a6, should be minor. > >> > >> Signed-off-by: Chuck Lever <chuck.lever@xxxxxxxxxx> > >> --- > >> Bruce- > >> > >> Another minor lockd IPv6 bug fix for 2.6.28. > >> > >> Alternate fix for this problem is to change nlm_lookup_host() so that > >> it compares the srcaddrs only when h_server is set. > > > > I now have a patch that does this instead, and it seems to make more > > sense to me. > > OK. (I don't think you've sent it yet?) Just found it, never mind! --b. -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html