<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/net, branch v2.6.19.4</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/net?h=v2.6.19.4</id>
<link rel='self' href='https://git.amat.us/linux/atom/net?h=v2.6.19.4'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2007-02-05T16:31:45Z</updated>
<entry>
<title>[PATCH] SUNRPC: Give cloned RPC clients their own rpc_pipefs directory</title>
<updated>2007-02-05T16:31:45Z</updated>
<author>
<name>Trond Myklebust</name>
<email>Trond.Myklebust@netapp.com</email>
</author>
<published>2007-01-25T04:13:46Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=16a2980e7a2d9afe5b6c68c783d025036edcf70e'/>
<id>urn:sha1:16a2980e7a2d9afe5b6c68c783d025036edcf70e</id>
<content type='text'>
This patch fixes a regression in 2.6.19 in which the use of multiple
krb5 mounts against the same NFS server may result in an Oops on
unmount. The Oops is due to the fact that multiple NFS krb5 clients may
end up inadvertently sharing the same rpc_pipefs upcall pipe. The first
client to 'umount' will unlink that shared pipe, causing an Oops.

The solution is to give each client their own upcall pipe. This fix has
been in mainline since 2.6.20-rc1.

Signed-off-by: Trond Myklebust &lt;Trond.Myklebust@netapp.com&gt;
[chrisw: backport to 2.6.19.2]
Signed-off-by: Chris Wright &lt;chrisw@sous-sol.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] NETFILTER: xt_connbytes: fix division by zero</title>
<updated>2007-02-05T16:31:45Z</updated>
<author>
<name>Patrick McHardy</name>
<email>kaber@trash.net</email>
</author>
<published>2007-01-31T00:27:29Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=81a86f15d6f696efcb531620c936d1e7edb96f17'/>
<id>urn:sha1:81a86f15d6f696efcb531620c936d1e7edb96f17</id>
<content type='text'>
When the packet counter of a connection is zero a division by zero
occurs in div64_64(). Fix that by using zero as average value, which
is correct as long as the packet counter didn't overflow, at which
point we have lost anyway.

Additionally we're probably going to go back to 64 bit counters
in 2.6.21.

Based on patch from Jonas Berlin &lt;xkr47@outerspace.dyndns.org&gt;,
with suggestions from KOVACS Krisztian &lt;hidden@balabit.hu&gt;.

Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: Chris Wright &lt;chrisw@sous-sol.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] TCP: skb is unexpectedly freed.</title>
<updated>2007-02-05T16:31:45Z</updated>
<author>
<name>Masayuki Nakagawa</name>
<email>nakagawa.msy@ncos.nec.co.jp</email>
</author>
<published>2007-02-02T21:17:13Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=6e3e53bbff845b9c8d77967bf75bcd5325782199'/>
<id>urn:sha1:6e3e53bbff845b9c8d77967bf75bcd5325782199</id>
<content type='text'>
I encountered a kernel panic with my test program, which is a very
simple IPv6 client-server program.

The server side sets IPV6_RECVPKTINFO on a listening socket, and the
client side just sends a message to the server.  Then the kernel panic
occurs on the server.  (If you need the test program, please let me
know. I can provide it.)

This problem happens because a skb is forcibly freed in
tcp_rcv_state_process().

When a socket in listening state(TCP_LISTEN) receives a syn packet,
then tcp_v6_conn_request() will be called from
tcp_rcv_state_process().  If the tcp_v6_conn_request() successfully
returns, the skb would be discarded by __kfree_skb().

However, in case of a listening socket which was already set
IPV6_RECVPKTINFO, an address of the skb will be stored in
treq-&gt;pktopts and a ref count of the skb will be incremented in
tcp_v6_conn_request().  But, even if the skb is still in use, the skb
will be freed.  Then someone still using the freed skb will cause the
kernel panic.

I suggest to use kfree_skb() instead of __kfree_skb().

Signed-off-by: Masayuki Nakagawa &lt;nakagawa.msy@ncos.nec.co.jp&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Chris Wright &lt;chrisw@sous-sol.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] TCP: Fix sorting of SACK blocks.</title>
<updated>2007-02-05T16:31:45Z</updated>
<author>
<name>Baruch Even</name>
<email>baruch@ev-en.org</email>
</author>
<published>2007-02-02T21:16:09Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=39460cfb25adbafd7141a79b8f51769daacaa0d7'/>
<id>urn:sha1:39460cfb25adbafd7141a79b8f51769daacaa0d7</id>
<content type='text'>
The sorting of SACK blocks actually munges them rather than sort,
causing the TCP stack to ignore some SACK information and breaking the
assumption of ordered SACK blocks after sorting.

The sort takes the data from a second buffer which isn't moved causing
subsequent data moves to occur from the wrong location. The fix is to
use a temporary buffer as a normal sort does.

Signed-off-By: Baruch Even &lt;baruch@ev-en.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Chris Wright &lt;chrisw@sous-sol.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] TCP: rare bad TCP checksum with 2.6.19</title>
<updated>2007-02-05T16:31:45Z</updated>
<author>
<name>Jarek Poplawski</name>
<email>jarkao2@o2.pl</email>
</author>
<published>2007-02-02T21:15:00Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=26cc0cab4c76d353c8f72fe3fe3e822d738f5c13'/>
<id>urn:sha1:26cc0cab4c76d353c8f72fe3fe3e822d738f5c13</id>
<content type='text'>
The patch "Replace CHECKSUM_HW by CHECKSUM_PARTIAL/CHECKSUM_COMPLETE"
changed to unconditional copying of ip_summed field from collapsed
skb. This patch reverts this change.

The majority of substantial work including heavy testing
and diagnosing by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
Possible reasons pointed by: Herbert Xu and Patrick McHardy.

Signed-off-by: Jarek Poplawski &lt;jarkao2@o2.pl&gt;
Acked-by: Herbert Xu &lt;herbert@gondor.apana.org.au&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Chris Wright &lt;chrisw@sous-sol.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] AF_PACKET: Check device down state before hard header callbacks.</title>
<updated>2007-02-05T16:31:45Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@sunset.davemloft.net</email>
</author>
<published>2007-02-02T21:01:28Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=2a5332990f1f6f76a03396db7fb894bcd55c4ffe'/>
<id>urn:sha1:2a5332990f1f6f76a03396db7fb894bcd55c4ffe</id>
<content type='text'>
If the device is down, invoking the device hard header callbacks
is not legal, so check it early.

Based upon a shaper OOPS report from Frederik Deweerdt.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Chris Wright &lt;chrisw@sous-sol.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] AF_PACKET: Fix BPF handling.</title>
<updated>2007-02-05T16:31:45Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@sunset.davemloft.net</email>
</author>
<published>2007-02-02T21:06:03Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=6d2d108d66d02bc617e3cab2419fecf0e43afae6'/>
<id>urn:sha1:6d2d108d66d02bc617e3cab2419fecf0e43afae6</id>
<content type='text'>
This fixes a bug introduced by:

commit fda9ef5d679b07c9d9097aaf6ef7f069d794a8f9
Author: Dmitry Mishin &lt;dim@openvz.org&gt;
Date:   Thu Aug 31 15:28:39 2006 -0700

    [NET]: Fix sk-&gt;sk_filter field access

sk_run_filter() returns either 0 or an unsigned 32-bit
length which says how much of the packet to retain.
If that 32-bit unsigned integer is larger than the packet,
this is fine we just leave the packet unchanged.

The above commit caused all filter return values which
were negative when interpreted as a signed integer to
indicate a packet drop, which is wrong.

Based upon a report and initial patch by Raivis Bucis.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Chris Wright &lt;chrisw@sous-sol.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] IPV4: Fix single-entry /proc/net/fib_trie output.</title>
<updated>2007-02-05T16:31:44Z</updated>
<author>
<name>Robert Olsson</name>
<email>robert.olsson@its.uu.se</email>
</author>
<published>2007-02-02T20:58:58Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=05267c7fe2e451b3a18cebb506c4adde5edcf275'/>
<id>urn:sha1:05267c7fe2e451b3a18cebb506c4adde5edcf275</id>
<content type='text'>
When main table is just a single leaf this gets printed as belonging to the
local table in /proc/net/fib_trie. A fix is below.

Signed-off-by: Robert Olsson &lt;robert.olsson@its.uu.se&gt;
Acked-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Chris Wright &lt;chrisw@sous-sol.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] IPV4: Fix the fib trie iterator to work with a single entry routing tables</title>
<updated>2007-02-05T16:31:44Z</updated>
<author>
<name>Eric W. Biederman</name>
<email>ebiederm@xmission.com</email>
</author>
<published>2007-02-02T20:57:16Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=2990b4f42b1763d64038d9aacc0d58cb512896a8'/>
<id>urn:sha1:2990b4f42b1763d64038d9aacc0d58cb512896a8</id>
<content type='text'>
In a kernel with trie routing enabled I had a simple routing setup
with only a single route to the outside world and no default
route. "ip route table list main" showed my the route just fine but
/proc/net/route was an empty file.  What was going on?

Thinking it was a bug in something I did and I looked deeper.  Eventually
I setup a second route and everything looked correct, huh?  Finally I
realized that the it was just the iterator pair in fib_trie_get_first,
fib_trie_get_next just could not handle a routing table with a single entry.

So to save myself and others further confusion, here is a simple fix for
the fib proc iterator so it works even when there is only a single route
in a routing table.

Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Signed-off-by: Robert Olsson &lt;robert.olsson@its.uu.se&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Chris Wright &lt;chrisw@sous-sol.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] DECNET: Handle a failure in neigh_parms_alloc (take 2)</title>
<updated>2007-02-05T16:31:44Z</updated>
<author>
<name>Eric W. Biederman</name>
<email>ebiederm@xmission.com</email>
</author>
<published>2007-02-02T20:50:23Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=50d7d7e3c0ecbb01fc018434a23ec8b260c68473'/>
<id>urn:sha1:50d7d7e3c0ecbb01fc018434a23ec8b260c68473</id>
<content type='text'>
While enhancing the neighbour code to handle multiple network
namespaces I noticed that decnet is assuming neigh_parms_alloc
will allways succeed, which is clearly wrong.  So handle the
failure.

Signed-off-by: Eric W. Biederman &lt;ebiederm@xmission.com&gt;
Acked-by: Steven Whitehouse &lt;steve@chygwyn.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Chris Wright &lt;chrisw@sous-sol.org&gt;
</content>
</entry>
</feed>
