* [PATCH 4/8] Fix racy counters zeroing
@ 2005-11-08 1:44 Pablo Neira
2005-11-09 1:31 ` Pablo Neira
0 siblings, 1 reply; 2+ messages in thread
From: Pablo Neira @ 2005-11-08 1:44 UTC (permalink / raw)
To: Netfilter Development Mailinglist; +Cc: Harald Welte
[-- Attachment #1: Type: text/plain, Size: 247 bytes --]
Fix racy zero counters operation at getting.
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
--
The dawn of the fourth age of Linux firewalling is coming; a time of
great struggle and heroic deeds -- J.Kadlecsik got inspired by J.Morris
[-- Attachment #2: 03-zeroing.patch --]
[-- Type: text/plain, Size: 1334 bytes --]
Fix racy zero counters operation at getting.
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Index: netfilter-2.6.14.git/net/ipv4/netfilter/ip_conntrack_netlink.c
===================================================================
--- netfilter-2.6.14.git.orig/net/ipv4/netfilter/ip_conntrack_netlink.c 2005-11-06 19:09:20.000000000 +0100
+++ netfilter-2.6.14.git/net/ipv4/netfilter/ip_conntrack_netlink.c 2005-11-06 19:25:09.000000000 +0100
@@ -770,18 +770,20 @@ ctnetlink_get_conntrack(struct sock *ctn
if (err < 0)
return err;
- h = ip_conntrack_find_get(&tuple, NULL);
+ write_lock_bh(&ip_conntrack_lock);
+ h = __ip_conntrack_find(&tuple, NULL);
if (!h) {
DEBUGP("tuple not found in conntrack hash");
+ write_unlock_bh(&ip_conntrack_lock);
return -ENOENT;
}
DEBUGP("tuple found\n");
ct = tuplehash_to_ctrack(h);
err = -ENOMEM;
- skb2 = alloc_skb(NLMSG_GOODSIZE, GFP_KERNEL);
+ skb2 = alloc_skb(NLMSG_GOODSIZE, GFP_ATOMIC);
if (!skb2) {
- ip_conntrack_put(ct);
+ write_unlock_bh(&ip_conntrack_lock);
return -ENOMEM;
}
NETLINK_CB(skb2).dst_pid = NETLINK_CB(skb).pid;
@@ -794,7 +796,7 @@ ctnetlink_get_conntrack(struct sock *ctn
memset(&ct->counters, 0, sizeof(ct->counters));
#endif
- ip_conntrack_put(ct);
+ write_unlock_bh(&ip_conntrack_lock);
if (err <= 0)
goto free;
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [PATCH 4/8] Fix racy counters zeroing
2005-11-08 1:44 [PATCH 4/8] Fix racy counters zeroing Pablo Neira
@ 2005-11-09 1:31 ` Pablo Neira
0 siblings, 0 replies; 2+ messages in thread
From: Pablo Neira @ 2005-11-09 1:31 UTC (permalink / raw)
To: Harald Welte; +Cc: Netfilter Development Mailinglist
Pablo Neira wrote:
> Fix racy zero counters operation at getting.
Now I understand. You dropped my patch to zero counters at getting[1]
since it is racy, but it seems that it slipped through the patch that
changes the allocation flag.
Since this patch applies to your git tree, I just tried to fix what was
in your tree.
[1] See [PATCH 6/7] add support for zeroing counters at getting
--
The dawn of the fourth age of Linux firewalling is coming; a time of
great struggle and heroic deeds -- J.Kadlecsik got inspired by J.Morris
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2005-11-09 1:31 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-11-08 1:44 [PATCH 4/8] Fix racy counters zeroing Pablo Neira
2005-11-09 1:31 ` Pablo Neira
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.