<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/include/net/route.h, branch v2.6.27.2</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v2.6.27.2</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v2.6.27.2'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2008-07-27T16:45:34Z</updated>
<entry>
<title>missing bits of net-namespace / sysctl</title>
<updated>2008-07-27T16:45:34Z</updated>
<author>
<name>Al Viro</name>
<email>viro@ZenIV.linux.org.uk</email>
</author>
<published>2008-07-27T07:59:33Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=eeb61f719c00c626115852bbc91189dc3011a844'/>
<id>urn:sha1:eeb61f719c00c626115852bbc91189dc3011a844</id>
<content type='text'>
Piss-poor sysctl registration API strikes again, film at 11...

What we really need is _pathname_ required to be present in already
registered table, so that kernel could warn about bad order.  That's the
next target for sysctl stuff (and generally saner and more explicit
order of initialization of ipv[46] internals wouldn't hurt either).

For the time being, here are full fixups required by ..._rotable()
stuff; we make per-net sysctl sets descendents of "ro" one and make sure
that sufficient skeleton is there before we start registering per-net
sysctls.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>netns: add namespace parameter to rt_cache_flush</title>
<updated>2008-07-06T02:00:44Z</updated>
<author>
<name>Denis V. Lunev</name>
<email>den@openvz.org</email>
</author>
<published>2008-07-06T02:00:44Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=76e6ebfb40a2455c18234dcb0f9df37533215461'/>
<id>urn:sha1:76e6ebfb40a2455c18234dcb0f9df37533215461</id>
<content type='text'>
Signed-off-by: Denis V. Lunev &lt;den@openvz.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ipv4: Update MTU to all related cache entries in ip_rt_frag_needed()</title>
<updated>2008-04-29T10:32:25Z</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2008-04-29T10:32:25Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=0010e46577a27c1d915034637f6c2fa57a9a091c'/>
<id>urn:sha1:0010e46577a27c1d915034637f6c2fa57a9a091c</id>
<content type='text'>
Add struct net_device parameter to ip_rt_frag_needed() and update MTU to
cache entries where ifindex is specified. This is similar to what is
already done in ip_rt_redirect().

Signed-off-by: Timo Teras &lt;timo.teras@iki.fi&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NET] NETNS: Omit sock-&gt;sk_net without CONFIG_NET_NS.</title>
<updated>2008-03-25T19:39:55Z</updated>
<author>
<name>YOSHIFUJI Hideaki</name>
<email>yoshfuji@linux-ipv6.org</email>
</author>
<published>2008-03-25T17:26:21Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=3b1e0a655f8eba44ab1ee2a1068d169ccfb853b9'/>
<id>urn:sha1:3b1e0a655f8eba44ab1ee2a1068d169ccfb853b9</id>
<content type='text'>
Introduce per-sock inlines: sock_net(), sock_net_set()
and per-inet_timewait_sock inlines: twsk_net(), twsk_net_set().
Without CONFIG_NET_NS, no namespace other than &amp;init_net exists.
Let's explicitly define them to help compiler optimizations.

Signed-off-by: YOSHIFUJI Hideaki &lt;yoshfuji@linux-ipv6.org&gt;
</content>
</entry>
<entry>
<title>[NET]: include/net/route.h - remove duplicate include</title>
<updated>2008-03-24T05:03:56Z</updated>
<author>
<name>Joe Perches</name>
<email>joe@perches.com</email>
</author>
<published>2008-03-24T05:03:56Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=7d164be8aa4392fe55474f4608547f2097e07c41'/>
<id>urn:sha1:7d164be8aa4392fe55474f4608547f2097e07c41</id>
<content type='text'>
Signed-off-by: Joe Perches &lt;joe@perches.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[IPV4] route cache: Introduce rt_genid for smooth cache invalidation</title>
<updated>2008-02-01T03:28:27Z</updated>
<author>
<name>Eric Dumazet</name>
<email>dada1@cosmosbay.com</email>
</author>
<published>2008-02-01T01:05:09Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=29e75252da20f3ab9e132c68c9aed156b87beae6'/>
<id>urn:sha1:29e75252da20f3ab9e132c68c9aed156b87beae6</id>
<content type='text'>
Current ip route cache implementation is not suited to large caches.

We can consume a lot of CPU when cache must be invalidated, since we
currently need to evict all cache entries, and this eviction is
sometimes asynchronous. min_delay &amp; max_delay can somewhat control this
asynchronism behavior, but whole thing is a kludge, regularly triggering
infamous soft lockup messages. When entries are still in use, this also
consumes a lot of ram, filling dst_garbage.list.

A better scheme is to use a generation identifier on each entry,
so that cache invalidation can be performed by changing the table
identifier, without having to scan all entries.
No more delayed flushing, no more stalling when secret_interval expires.

Invalidated entries will then be freed at GC time (controled by
ip_rt_gc_timeout or stress), or when an invalidated entry is found
in a chain when an insert is done.
Thus we keep a normal equilibrium.

This patch :
- renames rt_hash_rnd to rt_genid (and makes it an atomic_t)
- Adds a new rt_genid field to 'struct rtable' (filling a hole on 64bit)
- Checks entry-&gt;rt_genid at appropriate places :
</content>
</entry>
<entry>
<title>[NET]: Introducing socket mark socket option.</title>
<updated>2008-02-01T03:27:19Z</updated>
<author>
<name>Laszlo Attila Toth</name>
<email>panther@balabit.hu</email>
</author>
<published>2008-01-31T03:08:16Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=4a19ec5800fc3bb64e2d87c4d9fdd9e636086fe0'/>
<id>urn:sha1:4a19ec5800fc3bb64e2d87c4d9fdd9e636086fe0</id>
<content type='text'>
A userspace program may wish to set the mark for each packets its send
without using the netfilter MARK target. Changing the mark can be used
for mark based routing without netfilter or for packet filtering.

It requires CAP_NET_ADMIN capability.

Signed-off-by: Laszlo Attila Toth &lt;panther@balabit.hu&gt;
Acked-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NETNS]: Routing cache virtualization.</title>
<updated>2008-01-28T23:11:13Z</updated>
<author>
<name>Denis V. Lunev</name>
<email>den@openvz.org</email>
</author>
<published>2008-01-23T07:50:25Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=b5921910a1de4ba82add59154976c3dc7352c8c2'/>
<id>urn:sha1:b5921910a1de4ba82add59154976c3dc7352c8c2</id>
<content type='text'>
Basically, this piece looks relatively easy. Namespace is already
available on the dst entry via device and the device is safe to
dereferrence. Compare it with one of a searcher and skip entry if
appropriate.

The only exception is ip_rt_frag_needed. So, add namespace parameter to it.

Signed-off-by: Denis V. Lunev &lt;den@openvz.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NETNS]: Correct namespace for connect-time routing.</title>
<updated>2008-01-28T23:11:12Z</updated>
<author>
<name>Denis V. Lunev</name>
<email>den@openvz.org</email>
</author>
<published>2008-01-23T07:49:35Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=eee80592c3c1f7381c04913d9d3eb6e3c3c87628'/>
<id>urn:sha1:eee80592c3c1f7381c04913d9d3eb6e3c3c87628</id>
<content type='text'>
ip_route_connect and ip_route_newports are a part of routing API
presented to the socket layer. The namespace is available inside them
through a socket.

Signed-off-by: Denis V. Lunev &lt;den@openvz.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[NETNS]: Add namespace parameter to ip_route_output_key.</title>
<updated>2008-01-28T23:11:07Z</updated>
<author>
<name>Denis V. Lunev</name>
<email>den@openvz.org</email>
</author>
<published>2008-01-23T06:07:34Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=f206351a50ea86250fabea96b9af8d8f8fc02603'/>
<id>urn:sha1:f206351a50ea86250fabea96b9af8d8f8fc02603</id>
<content type='text'>
Needed to propagate it down to the ip_route_output_flow.

Signed-off-by: Denis V. Lunev &lt;den@openvz.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
