<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/net/bridge/netfilter, branch v3.0.82</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/net/bridge/netfilter?h=v3.0.82</id>
<link rel='self' href='https://git.amat.us/linux/atom/net/bridge/netfilter?h=v3.0.82'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2011-05-26T17:09:07Z</updated>
<entry>
<title>netfilter: Fix several warnings in compat_mtw_from_user().</title>
<updated>2011-05-26T17:09:07Z</updated>
<author>
<name>David Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2011-05-19T22:14:39Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=97242c85a2c8160eac5a6e945209b5b6ae8ab5a3'/>
<id>urn:sha1:97242c85a2c8160eac5a6e945209b5b6ae8ab5a3</id>
<content type='text'>
Kill set but not used 'entry_offset'.

Add a default case to the switch statement so the compiler
can see that we always initialize off and size_kern before
using them.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>netfilter: ebtables: only call xt_compat_add_offset once per rule</title>
<updated>2011-05-10T07:52:17Z</updated>
<author>
<name>Florian Westphal</name>
<email>fw@strlen.de</email>
</author>
<published>2011-04-21T08:58:25Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=103a9778e07bcc0cd34b5c35a87281454eec719e'/>
<id>urn:sha1:103a9778e07bcc0cd34b5c35a87281454eec719e</id>
<content type='text'>
The optimizations in commit 255d0dc34068a976
(netfilter: x_table: speedup compat operations) assume that
xt_compat_add_offset is called once per rule.

ebtables however called it for each match/target found in a rule.

The match/watcher/target parser already returns the needed delta, so it
is sufficient to move the xt_compat_add_offset call to a more reasonable
location.

While at it, also get rid of the unused COMPAT iterator macros.

Signed-off-by: Florian Westphal &lt;fw@strlen.de&gt;
Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
</content>
</entry>
<entry>
<title>netfilter: fix ebtables compat support</title>
<updated>2011-05-10T07:48:59Z</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2011-04-21T08:57:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=5a6351eecf8c87afed9c883bb6341d09406d74ba'/>
<id>urn:sha1:5a6351eecf8c87afed9c883bb6341d09406d74ba</id>
<content type='text'>
commit 255d0dc34068a976 (netfilter: x_table: speedup compat operations)
made ebtables not working anymore.

1) xt_compat_calc_jump() is not an exact match lookup
2) compat_table_info() has a typo in xt_compat_init_offsets() call
3) compat_do_replace() misses a xt_compat_init_offsets() call

Reported-by: dann frazier &lt;dannf@dannf.org&gt;
Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
</content>
</entry>
<entry>
<title>bridge: netfilter: fix information leak</title>
<updated>2011-02-14T15:49:23Z</updated>
<author>
<name>Vasiliy Kulikov</name>
<email>segoon@openwall.com</email>
</author>
<published>2011-02-14T15:49:23Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d846f71195d57b0bbb143382647c2c6638b04c5a'/>
<id>urn:sha1:d846f71195d57b0bbb143382647c2c6638b04c5a</id>
<content type='text'>
Struct tmp is copied from userspace.  It is not checked whether the "name"
field is NULL terminated.  This may lead to buffer overflow and passing
contents of kernel stack as a module name to try_then_request_module() and,
consequently, to modprobe commandline.  It would be seen by all userspace
processes.

Signed-off-by: Vasiliy Kulikov &lt;segoon@openwall.com&gt;
Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
</content>
</entry>
<entry>
<title>netfilter: ebt_ip6: allow matching on ipv6-icmp types/codes</title>
<updated>2011-01-13T11:05:12Z</updated>
<author>
<name>Florian Westphal</name>
<email>fw@strlen.de</email>
</author>
<published>2010-12-20T14:57:47Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=6faee60a4e82075853a437831768cc9e2e563e4e'/>
<id>urn:sha1:6faee60a4e82075853a437831768cc9e2e563e4e</id>
<content type='text'>
To avoid adding a new match revision icmp type/code are stored
in the sport/dport area.

Signed-off-by: Florian Westphal &lt;fw@strlen.de&gt;
Reviewed-by: Holger Eitzenberger &lt;holger@eitzenberger.org&gt;
Reviewed-by: Bart De Schuymer&lt;bdschuym@pandora.be&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>netfilter: x_table: speedup compat operations</title>
<updated>2011-01-13T11:05:12Z</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2010-12-18T17:35:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=255d0dc34068a976550ce555e153c0bfcfec7cc6'/>
<id>urn:sha1:255d0dc34068a976550ce555e153c0bfcfec7cc6</id>
<content type='text'>
One iptables invocation with 135000 rules takes 35 seconds of cpu time
on a recent server, using a 32bit distro and a 64bit kernel.

We eventually trigger NMI/RCU watchdog.

INFO: rcu_sched_state detected stall on CPU 3 (t=6000 jiffies)

COMPAT mode has quadratic behavior and consume 16 bytes of memory per
rule.

Switch the xt_compat algos to use an array instead of list, and use a
binary search to locate an offset in the sorted array.

This halves memory need (8 bytes per rule), and removes quadratic
behavior [ O(N*N) -&gt; O(N*log2(N)) ]

Time of iptables goes from 35 s to 150 ms.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>net/bridge: fix trivial sparse errors</title>
<updated>2011-01-03T21:29:18Z</updated>
<author>
<name>Tomas Winkler</name>
<email>tomas.winkler@intel.com</email>
</author>
<published>2011-01-03T11:08:58Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1a9180a20f3a314fda3e96b77570cad3864b2896'/>
<id>urn:sha1:1a9180a20f3a314fda3e96b77570cad3864b2896</id>
<content type='text'>
net/bridge//br_stp_if.c:148:66: warning: conversion of
net/bridge//br_stp_if.c:148:66:     int to
net/bridge//br_stp_if.c:148:66:     int enum umh_wait

net/bridge//netfilter/ebtables.c:1150:30: warning: Using plain integer as NULL pointer

Signed-off-by: Tomas Winkler &lt;tomas.winkler@intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>bridge: fix RCU races with bridge port</title>
<updated>2010-11-15T19:13:17Z</updated>
<author>
<name>stephen hemminger</name>
<email>shemminger@vyatta.com</email>
</author>
<published>2010-11-15T06:38:13Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b5ed54e94d324f17c97852296d61a143f01b227a'/>
<id>urn:sha1:b5ed54e94d324f17c97852296d61a143f01b227a</id>
<content type='text'>
The macro br_port_exists() is not enough protection when only
RCU is being used. There is a tiny race where other CPU has cleared port
handler hook, but is bridge port flag might still be set.

Signed-off-by: Stephen Hemminger &lt;shemminger@vyatta.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>bridge: add proper RCU annotation to should_route_hook</title>
<updated>2010-11-15T19:13:16Z</updated>
<author>
<name>Eric Dumazet</name>
<email>eric.dumazet@gmail.com</email>
</author>
<published>2010-11-15T06:38:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a386f99025f13b32502fe5dedf223c20d7283826'/>
<id>urn:sha1:a386f99025f13b32502fe5dedf223c20d7283826</id>
<content type='text'>
Add br_should_route_hook_t typedef, this is the only way we can
get a clean RCU implementation for function pointer.

Move route_hook to location where it is used.

Signed-off-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Signed-off-by: Stephen Hemminger &lt;shemminger@vyatta.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>vlan: Rename VLAN_GROUP_ARRAY_LEN to VLAN_N_VID.</title>
<updated>2010-10-21T08:26:50Z</updated>
<author>
<name>Jesse Gross</name>
<email>jesse@nicira.com</email>
</author>
<published>2010-10-20T13:56:02Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b738127dfb469bb9f595cdace30e7f881e8146b2'/>
<id>urn:sha1:b738127dfb469bb9f595cdace30e7f881e8146b2</id>
<content type='text'>
VLAN_GROUP_ARRAY_LEN is simply the number of possible vlan VIDs.
Since vlan groups will soon be more of an implementation detail
for vlan devices, rename the constant to be descriptive of its
actual purpose.

Signed-off-by: Jesse Gross &lt;jesse@nicira.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
