David S. Miller
2007-Apr-18 17:22 UTC
[Bridge] Re: [RESEND][PATCH] ebtables: clean up vmalloc usage in net/bridge/netfilter/ebtables.c
An earlier variant of your patch was applied already, included below.
You'll need to submit the newer parts relative to the current tree.
diff-tree 7ad4d2f6901437ba4717a26d395a73ea362d25c6 (from
b8282dcf0417bbc8a0786c129fdff9cc768f8f3c)
Author: Jayachandran C <c.jayachandran@gmail.com>
Date: Tue Apr 11 17:25:38 2006 -0700
[BRIDGE] ebtables: fix allocation in net/bridge/netfilter/ebtables.c
Allocate an array of 'struct ebt_chainstack *', the current code
allocates
array of 'struct ebt_chainstack'.
akpm: converted to use the
foo = alloc(sizeof(*foo))
form. Which would have prevented this from happening in the first place.
akpm: also removed unneeded typecast.
akpm: what on earth is this code doing anyway? cpu_possible_map can be
sparse..
Signed-off-by: Jayachandran C. <c.jayachandran@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
diff --git a/net/bridge/netfilter/ebtables.c b/net/bridge/netfilter/ebtables.c
index 66bd932..84b9af7 100644
--- a/net/bridge/netfilter/ebtables.c
+++ b/net/bridge/netfilter/ebtables.c
@@ -824,9 +824,9 @@ static int translate_table(struct ebt_re
if (udc_cnt) {
/* this will get free'd in do_replace()/ebt_register_table()
if an error occurs */
- newinfo->chainstack = (struct ebt_chainstack **)
- vmalloc((highest_possible_processor_id()+1)
- * sizeof(struct ebt_chainstack));
+ newinfo->chainstack + vmalloc((highest_possible_processor_id()+1)
+ * sizeof(*(newinfo->chainstack)));
if (!newinfo->chainstack)
return -ENOMEM;
for_each_possible_cpu(i) {
David S. Miller
2007-Apr-18 17:22 UTC
[Bridge] Re: [RESEND][PATCH] ebtables: clean up vmalloc usage in net/bridge/netfilter/ebtables.c
From: Andrew Morton <akpm@osdl.org> Date: Wed, 19 Apr 2006 15:59:25 -0700> "David S. Miller" <davem@davemloft.net> wrote: > > > > An earlier variant of your patch was applied already, included below. > > You'll need to submit the newer parts relative to the current tree. > > This is a similar-but-different patch. It applies OK. > > I reviewed it (mostly - it's somewhat non-trivial to do this) and queued it > up and was planning on sending it to you for post-2.6.17.It's at least fixing a few bugs, and the parts which are cleanups undoubtedly should prevent bugs in the future, so I think we should consider it for 2.6.17 right?
Andrew Morton
2007-Apr-18 17:22 UTC
[Bridge] Re: [RESEND][PATCH] ebtables: clean up vmalloc usage in net/bridge/netfilter/ebtables.c
"David S. Miller" <davem@davemloft.net> wrote:> > An earlier variant of your patch was applied already, included below. > You'll need to submit the newer parts relative to the current tree.This is a similar-but-different patch. It applies OK. I reviewed it (mostly - it's somewhat non-trivial to do this) and queued it up and was planning on sending it to you for post-2.6.17.
Apparently Analagous Threads
- [Bug 777] New: Suspect bug in __do_replace()
- [Bug 728] New: ip_tables: limit match: invalid size 40!=48
- Errors reported by Coverity in ext3.
- [Bug 1432] New: ebtables ebtables-2.0.11 buffer overflow on getting kernel data ( ebtables compiled with address sanitizer)
- [Bridge] [RELEASE] ebtables-brnf-3-vs-2.4.22 and ebtables-2-0-6