<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/ipv4/tcp.c, branch linux-2.6.23.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.23.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.23.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2007-08-03T02:42:28Z</updated>
<entry>
<title>[TCP]: Invoke tcp_sendmsg() directly, do not use inet_sendmsg().</title>
<updated>2007-08-03T02:42:28Z</updated>
<author>
<name>David S. Miller</name>
</author>
<published>2007-08-03T02:23:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3516ffb0fef710749daf288c0fe146503e0cf9d4'/>
<id>urn:sha1:3516ffb0fef710749daf288c0fe146503e0cf9d4</id>
<content type='text'>
As discovered by Evegniy Polyakov, if we try to sendmsg after
a connection reset, we can do incredibly stupid things.

The core issue is that inet_sendmsg() tries to autobind the
socket, but we should never do that for TCP.  Instead we should
just go straight into TCP's sendmsg() code which will do all
of the necessary state and pending socket error checks.

TCP's sendpage already directly vectors to tcp_sendpage(), so this
merely brings sendmsg() in line with that.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>mm: Remove slab destructors from kmem_cache_create().</title>
<updated>2007-07-20T01:11:58Z</updated>
<author>
<name>Paul Mundt</name>
</author>
<published>2007-07-20T01:11:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=20c2df83d25c6a95affe6157a4c9cac4cf5ffaac'/>
<id>urn:sha1:20c2df83d25c6a95affe6157a4c9cac4cf5ffaac</id>
<content type='text'>
Slab destructors were no longer supported after Christoph's
c59def9f222d44bb7e2f0a559f2906191a0862d7 change. They've been
BUGs for both slab and slub, and slob never supported them
either.

This rips out support for the dtor pointer from kmem_cache_create()
completely and fixes up every single callsite in the kernel (there were
about 224, not including the slab allocator definitions themselves,
or the documentation references).

Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>I/OAT: warning fix</title>
<updated>2007-07-11T23:10:53Z</updated>
<author>
<name>Andrew Morton</name>
</author>
<published>2007-03-08T17:57:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e00c5d8b4d800b95b72b3f072e1d55d7c7034702'/>
<id>urn:sha1:e00c5d8b4d800b95b72b3f072e1d55d7c7034702</id>
<content type='text'>
net/ipv4/tcp.c: In function 'tcp_recvmsg':
net/ipv4/tcp.c:1111: warning: unused variable 'available'

Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Chris Leech &lt;christopher.leech@intel.com&gt;
</content>
</entry>
<entry>
<title>I/OAT: Only offload copies for TCP when there will be a context switch</title>
<updated>2007-07-11T23:10:53Z</updated>
<author>
<name>Chris Leech</name>
</author>
<published>2007-03-08T17:57:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2b1244a43be97f504494b557a7f7a65fe0d00dba'/>
<id>urn:sha1:2b1244a43be97f504494b557a7f7a65fe0d00dba</id>
<content type='text'>
The performance wins come with having the DMA copy engine doing the copies
in parallel with the context switch.  If there is enough data ready on the
socket at recv time just use a regular copy.

Signed-off-by: Chris Leech &lt;christopher.leech@intel.com&gt;
</content>
</entry>
<entry>
<title>[TCP] tcp_read_sock: Allow recv_actor() return return negative error value.</title>
<updated>2007-06-24T06:07:50Z</updated>
<author>
<name>Jens Axboe</name>
</author>
<published>2007-06-24T06:07:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ddb61a57bb6df673986e6476407f97d28b02031f'/>
<id>urn:sha1:ddb61a57bb6df673986e6476407f97d28b02031f</id>
<content type='text'>
tcp_read_sock() currently assumes that the recv_actor() only returns
number of bytes copied. For network splice receive, we may have to
return an error in some cases. So allow the actor to return a negative
error value.

Signed-off-by: Jens Axboe &lt;jens.axboe@oracle.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[TCP]: Use default 32768-61000 outgoing port range in all cases.</title>
<updated>2007-06-04T01:08:43Z</updated>
<author>
<name>Mark Glines</name>
</author>
<published>2007-05-31T22:44:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3f196eb519a419bf83ecc22753943fd0a0de4f8f'/>
<id>urn:sha1:3f196eb519a419bf83ecc22753943fd0a0de4f8f</id>
<content type='text'>
This diff changes the default port range used for outgoing connections,
from "use 32768-61000 in most cases, but use N-4999 on small boxes
(where N is a multiple of 1024, depending on just *how* small the box
is)" to just "use 32768-61000 in all cases".

I don't believe there are any drawbacks to this change, and it keeps
outgoing connection ports farther away from the mess of
IANA-registered ports.

Signed-off-by: Mark Glines &lt;mark@glines.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[TCP]: Consolidate checking for tcp orphan count being too big.</title>
<updated>2007-05-31T08:23:34Z</updated>
<author>
<name>Pavel Emelianov</name>
</author>
<published>2007-05-29T20:19:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e4fd5da39f99d5921dda1fe3d93652fbd925fbfd'/>
<id>urn:sha1:e4fd5da39f99d5921dda1fe3d93652fbd925fbfd</id>
<content type='text'>
tcp_out_of_resources() and tcp_close() perform the
same checking of number of orphan sockets. Move this
code into common place.

Signed-off-by: Pavel Emelianov &lt;xemul@openvz.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>header cleaning: don't include smp_lock.h when not used</title>
<updated>2007-05-08T18:15:07Z</updated>
<author>
<name>Randy Dunlap</name>
</author>
<published>2007-05-08T07:28:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e63340ae6b6205fef26b40a75673d1c9c0c8bb90'/>
<id>urn:sha1:e63340ae6b6205fef26b40a75673d1c9c0c8bb90</id>
<content type='text'>
Remove includes of &lt;linux/smp_lock.h&gt; where it is not used/needed.
Suggested by Al Viro.

Builds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc,
sparc64, and arm (all 59 defconfigs).

Signed-off-by: Randy Dunlap &lt;randy.dunlap@oracle.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>[TCP]: zero out rx_opt in tcp_disconnect()</title>
<updated>2007-05-04T00:32:28Z</updated>
<author>
<name>Srinivas Aji</name>
</author>
<published>2007-05-04T00:32:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b40b4f79ce789e9e28d382c85006f62be2725282'/>
<id>urn:sha1:b40b4f79ce789e9e28d382c85006f62be2725282</id>
<content type='text'>
When the server drops its connection, NFS client reconnects using the
same socket after disconnecting. If the new connection's SYN,ACK
doesn't contain the TCP timestamp option and the old connection's did,
tp-&gt;tcp_header_len is recomputed assuming no timestamp header but
tp-&gt;rx_opt.tstamp_ok remains set. Then tcp_build_and_update_options()
adds in a timestamp option past the end of the allocated TCP header,
overwriting TCP data, or when the data is in skb_shinfo(skb)-&gt;frags[],
overwriting skb_shinfo(skb) causing a crash soon after. (The issue was
debugged from such a crash.)

Similarly, wscale_ok and sack_ok also get set based on the SYN,ACK
packet but not reset on disconnect, since they are zeroed out at
initialization. The patch zeroes out the entire tp-&gt;rx_opt struct in
tcp_disconnect() to avoid this sort of problem.

Signed-off-by: Srinivas Aji &lt;Aji_Srinivas@emc.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[TCP]: Update references in two old comments</title>
<updated>2007-04-29T04:21:46Z</updated>
<author>
<name>Gerrit Renker</name>
</author>
<published>2007-04-29T04:21:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=65bb723c9502b7ba0a3aad13bdac8832e213ba74'/>
<id>urn:sha1:65bb723c9502b7ba0a3aad13bdac8832e213ba74</id>
<content type='text'>
This updates references to drafts in comments which must be about 10
years old.  Internet draft draft-ietf-tcpimpl-prob-03.txt expired in 1998
and was replaced by RFC 2525 in March 1999.

Section 3.10 of the draft maps almost identically into section 2.17 of RFC
2525: both are entitled "Failure to RST on close with data pending", the
differences in text body amount to a typo and minor sentence change.

Signed-off-by: Gerrit Renker &lt;gerrit@erg.abdn.ac.uk&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
