From: David Stevens <[EMAIL PROTECTED]> Date: Thu, 3 Nov 2005 15:58:16 -0700
> The following patch fixes some locking issues with multicast source > filters: > 1) Acquire a read lock for the socket mc list in ip6_mc_msfilter(). > 2) Add a read/write lock for the source list for individual socket > multicast entries to protect inet6_check() reads on it during > updates. I think this patch needs some adjustments for the current tree. For example, where the write lock taking is added in the first hunk change to ip6_mc_msfilter(), specifically this hunk: @@ -547,6 +556,8 @@ int ip6_mc_msfilter(struct sock *sk, str } } else newpsl = NULL; + + write_lock_bh(&pmc->sflock); psl = pmc->sflist; if (psl) { (void) ip6_mc_del_src(idev, group, pmc->sfmode, The else branch above it now looks like: } else { newpsl = NULL; (void) ip6_mc_add_src(idev, group, gsf->gf_fmode, 0, NULL, 0); } so I think this part of the locking needs to be readjusted. At a minimum I need a new patch because this one rejects in that spot :-) Thanks. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html