Re: [PATCH] NLM: AF_UNSPEC addresses are all equal

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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

[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux