<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/net/netfilter/ipvs, branch v3.0</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.0</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v3.0'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2011-06-13T08:41:47Z</updated>
<entry>
<title>IPVS netns exit causes crash in conntrack</title>
<updated>2011-06-13T08:41:47Z</updated>
<author>
<name>Hans Schillstrom</name>
<email>hans.schillstrom@ericsson.com</email>
</author>
<published>2011-06-13T07:06:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=8f4e0a18682d91abfad72ede3d3cb5f3ebdf54b4'/>
<id>urn:sha1:8f4e0a18682d91abfad72ede3d3cb5f3ebdf54b4</id>
<content type='text'>
Quote from Patric Mc Hardy
"This looks like nfnetlink.c excited and destroyed the nfnl socket, but
ip_vs was still holding a reference to a conntrack. When the conntrack
got destroyed it created a ctnetlink event, causing an oops in
netlink_has_listeners when trying to use the destroyed nfnetlink
socket."

If nf_conntrack_netlink is loaded before ip_vs this is not a problem.

This patch simply avoids calling ip_vs_conn_drop_conntrack()
when netns is dying as suggested by Julian.

Signed-off-by: Hans Schillstrom &lt;hans.schillstrom@ericsson.com&gt;
Signed-off-by: Simon Horman &lt;horms@verge.net.au&gt;
</content>
</entry>
<entry>
<title>ipvs: restore support for iptables SNAT</title>
<updated>2011-06-05T23:35:13Z</updated>
<author>
<name>Julian Anastasov</name>
<email>ja@ssi.bg</email>
</author>
<published>2011-06-02T00:09:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=afb523c54718da57ff661950bd3287ec9eeb66bd'/>
<id>urn:sha1:afb523c54718da57ff661950bd3287ec9eeb66bd</id>
<content type='text'>
	Fix the IPVS priority in LOCAL_IN hook,
so that SNAT target in POSTROUTING is supported for IPVS
traffic as in 2.6.36 where it worked depending on
module load order.

	Before 2.6.37 we used priority 100 in LOCAL_IN to
process remote requests. We used the same priority as
iptables SNAT and if IPVS handlers are installed before
SNAT handlers we supported SNAT in POSTROUTING for the IPVS
traffic. If SNAT is installed before IPVS, the netfilter
handlers are before IPVS and netfilter checks the NAT
table twice for the IPVS requests: once in LOCAL_IN where
IPS_SRC_NAT_DONE is set and second time in POSTROUTING
where the SNAT rules are ignored because IPS_SRC_NAT_DONE
was already set in LOCAL_IN.

	But in 2.6.37 we changed the IPVS priority for
LOCAL_IN with the goal to be unique (101) forgetting the
fact that for IPVS traffic we should not walk both
LOCAL_IN and POSTROUTING nat tables.

	So, change the priority for processing remote
IPVS requests from 101 to 99, i.e. before NAT_SRC (100)
because we prefer to support SNAT in POSTROUTING
instead of LOCAL_IN. It also moves the priority for
IPVS replies from 99 to 98. Use constants instead of
magic numbers at these places.

Signed-off-by: Julian Anastasov &lt;ja@ssi.bg&gt;
Signed-off-by: Simon Horman &lt;horms@verge.net.au&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>IPVS: bug in ip_vs_ftp, same list heaad used in all netns.</title>
<updated>2011-05-27T11:37:46Z</updated>
<author>
<name>Hans Schillstrom</name>
<email>hans.schillstrom@ericsson.com</email>
</author>
<published>2011-05-24T12:11:05Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=c74c0bfe0b61cf41a897c2444c038e0d3f600556'/>
<id>urn:sha1:c74c0bfe0b61cf41a897c2444c038e0d3f600556</id>
<content type='text'>
When ip_vs was adapted to netns the ftp application was not adapted
in a correct way.
However this is a fix to avoid kernel errors. In the long term another solution
might be chosen.  I.e the ports that the ftp appl, uses should be per netns.

Signed-off-by: Hans Schillstrom &lt;hans.schillstrom@ericsson.com&gt;
Acked-by: Julian Anastasov &lt;ja@ssi.bg&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6</title>
<updated>2011-05-17T21:33:11Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2011-05-17T21:33:11Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=9cbc94eabb0791906051bbfac024ef2c2be8e079'/>
<id>urn:sha1:9cbc94eabb0791906051bbfac024ef2c2be8e079</id>
<content type='text'>
Conflicts:
	drivers/net/vmxnet3/vmxnet3_ethtool.c
	net/core/dev.c
</content>
</entry>
<entry>
<title>IPVS: fix netns if reading ip_vs_* procfs entries</title>
<updated>2011-05-15T15:27:18Z</updated>
<author>
<name>Hans Schillstrom</name>
<email>hans.schillstrom@ericsson.com</email>
</author>
<published>2011-05-15T15:20:29Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=0f08190fe8af3cdb6ba19690eb0fa253ecef4bde'/>
<id>urn:sha1:0f08190fe8af3cdb6ba19690eb0fa253ecef4bde</id>
<content type='text'>
Without this patch every access to ip_vs in procfs will increase
the netns count i.e. an unbalanced get_net()/put_net().
(ipvsadm commands also use procfs.)
The result is you can't exit a netns if reading ip_vs_* procfs entries.

Signed-off-by: Hans Schillstrom &lt;hans.schillstrom@ericsson.com&gt;
Signed-off-by: Pablo Neira Ayuso &lt;pablo@netfilter.org&gt;
</content>
</entry>
<entry>
<title>ipvs: Remove all remaining references to rt-&gt;rt_{src,dst}</title>
<updated>2011-05-12T22:24:46Z</updated>
<author>
<name>Julian Anastasov</name>
<email>ja@ssi.bg</email>
</author>
<published>2011-05-10T12:46:05Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=c92f5ca2e5120796c56455e0a4b7cc0dfd6ceb49'/>
<id>urn:sha1:c92f5ca2e5120796c56455e0a4b7cc0dfd6ceb49</id>
<content type='text'>
Remove all remaining references to rt-&gt;rt_{src,dst}
by using dest-&gt;dst_saddr to cache saddr (used for TUN mode).
For ICMP in FORWARD hook just restrict the rt_mode for NAT
to disable LOCALNODE. All other modes do not allow
IP_VS_RT_MODE_RDR, so we should be safe with the ICMP
forwarding. Using cp-&gt;daddr as replacement for rt_dst
is safe for all modes except BYPASS, even when cp-&gt;dest is
NULL because it is cp-&gt;daddr that is used to assign cp-&gt;dest
for sync-ed connections.

Signed-off-by: Julian Anastasov &lt;ja@ssi.bg&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ipvs: Eliminate rt-&gt;rt_dst usage in __ip_vs_get_out_rt().</title>
<updated>2011-05-12T22:23:23Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2011-05-09T21:38:06Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=44e3125ccd521585e73e6dd228b283ab26993c68'/>
<id>urn:sha1:44e3125ccd521585e73e6dd228b283ab26993c68</id>
<content type='text'>
We can simply track what destination address is used based upon which
code block is taken at the top of the function.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>ipvs: Use IP_VS_RT_MODE_* instead of magic constants.</title>
<updated>2011-05-12T22:22:34Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2011-05-12T22:22:34Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=e58b34425bfcb08c6bc8c520b82c37ffcec87072'/>
<id>urn:sha1:e58b34425bfcb08c6bc8c520b82c37ffcec87072</id>
<content type='text'>
[ Add some cases I missed, from Julian Anastasov ]

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-3.6</title>
<updated>2011-05-11T18:26:58Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@davemloft.net</email>
</author>
<published>2011-05-11T18:26:15Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=3c709f8fb43e07a0403bba4a8ca7ba00ab874994'/>
<id>urn:sha1:3c709f8fb43e07a0403bba4a8ca7ba00ab874994</id>
<content type='text'>
Conflicts:
	drivers/net/benet/be_main.c
</content>
</entry>
<entry>
<title>IPVS: init and cleanup restructuring</title>
<updated>2011-05-10T07:52:47Z</updated>
<author>
<name>Hans Schillstrom</name>
<email>hans@schillstrom.com</email>
</author>
<published>2011-05-03T20:09:31Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7a4f0761fce32ff4918a7c23b08db564ad33092d'/>
<id>urn:sha1:7a4f0761fce32ff4918a7c23b08db564ad33092d</id>
<content type='text'>
DESCRIPTION
This patch tries to restore the initial init and cleanup
sequences that was before namspace patch.
Netns also requires action when net devices unregister
which has never been implemented. I.e this patch also
covers when a device moves into a network namespace,
and has to be released.

IMPLEMENTATION
The number of calls to register_pernet_device have been
reduced to one for the ip_vs.ko
Schedulers still have their own calls.

This patch adds a function __ip_vs_service_cleanup()
and an enable flag for the netfilter hooks.

The nf hooks will be enabled when the first service is loaded
and never disabled again, except when a namespace exit starts.

Signed-off-by: Hans Schillstrom &lt;hans@schillstrom.com&gt;
Acked-by: Julian Anastasov &lt;ja@ssi.bg&gt;
[horms@verge.net.au: minor edit to changelog]
Signed-off-by: Simon Horman &lt;horms@verge.net.au&gt;
</content>
</entry>
</feed>
