Re: [PATCH net-next] nat: remove obsolete rcu_read_unlock call

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

 



On Fri, Sep 21, 2012 at 10:08:42AM -0700, Stephen Hemminger wrote:
> On Thu, 20 Sep 2012 16:14:45 +0200
> Eric Dumazet <eric.dumazet@xxxxxxxxx> wrote:
> 
> > On Thu, 2012-09-20 at 15:52 +0200, Ulrich Weber wrote:
> > > hlist walk in find_appropriate_src() is not protected anymore by rcu_read_lock(),
> > > so rcu_read_unlock() is unnecessary if in_range() matches.
> > > 
> > > Signed-off-by: Ulrich Weber <ulrich.weber@xxxxxxxxxx>
> > > ---
> > >  net/netfilter/nf_nat_core.c |    4 +---
> > >  1 file changed, 1 insertion(+), 3 deletions(-)
> > > 
> > > diff --git a/net/netfilter/nf_nat_core.c b/net/netfilter/nf_nat_core.c
> > > index 1816ad3..125d832 100644
> > > --- a/net/netfilter/nf_nat_core.c
> > > +++ b/net/netfilter/nf_nat_core.c
> > > @@ -201,10 +201,8 @@ find_appropriate_src(struct net *net, u16 zone,
> > >  				       &ct->tuplehash[IP_CT_DIR_REPLY].tuple);
> > >  			result->dst = tuple->dst;
> > >  
> > > -			if (in_range(l3proto, l4proto, result, range)) {
> > > -				rcu_read_unlock();
> > > +			if (in_range(l3proto, l4proto, result, range))
> > >  				return 1;
> > > -			}
> > >  		}
> > >  	}
> > >  	return 0;
> > 
> > 
> > This could explain the rcu_read_unlock() imbalance Stephen had (lockdep
> > splat with net-next)
> > 
> > 
> > How old is this bug ?
> > 
> > 
> > 
> 
> This fixes the lockdep splat I saw when staring KVM vm's with net-next and lockdep enabled

It's in my tree already.

I'll pass it to David asap. Thanks for the report.
--
To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Netfitler Users]     [LARTC]     [Bugtraq]     [Yosemite Forum]

  Powered by Linux