<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/include/net/ip6_fib.h, branch v3.6</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v3.6</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v3.6'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2012-09-18T19:57:03Z</updated>
<entry>
<title>ipv6: use net-&gt;rt_genid to check dst validity</title>
<updated>2012-09-18T19:57:03Z</updated>
<author>
<name>Nicolas Dichtel</name>
<email>nicolas.dichtel@6wind.com</email>
</author>
<published>2012-09-10T22:09:46Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=6f3118b571b8a4c06c7985dc3172c3526cb86253'/>
<id>urn:sha1:6f3118b571b8a4c06c7985dc3172c3526cb86253</id>
<content type='text'>
IPv6 dst should take care of rt_genid too. When a xfrm policy is inserted or
deleted, all dst should be invalidated.
To force the validation, dst entries should be created with -&gt;obsolete set to
DST_OBSOLETE_FORCE_CHK. This was already the case for all functions calling
ip6_dst_alloc(), except for ip6_rt_copy().

As a consequence, we can remove the specific code in inet6_connection_sock.

Signed-off-by: Nicolas Dichtel &lt;nicolas.dichtel@6wind.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ipv6: Store route neighbour in rt6_info struct.</title>
<updated>2012-07-05T09:41:58Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2012-07-03T05:43:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=97cac0821af4474ec4ba3a9e7a36b98ed9b6db88'/>
<id>urn:sha1:97cac0821af4474ec4ba3a9e7a36b98ed9b6db88</id>
<content type='text'>
This makes for a simplified conversion away from dst_get_neighbour*().

All code outside of ipv6 will use neigh lookups via dst_neigh_lookup*().

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net</title>
<updated>2012-06-16T08:23:04Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2012-06-16T08:23:04Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=aee289baaa02dd2ffa1189c1600d5572a10e0714'/>
<id>urn:sha1:aee289baaa02dd2ffa1189c1600d5572a10e0714</id>
<content type='text'>
Conflicts:
	net/ipv6/route.c

Pull in 'net' again to get the revert of Thomas's change
which introduced regressions.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Revert "ipv6: Prevent access to uninitialized fib_table_hash via /proc/net/ipv6_route"</title>
<updated>2012-06-16T08:12:19Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2012-06-16T08:12:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=e8803b6c387129059e04d9e14d49efda250a7361'/>
<id>urn:sha1:e8803b6c387129059e04d9e14d49efda250a7361</id>
<content type='text'>
This reverts commit 2a0c451ade8e1783c5d453948289e4a978d417c9.

It causes crashes, because now ip6_null_entry is used before
it is initialized.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net</title>
<updated>2012-06-15T22:51:55Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2012-06-15T22:51:55Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7e52b33bd50faa866bc3e6e97e68438bc5e52251'/>
<id>urn:sha1:7e52b33bd50faa866bc3e6e97e68438bc5e52251</id>
<content type='text'>
Conflicts:
	net/ipv6/route.c

This deals with a merge conflict between the net-next addition of the
inetpeer network namespace ops, and Thomas Graf's bug fix in
2a0c451ade8e1783c5d453948289e4a978d417c9 which makes sure we don't
register /proc/net/ipv6_route before it is actually safe to do so.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ipv6: Prevent access to uninitialized fib_table_hash via /proc/net/ipv6_route</title>
<updated>2012-06-15T22:30:15Z</updated>
<author>
<name>Thomas Graf</name>
<email>tgraf@suug.ch</email>
</author>
<published>2012-06-14T23:00:17Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=2a0c451ade8e1783c5d453948289e4a978d417c9'/>
<id>urn:sha1:2a0c451ade8e1783c5d453948289e4a978d417c9</id>
<content type='text'>
/proc/net/ipv6_route reflects the contents of fib_table_hash. The proc
handler is installed in ip6_route_net_init() whereas fib_table_hash is
allocated in fib6_net_init() _after_ the proc handler has been installed.

This opens up a short time frame to access fib_table_hash with its pants
down.

fib6_init() as a whole can't be moved to an earlier position as it also
registers the rtnetlink message handlers which should be registered at
the end. Therefore split it into fib6_init() which is run early and
fib6_init_late() to register the rtnetlink message handlers.

Signed-off-by: Thomas Graf &lt;tgraf@suug.ch&gt;
Reviewed-by: Neil Horman &lt;nhorman@tuxdriver.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>inet: Add inetpeer tree roots to the FIB tables.</title>
<updated>2012-06-11T09:09:16Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2012-06-11T07:01:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=8e77327783c753689a1a766ab9d301b81c2529f1'/>
<id>urn:sha1:8e77327783c753689a1a766ab9d301b81c2529f1</id>
<content type='text'>
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>inet: Hide route peer accesses behind helpers.</title>
<updated>2012-06-11T09:08:47Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2012-06-10T05:36:36Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=97bab73f987e2781129cd6f4b6379bf44d808cc6'/>
<id>urn:sha1:97bab73f987e2781129cd6f4b6379bf44d808cc6</id>
<content type='text'>
We encode the pointer(s) into an unsigned long with one state bit.

The state bit is used so we can store the inetpeer tree root to use
when resolving the peer later.

Later the peer roots will be per-FIB table, and this change works to
facilitate that.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ipv6: clean up rt6_clean_expires</title>
<updated>2012-04-18T02:31:59Z</updated>
<author>
<name>Jiri Bohac</name>
<email>jbohac@suse.cz</email>
</author>
<published>2012-04-16T03:35:41Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=cda31e10baf47a8a7d9360d9488fb76294be1ca3'/>
<id>urn:sha1:cda31e10baf47a8a7d9360d9488fb76294be1ca3</id>
<content type='text'>
Functionally, this change is a NOP.

Semantically, rt6_clean_expires() wants to do rt-&gt;dst.from = NULL instead of
rt-&gt;dst.expires = 0. It is clearing the RTF_EXPIRES flag, so the union is going
to be treated as a pointer (dst.from) not a long (dst.expires).

Signed-off-by: Jiri Bohac &lt;jbohac@suse.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ipv6: fix rt6_update_expires</title>
<updated>2012-04-18T02:31:51Z</updated>
<author>
<name>Jiri Bohac</name>
<email>jbohac@suse.cz</email>
</author>
<published>2012-04-16T03:34:39Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=edfb5d4687d587c9f714799c7ee27517118e12e6'/>
<id>urn:sha1:edfb5d4687d587c9f714799c7ee27517118e12e6</id>
<content type='text'>
Commit 1716a961 (ipv6: fix problem with expired dst cache) broke PMTU
discovery. rt6_update_expires() calls dst_set_expires(), which only updates
dst-&gt;expires if it has not been set previously (expires == 0) or if the new
expires is earlier than the current dst-&gt;expires.

rt6_update_expires() needs to zero rt-&gt;dst.expires, otherwise it will contain
ivalid data left over from rt-&gt;dst.from and will confuse dst_set_expires().

Signed-off-by: Jiri Bohac &lt;jbohac@suse.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
