<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-stable.git/include/linux/tcp.h, branch linux-2.6.19.y</title>
<subtitle>Linux kernel stable tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/'/>
<entry>
<title>[TCP]: Bound TSO defer time</title>
<updated>2006-10-19T03:36:48+00:00</updated>
<author>
<name>John Heffner</name>
<email>jheffner@psc.edu</email>
</author>
<published>2006-10-19T03:36:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=ae8064ac32d07f609114d73928cdef803be87134'/>
<id>ae8064ac32d07f609114d73928cdef803be87134</id>
<content type='text'>
This patch limits the amount of time you will defer sending a TSO segment
to less than two clock ticks, or the time between two acks, whichever is
longer.

On slow links, deferring causes significant bursts.  See attached plots,
which show RTT through a 1 Mbps link with a 100 ms RTT and ~100 ms queue
for (a) non-TSO, (b) currnet TSO, and (c) patched TSO.  This burstiness
causes significant jitter, tends to overflow queues early (bad for short
queues), and makes delay-based congestion control more difficult.

Deferring by a couple clock ticks I believe will have a relatively small
impact on performance.

Signed-off-by: John Heffner &lt;jheffner@psc.edu&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch limits the amount of time you will defer sending a TSO segment
to less than two clock ticks, or the time between two acks, whichever is
longer.

On slow links, deferring causes significant bursts.  See attached plots,
which show RTT through a 1 Mbps link with a 100 ms RTT and ~100 ms queue
for (a) non-TSO, (b) currnet TSO, and (c) patched TSO.  This burstiness
causes significant jitter, tends to overflow queues early (bad for short
queues), and makes delay-based congestion control more difficult.

Deferring by a couple clock ticks I believe will have a relatively small
impact on performance.

Signed-off-by: John Heffner &lt;jheffner@psc.edu&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[TCP]: struct tcp_sock .pred_flags is net-endian</title>
<updated>2006-09-29T01:02:05+00:00</updated>
<author>
<name>Al Viro</name>
<email>viro@zeniv.linux.org.uk</email>
</author>
<published>2006-09-28T01:32:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=dddc93c05d7dba60b44866486502c155e96ab915'/>
<id>dddc93c05d7dba60b44866486502c155e96ab915</id>
<content type='text'>
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[TCP]: struct tcp_sack_block annotations</title>
<updated>2006-09-29T01:02:04+00:00</updated>
<author>
<name>Al Viro</name>
<email>viro@zeniv.linux.org.uk</email>
</author>
<published>2006-09-28T01:32:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=269bd27e66037a7932cee6d6aa7ef7defd0bfe38'/>
<id>269bd27e66037a7932cee6d6aa7ef7defd0bfe38</id>
<content type='text'>
Some of the instances of tcp_sack_block are host-endian, some - net-endian.
Define struct tcp_sack_block_wire identical to struct tcp_sack_block
with u32 replaced with __be32; annotate uses of tcp_sack_block replacing
net-endian ones with tcp_sack_block_wire.  Change is obviously safe since
for cc(1) __be32 is typedefed to u32.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Some of the instances of tcp_sack_block are host-endian, some - net-endian.
Define struct tcp_sack_block_wire identical to struct tcp_sack_block
with u32 replaced with __be32; annotate uses of tcp_sack_block replacing
net-endian ones with tcp_sack_block_wire.  Change is obviously safe since
for cc(1) __be32 is typedefed to u32.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[IPV4]: TCP headers annotated</title>
<updated>2006-09-29T01:02:03+00:00</updated>
<author>
<name>Al Viro</name>
<email>viro@zeniv.linux.org.uk</email>
</author>
<published>2006-09-28T01:31:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=46a97324a5ebdc1e343a0223d993e79551adab0f'/>
<id>46a97324a5ebdc1e343a0223d993e79551adab0f</id>
<content type='text'>
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[TCP]: Move inclusion of &lt;linux/dmaengine.h&gt; to correct place in &lt;linux/tcp.h&gt;</title>
<updated>2006-06-23T09:07:40+00:00</updated>
<author>
<name>David Woodhouse</name>
<email>dwmw2@infradead.org</email>
</author>
<published>2006-06-22T21:28:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=c8a553ad7f0bf943047943a758cf07017819cb3c'/>
<id>c8a553ad7f0bf943047943a758cf07017819cb3c</id>
<content type='text'>
The new &lt;linux/dmaengine.h&gt; header shouldn't be included from
the !__KERNEL__ portion of tcp.h

Signed-off-by: David Woodhouse &lt;dwmw2@infradead.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The new &lt;linux/dmaengine.h&gt; header shouldn't be included from
the !__KERNEL__ portion of tcp.h

Signed-off-by: David Woodhouse &lt;dwmw2@infradead.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge git://git.infradead.org/hdrcleanup-2.6</title>
<updated>2006-06-20T22:10:08+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@g5.osdl.org</email>
</author>
<published>2006-06-20T22:10:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=cee4cca740d209bcb4b9857baa2253d5ba4e3fbe'/>
<id>cee4cca740d209bcb4b9857baa2253d5ba4e3fbe</id>
<content type='text'>
* git://git.infradead.org/hdrcleanup-2.6: (63 commits)
  [S390] __FD_foo definitions.
  Switch to __s32 types in joystick.h instead of C99 types for consistency.
  Add &lt;sys/types.h&gt; to headers included for userspace in &lt;linux/input.h&gt;
  Move inclusion of &lt;linux/compat.h&gt; out of user scope in asm-x86_64/mtrr.h
  Remove struct fddi_statistics from user view in &lt;linux/if_fddi.h&gt;
  Move user-visible parts of drivers/s390/crypto/z90crypt.h to include/asm-s390
  Revert include/media changes: Mauro says those ioctls are only used in-kernel(!)
  Include &lt;linux/types.h&gt; and use __uXX types in &lt;linux/cramfs_fs.h&gt;
  Use __uXX types in &lt;linux/i2o_dev.h&gt;, include &lt;linux/ioctl.h&gt; too
  Remove private struct dx_hash_info from public view in &lt;linux/ext3_fs.h&gt;
  Include &lt;linux/types.h&gt; and use __uXX types in &lt;linux/affs_hardblocks.h&gt;
  Use __uXX types in &lt;linux/divert.h&gt; for struct divert_blk et al.
  Use __u32 for elf_addr_t in &lt;asm-powerpc/elf.h&gt;, not u32. It's user-visible.
  Remove PPP_FCS from user view in &lt;linux/ppp_defs.h&gt;, remove __P mess entirely
  Use __uXX types in user-visible structures in &lt;linux/nbd.h&gt;
  Don't use 'u32' in user-visible struct ip_conntrack_old_tuple.
  Use __uXX types for S390 DASD volume label definitions which are user-visible
  S390 BIODASDREADCMB ioctl should use __u64 not u64 type.
  Remove unneeded inclusion of &lt;linux/time.h&gt; from &lt;linux/ufs_fs.h&gt;
  Fix private integer types used in V4L2 ioctls.
  ...

Manually resolve conflict in include/linux/mtd/physmap.h
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* git://git.infradead.org/hdrcleanup-2.6: (63 commits)
  [S390] __FD_foo definitions.
  Switch to __s32 types in joystick.h instead of C99 types for consistency.
  Add &lt;sys/types.h&gt; to headers included for userspace in &lt;linux/input.h&gt;
  Move inclusion of &lt;linux/compat.h&gt; out of user scope in asm-x86_64/mtrr.h
  Remove struct fddi_statistics from user view in &lt;linux/if_fddi.h&gt;
  Move user-visible parts of drivers/s390/crypto/z90crypt.h to include/asm-s390
  Revert include/media changes: Mauro says those ioctls are only used in-kernel(!)
  Include &lt;linux/types.h&gt; and use __uXX types in &lt;linux/cramfs_fs.h&gt;
  Use __uXX types in &lt;linux/i2o_dev.h&gt;, include &lt;linux/ioctl.h&gt; too
  Remove private struct dx_hash_info from public view in &lt;linux/ext3_fs.h&gt;
  Include &lt;linux/types.h&gt; and use __uXX types in &lt;linux/affs_hardblocks.h&gt;
  Use __uXX types in &lt;linux/divert.h&gt; for struct divert_blk et al.
  Use __u32 for elf_addr_t in &lt;asm-powerpc/elf.h&gt;, not u32. It's user-visible.
  Remove PPP_FCS from user view in &lt;linux/ppp_defs.h&gt;, remove __P mess entirely
  Use __uXX types in user-visible structures in &lt;linux/nbd.h&gt;
  Don't use 'u32' in user-visible struct ip_conntrack_old_tuple.
  Use __uXX types for S390 DASD volume label definitions which are user-visible
  S390 BIODASDREADCMB ioctl should use __u64 not u64 type.
  Remove unneeded inclusion of &lt;linux/time.h&gt; from &lt;linux/ufs_fs.h&gt;
  Fix private integer types used in V4L2 ioctls.
  ...

Manually resolve conflict in include/linux/mtd/physmap.h
</pre>
</div>
</content>
</entry>
<entry>
<title>[I/OAT]: Structure changes for TCP recv offload to I/OAT</title>
<updated>2006-06-18T04:25:48+00:00</updated>
<author>
<name>Chris Leech</name>
<email>christopher.leech@intel.com</email>
</author>
<published>2006-05-24T00:55:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=97fc2f0848c928c63c2ae619deee61a0b1107b69'/>
<id>97fc2f0848c928c63c2ae619deee61a0b1107b69</id>
<content type='text'>
Adds an async_wait_queue and some additional fields to tcp_sock, and a
dma_cookie_t to sk_buff.

Signed-off-by: Chris Leech &lt;christopher.leech@intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Adds an async_wait_queue and some additional fields to tcp_sock, and a
dma_cookie_t to sk_buff.

Signed-off-by: Chris Leech &lt;christopher.leech@intel.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't include linux/config.h from anywhere else in include/</title>
<updated>2006-04-26T11:56:16+00:00</updated>
<author>
<name>David Woodhouse</name>
<email>dwmw2@infradead.org</email>
</author>
<published>2006-04-26T11:56:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=62c4f0a2d5a188f73a94f2cb8ea0dba3e7cf0a7f'/>
<id>62c4f0a2d5a188f73a94f2cb8ea0dba3e7cf0a7f</id>
<content type='text'>
Signed-off-by: David Woodhouse &lt;dwmw2@infradead.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: David Woodhouse &lt;dwmw2@infradead.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[TCP] mtu probing: move tcp-specific data out of inet_connection_sock</title>
<updated>2006-03-21T05:32:58+00:00</updated>
<author>
<name>John Heffner</name>
<email>jheffner@psc.edu</email>
</author>
<published>2006-03-21T05:32:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=0e7b13685f9a06949ea3070c97c0f0085a08cd37'/>
<id>0e7b13685f9a06949ea3070c97c0f0085a08cd37</id>
<content type='text'>
This moves some TCP-specific MTU probing state out of
inet_connection_sock back to tcp_sock.

Signed-off-by: John Heffner &lt;jheffner@psc.edu&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This moves some TCP-specific MTU probing state out of
inet_connection_sock back to tcp_sock.

Signed-off-by: John Heffner &lt;jheffner@psc.edu&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[IP_SOCKGLUE]: Remove most of the tcp specific calls</title>
<updated>2006-01-03T21:10:58+00:00</updated>
<author>
<name>Arnaldo Carvalho de Melo</name>
<email>acme@mandriva.com</email>
</author>
<published>2005-12-14T07:26:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=d83d8461f902c672bc1bd8fbc6a94e19f092da97'/>
<id>d83d8461f902c672bc1bd8fbc6a94e19f092da97</id>
<content type='text'>
As DCCP needs to be called in the same spots.

Now we have a member in inet_sock (is_icsk), set at sock creation time from
struct inet_protosw-&gt;flags (if INET_PROTOSW_ICSK is set, like for TCP and
DCCP) to see if a struct sock instance is a inet_connection_sock for places
like the ones in ip_sockglue.c (v4 and v6) where we previously were looking if
sk_type was SOCK_STREAM, that is insufficient because we now use the same code
for DCCP, that has sk_type SOCK_DCCP.

Signed-off-by: Arnaldo Carvalho de Melo &lt;acme@mandriva.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As DCCP needs to be called in the same spots.

Now we have a member in inet_sock (is_icsk), set at sock creation time from
struct inet_protosw-&gt;flags (if INET_PROTOSW_ICSK is set, like for TCP and
DCCP) to see if a struct sock instance is a inet_connection_sock for places
like the ones in ip_sockglue.c (v4 and v6) where we previously were looking if
sk_type was SOCK_STREAM, that is insufficient because we now use the same code
for DCCP, that has sk_type SOCK_DCCP.

Signed-off-by: Arnaldo Carvalho de Melo &lt;acme@mandriva.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
</feed>
