<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/net, branch v3.2.9-rt16</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>ping-sysrq.patch</title>
<updated>2012-03-06T16:18:00+00:00</updated>
<author>
<name>Carsten Emde</name>
<email>C.Emde@osadl.org</email>
</author>
<published>2011-07-19T12:51:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=075903e3a339e53ab46d0a44d8e625b4b3454900'/>
<id>075903e3a339e53ab46d0a44d8e625b4b3454900</id>
<content type='text'>
There are (probably rare) situations when a system crashed and the system
console becomes unresponsive but the network icmp layer still is alive.
Wouldn't it be wonderful, if we then could submit a sysreq command via ping?

This patch provides this facility. Please consult the updated documentation
Documentation/sysrq.txt for details.

Signed-off-by: Carsten Emde &lt;C.Emde@osadl.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There are (probably rare) situations when a system crashed and the system
console becomes unresponsive but the network icmp layer still is alive.
Wouldn't it be wonderful, if we then could submit a sysreq command via ping?

This patch provides this facility. Please consult the updated documentation
Documentation/sysrq.txt for details.

Signed-off-by: Carsten Emde &lt;C.Emde@osadl.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>net: Avoid livelock in net_tx_action() on RT</title>
<updated>2012-03-06T16:18:00+00:00</updated>
<author>
<name>Steven Rostedt</name>
<email>srostedt@redhat.com</email>
</author>
<published>2011-10-06T14:48:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d8655636a5091c927a493dd9ba1ca3e890bec4ba'/>
<id>d8655636a5091c927a493dd9ba1ca3e890bec4ba</id>
<content type='text'>
qdisc_lock is taken w/o disabling interrupts or bottom halfs. So code
holding a qdisc_lock() can be interrupted and softirqs can run on the
return of interrupt in !RT.

The spin_trylock() in net_tx_action() makes sure, that the softirq
does not deadlock. When the lock can't be acquired q is requeued and
the NET_TX softirq is raised. That causes the softirq to run over and
over.

That works in mainline as do_softirq() has a retry loop limit and
leaves the softirq processing in the interrupt return path and
schedules ksoftirqd. The task which holds qdisc_lock cannot be
preempted, so the lock is released and either ksoftirqd or the next
softirq in the return from interrupt path can proceed. Though it's a
bit strange to actually run MAX_SOFTIRQ_RESTART (10) loops before it
decides to bail out even if it's clear in the first iteration :)

On RT all softirq processing is done in a FIFO thread and we don't
have a loop limit, so ksoftirqd preempts the lock holder forever and
unqueues and requeues until the reset button is hit.

Due to the forced threading of ksoftirqd on RT we actually cannot
deadlock on qdisc_lock because it's a "sleeping lock". So it's safe to
replace the spin_trylock() with a spin_lock(). When contended,
ksoftirqd is scheduled out and the lock holder can proceed.

[ tglx: Massaged changelog and code comments ]

Solved-by: Thomas Gleixner &lt;tglx@linuxtronix.de&gt;
Signed-off-by: Steven Rostedt &lt;rostedt@goodmis.org&gt;
Tested-by: Carsten Emde &lt;cbe@osadl.org&gt;
Cc: Clark Williams &lt;williams@redhat.com&gt;
Cc: John Kacur &lt;jkacur@redhat.com&gt;
Cc: Luis Claudio R. Goncalves &lt;lclaudio@redhat.com&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
qdisc_lock is taken w/o disabling interrupts or bottom halfs. So code
holding a qdisc_lock() can be interrupted and softirqs can run on the
return of interrupt in !RT.

The spin_trylock() in net_tx_action() makes sure, that the softirq
does not deadlock. When the lock can't be acquired q is requeued and
the NET_TX softirq is raised. That causes the softirq to run over and
over.

That works in mainline as do_softirq() has a retry loop limit and
leaves the softirq processing in the interrupt return path and
schedules ksoftirqd. The task which holds qdisc_lock cannot be
preempted, so the lock is released and either ksoftirqd or the next
softirq in the return from interrupt path can proceed. Though it's a
bit strange to actually run MAX_SOFTIRQ_RESTART (10) loops before it
decides to bail out even if it's clear in the first iteration :)

On RT all softirq processing is done in a FIFO thread and we don't
have a loop limit, so ksoftirqd preempts the lock holder forever and
unqueues and requeues until the reset button is hit.

Due to the forced threading of ksoftirqd on RT we actually cannot
deadlock on qdisc_lock because it's a "sleeping lock". So it's safe to
replace the spin_trylock() with a spin_lock(). When contended,
ksoftirqd is scheduled out and the lock holder can proceed.

[ tglx: Massaged changelog and code comments ]

Solved-by: Thomas Gleixner &lt;tglx@linuxtronix.de&gt;
Signed-off-by: Steven Rostedt &lt;rostedt@goodmis.org&gt;
Tested-by: Carsten Emde &lt;cbe@osadl.org&gt;
Cc: Clark Williams &lt;williams@redhat.com&gt;
Cc: John Kacur &lt;jkacur@redhat.com&gt;
Cc: Luis Claudio R. Goncalves &lt;lclaudio@redhat.com&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>skbufhead-raw-lock.patch</title>
<updated>2012-03-06T16:17:59+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-07-12T13:38:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=747da24b02a5d065bc5bd4a93b2643f45f77e443'/>
<id>747da24b02a5d065bc5bd4a93b2643f45f77e443</id>
<content type='text'>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net-netif_rx_ni-migrate-disable.patch</title>
<updated>2012-03-06T16:17:52+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-07-17T14:29:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=f596f5356872a7f17cff039d27c0d1212c112a94'/>
<id>f596f5356872a7f17cff039d27c0d1212c112a94</id>
<content type='text'>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net-ipv4-route-use-locks-on-up-rt.patch</title>
<updated>2012-03-06T16:17:45+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-07-15T14:24:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=cbfa1b33ec0e3caee20fffc57e7e69a756765288'/>
<id>cbfa1b33ec0e3caee20fffc57e7e69a756765288</id>
<content type='text'>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net-wireless-warn-nort.patch</title>
<updated>2012-03-06T16:17:40+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-07-21T19:05:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=343bec21140a5080368dcdca24bbd73e42dd6e70'/>
<id>343bec21140a5080368dcdca24bbd73e42dd6e70</id>
<content type='text'>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>softirq-thread-do-softirq.patch</title>
<updated>2012-03-06T16:17:35+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-06-28T13:44:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=5d0639d4bb1636871dd5850b6e99705cf5fcb5cf'/>
<id>5d0639d4bb1636871dd5850b6e99705cf5fcb5cf</id>
<content type='text'>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net-flip-lock-dep-thingy.patch</title>
<updated>2012-03-06T16:17:35+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-06-28T08:59:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=9efa17aa86df9d3e0095804cf8614f2a61b4c238'/>
<id>9efa17aa86df9d3e0095804cf8614f2a61b4c238</id>
<content type='text'>
=======================================================
[ INFO: possible circular locking dependency detected ]
3.0.0-rc3+ #26
-------------------------------------------------------
ip/1104 is trying to acquire lock:
 (local_softirq_lock){+.+...}, at: [&lt;ffffffff81056d12&gt;] __local_lock+0x25/0x68

but task is already holding lock:
 (sk_lock-AF_INET){+.+...}, at: [&lt;ffffffff81433308&gt;] lock_sock+0x10/0x12

which lock already depends on the new lock.


the existing dependency chain (in reverse order) is:

-&gt; #1 (sk_lock-AF_INET){+.+...}:
       [&lt;ffffffff810836e5&gt;] lock_acquire+0x103/0x12e
       [&lt;ffffffff813e2781&gt;] lock_sock_nested+0x82/0x92
       [&lt;ffffffff81433308&gt;] lock_sock+0x10/0x12
       [&lt;ffffffff81433afa&gt;] tcp_close+0x1b/0x355
       [&lt;ffffffff81453c99&gt;] inet_release+0xc3/0xcd
       [&lt;ffffffff813dff3f&gt;] sock_release+0x1f/0x74
       [&lt;ffffffff813dffbb&gt;] sock_close+0x27/0x2b
       [&lt;ffffffff81129c63&gt;] fput+0x11d/0x1e3
       [&lt;ffffffff81126577&gt;] filp_close+0x70/0x7b
       [&lt;ffffffff8112667a&gt;] sys_close+0xf8/0x13d
       [&lt;ffffffff814ae882&gt;] system_call_fastpath+0x16/0x1b

-&gt; #0 (local_softirq_lock){+.+...}:
       [&lt;ffffffff81082ecc&gt;] __lock_acquire+0xacc/0xdc8
       [&lt;ffffffff810836e5&gt;] lock_acquire+0x103/0x12e
       [&lt;ffffffff814a7e40&gt;] _raw_spin_lock+0x3b/0x4a
       [&lt;ffffffff81056d12&gt;] __local_lock+0x25/0x68
       [&lt;ffffffff81056d8b&gt;] local_bh_disable+0x36/0x3b
       [&lt;ffffffff814a7fc4&gt;] _raw_write_lock_bh+0x16/0x4f
       [&lt;ffffffff81433c38&gt;] tcp_close+0x159/0x355
       [&lt;ffffffff81453c99&gt;] inet_release+0xc3/0xcd
       [&lt;ffffffff813dff3f&gt;] sock_release+0x1f/0x74
       [&lt;ffffffff813dffbb&gt;] sock_close+0x27/0x2b
       [&lt;ffffffff81129c63&gt;] fput+0x11d/0x1e3
       [&lt;ffffffff81126577&gt;] filp_close+0x70/0x7b
       [&lt;ffffffff8112667a&gt;] sys_close+0xf8/0x13d
       [&lt;ffffffff814ae882&gt;] system_call_fastpath+0x16/0x1b

other info that might help us debug this:

 Possible unsafe locking scenario:

       CPU0                    CPU1
       ----                    ----
  lock(sk_lock-AF_INET);
                               lock(local_softirq_lock);
                               lock(sk_lock-AF_INET);
  lock(local_softirq_lock);

 *** DEADLOCK ***

1 lock held by ip/1104:
 #0:  (sk_lock-AF_INET){+.+...}, at: [&lt;ffffffff81433308&gt;] lock_sock+0x10/0x12

stack backtrace:
Pid: 1104, comm: ip Not tainted 3.0.0-rc3+ #26
Call Trace:
 [&lt;ffffffff81081649&gt;] print_circular_bug+0x1f8/0x209
 [&lt;ffffffff81082ecc&gt;] __lock_acquire+0xacc/0xdc8
 [&lt;ffffffff81056d12&gt;] ? __local_lock+0x25/0x68
 [&lt;ffffffff810836e5&gt;] lock_acquire+0x103/0x12e
 [&lt;ffffffff81056d12&gt;] ? __local_lock+0x25/0x68
 [&lt;ffffffff81046c75&gt;] ? get_parent_ip+0x11/0x41
 [&lt;ffffffff814a7e40&gt;] _raw_spin_lock+0x3b/0x4a
 [&lt;ffffffff81056d12&gt;] ? __local_lock+0x25/0x68
 [&lt;ffffffff81046c8c&gt;] ? get_parent_ip+0x28/0x41
 [&lt;ffffffff81056d12&gt;] __local_lock+0x25/0x68
 [&lt;ffffffff81056d8b&gt;] local_bh_disable+0x36/0x3b
 [&lt;ffffffff81433308&gt;] ? lock_sock+0x10/0x12
 [&lt;ffffffff814a7fc4&gt;] _raw_write_lock_bh+0x16/0x4f
 [&lt;ffffffff81433c38&gt;] tcp_close+0x159/0x355
 [&lt;ffffffff81453c99&gt;] inet_release+0xc3/0xcd
 [&lt;ffffffff813dff3f&gt;] sock_release+0x1f/0x74
 [&lt;ffffffff813dffbb&gt;] sock_close+0x27/0x2b
 [&lt;ffffffff81129c63&gt;] fput+0x11d/0x1e3
 [&lt;ffffffff81126577&gt;] filp_close+0x70/0x7b
 [&lt;ffffffff8112667a&gt;] sys_close+0xf8/0x13d
 [&lt;ffffffff814ae882&gt;] system_call_fastpath+0x16/0x1b


Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
=======================================================
[ INFO: possible circular locking dependency detected ]
3.0.0-rc3+ #26
-------------------------------------------------------
ip/1104 is trying to acquire lock:
 (local_softirq_lock){+.+...}, at: [&lt;ffffffff81056d12&gt;] __local_lock+0x25/0x68

but task is already holding lock:
 (sk_lock-AF_INET){+.+...}, at: [&lt;ffffffff81433308&gt;] lock_sock+0x10/0x12

which lock already depends on the new lock.


the existing dependency chain (in reverse order) is:

-&gt; #1 (sk_lock-AF_INET){+.+...}:
       [&lt;ffffffff810836e5&gt;] lock_acquire+0x103/0x12e
       [&lt;ffffffff813e2781&gt;] lock_sock_nested+0x82/0x92
       [&lt;ffffffff81433308&gt;] lock_sock+0x10/0x12
       [&lt;ffffffff81433afa&gt;] tcp_close+0x1b/0x355
       [&lt;ffffffff81453c99&gt;] inet_release+0xc3/0xcd
       [&lt;ffffffff813dff3f&gt;] sock_release+0x1f/0x74
       [&lt;ffffffff813dffbb&gt;] sock_close+0x27/0x2b
       [&lt;ffffffff81129c63&gt;] fput+0x11d/0x1e3
       [&lt;ffffffff81126577&gt;] filp_close+0x70/0x7b
       [&lt;ffffffff8112667a&gt;] sys_close+0xf8/0x13d
       [&lt;ffffffff814ae882&gt;] system_call_fastpath+0x16/0x1b

-&gt; #0 (local_softirq_lock){+.+...}:
       [&lt;ffffffff81082ecc&gt;] __lock_acquire+0xacc/0xdc8
       [&lt;ffffffff810836e5&gt;] lock_acquire+0x103/0x12e
       [&lt;ffffffff814a7e40&gt;] _raw_spin_lock+0x3b/0x4a
       [&lt;ffffffff81056d12&gt;] __local_lock+0x25/0x68
       [&lt;ffffffff81056d8b&gt;] local_bh_disable+0x36/0x3b
       [&lt;ffffffff814a7fc4&gt;] _raw_write_lock_bh+0x16/0x4f
       [&lt;ffffffff81433c38&gt;] tcp_close+0x159/0x355
       [&lt;ffffffff81453c99&gt;] inet_release+0xc3/0xcd
       [&lt;ffffffff813dff3f&gt;] sock_release+0x1f/0x74
       [&lt;ffffffff813dffbb&gt;] sock_close+0x27/0x2b
       [&lt;ffffffff81129c63&gt;] fput+0x11d/0x1e3
       [&lt;ffffffff81126577&gt;] filp_close+0x70/0x7b
       [&lt;ffffffff8112667a&gt;] sys_close+0xf8/0x13d
       [&lt;ffffffff814ae882&gt;] system_call_fastpath+0x16/0x1b

other info that might help us debug this:

 Possible unsafe locking scenario:

       CPU0                    CPU1
       ----                    ----
  lock(sk_lock-AF_INET);
                               lock(local_softirq_lock);
                               lock(sk_lock-AF_INET);
  lock(local_softirq_lock);

 *** DEADLOCK ***

1 lock held by ip/1104:
 #0:  (sk_lock-AF_INET){+.+...}, at: [&lt;ffffffff81433308&gt;] lock_sock+0x10/0x12

stack backtrace:
Pid: 1104, comm: ip Not tainted 3.0.0-rc3+ #26
Call Trace:
 [&lt;ffffffff81081649&gt;] print_circular_bug+0x1f8/0x209
 [&lt;ffffffff81082ecc&gt;] __lock_acquire+0xacc/0xdc8
 [&lt;ffffffff81056d12&gt;] ? __local_lock+0x25/0x68
 [&lt;ffffffff810836e5&gt;] lock_acquire+0x103/0x12e
 [&lt;ffffffff81056d12&gt;] ? __local_lock+0x25/0x68
 [&lt;ffffffff81046c75&gt;] ? get_parent_ip+0x11/0x41
 [&lt;ffffffff814a7e40&gt;] _raw_spin_lock+0x3b/0x4a
 [&lt;ffffffff81056d12&gt;] ? __local_lock+0x25/0x68
 [&lt;ffffffff81046c8c&gt;] ? get_parent_ip+0x28/0x41
 [&lt;ffffffff81056d12&gt;] __local_lock+0x25/0x68
 [&lt;ffffffff81056d8b&gt;] local_bh_disable+0x36/0x3b
 [&lt;ffffffff81433308&gt;] ? lock_sock+0x10/0x12
 [&lt;ffffffff814a7fc4&gt;] _raw_write_lock_bh+0x16/0x4f
 [&lt;ffffffff81433c38&gt;] tcp_close+0x159/0x355
 [&lt;ffffffff81453c99&gt;] inet_release+0xc3/0xcd
 [&lt;ffffffff813dff3f&gt;] sock_release+0x1f/0x74
 [&lt;ffffffff813dffbb&gt;] sock_close+0x27/0x2b
 [&lt;ffffffff81129c63&gt;] fput+0x11d/0x1e3
 [&lt;ffffffff81126577&gt;] filp_close+0x70/0x7b
 [&lt;ffffffff8112667a&gt;] sys_close+0xf8/0x13d
 [&lt;ffffffff814ae882&gt;] system_call_fastpath+0x16/0x1b


Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fs: dentry use seqlock</title>
<updated>2012-03-06T16:17:29+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2012-02-27T17:08:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=e84d65e9a9f65dac1d6ec54b1851074be47285a8'/>
<id>e84d65e9a9f65dac1d6ec54b1851074be47285a8</id>
<content type='text'>
Replace the open coded seqlock with a real seqlock, so RT can handle
it.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: stable-rt@vger.kernel.org

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Replace the open coded seqlock with a real seqlock, so RT can handle
it.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: stable-rt@vger.kernel.org

</pre>
</div>
</content>
</entry>
<entry>
<title>ipvs: fix matching of fwmark templates during scheduling</title>
<updated>2012-03-01T00:31:19+00:00</updated>
<author>
<name>Simon Horman</name>
<email>horms@verge.net.au</email>
</author>
<published>2012-01-27T01:45:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=9b83c78d644ae794f0ec3cf7a4722c613b947913'/>
<id>9b83c78d644ae794f0ec3cf7a4722c613b947913</id>
<content type='text'>
commit e0aac52e17a3db68fe2ceae281780a70fc69957f upstream.

	Commit f11017ec2d1859c661f4e2b12c4a8d250e1f47cf (2.6.37)
moved the fwmark variable in subcontext that is invalidated before
reaching the ip_vs_ct_in_get call. As vaddr is provided as pointer
in the param structure make sure the fwmark variable is in
same context. As the fwmark templates can not be matched,
more and more template connections are created and the
controlled connections can not go to single real server.

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;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit e0aac52e17a3db68fe2ceae281780a70fc69957f upstream.

	Commit f11017ec2d1859c661f4e2b12c4a8d250e1f47cf (2.6.37)
moved the fwmark variable in subcontext that is invalidated before
reaching the ip_vs_ct_in_get call. As vaddr is provided as pointer
in the param structure make sure the fwmark variable is in
same context. As the fwmark templates can not be matched,
more and more template connections are created and the
controlled connections can not go to single real server.

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;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
</feed>
