Index: net/ipv4/netfilter/ip_conntrack_core.c =================================================================== RCS file: /home/cvs/linux-2.6/net/ipv4/netfilter/ip_conntrack_core.c,v retrieving revision 1.1.1.1 diff -u -r1.1.1.1 ip_conntrack_core.c --- a/net/ipv4/netfilter/ip_conntrack_core.c 2 May 2004 13:26:10 -0000 1.1.1.1 +++ b/net/ipv4/netfilter/ip_conntrack_core.c 3 May 2004 13:23:43 -0000 @@ -1093,9 +1093,9 @@ int ip_conntrack_alter_reply(struct ip_conntrack *conntrack, const struct ip_conntrack_tuple *newreply) { - WRITE_LOCK(&ip_conntrack_lock); + READ_LOCK(&ip_conntrack_lock); if (__ip_conntrack_find(newreply, conntrack)) { - WRITE_UNLOCK(&ip_conntrack_lock); + READ_UNLOCK(&ip_conntrack_lock); return 0; } /* Should be unconfirmed, so not in hash table yet */ @@ -1109,7 +1109,7 @@ conntrack->helper = LIST_FIND(&helpers, helper_cmp, struct ip_conntrack_helper *, newreply); - WRITE_UNLOCK(&ip_conntrack_lock); + READ_UNLOCK(&ip_conntrack_lock); return 1; }