From: Patrick McHardy Date: Thu, 11 Jun 2009 14:00:49 +0000 (+0200) Subject: Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net... X-Git-Tag: v2.6.31-rc1~14^2~109^2~2 X-Git-Url: http://ftp.safe.ca/?p=safe%2Fjmp%2Flinux-2.6;a=commitdiff_plain;h=36432dae73cf2c90a59b39c8df9fd8219272b005 Merge branch 'master' of git://git./linux/kernel/git/davem/net-next-2.6 --- 36432dae73cf2c90a59b39c8df9fd8219272b005 diff --cc net/netfilter/nf_conntrack_proto_dccp.c index 6b08d32,aee0d6b..1b816a2 --- a/net/netfilter/nf_conntrack_proto_dccp.c +++ b/net/netfilter/nf_conntrack_proto_dccp.c @@@ -22,8 -22,11 +22,9 @@@ #include #include #include + #include #include -static DEFINE_RWLOCK(dccp_lock); - /* Timeouts are based on values from RFC4340: * * - REQUEST: @@@ -549,8 -552,11 +550,11 @@@ static int dccp_packet(struct nf_conn * ct->proto.dccp.last_dir = dir; ct->proto.dccp.last_pkt = type; ct->proto.dccp.state = new_state; - write_unlock_bh(&dccp_lock); + spin_unlock_bh(&ct->lock); + if (new_state != old_state) + nf_conntrack_event_cache(IPCT_PROTOINFO, ct); + dn = dccp_pernet(net); nf_ct_refresh_acct(ct, ctinfo, skb, dn->dccp_timeout[new_state]);