netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Hubert Tonneau <hubert.tonneau@fullpliant.org>
To: Stephen Hemminger <shemminger@osdl.org>
Cc: Francois Romieu <romieu@fr.zoreil.com>,
	Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>,
	netdev@oss.sgi.com
Subject: Re: 2.6.10 TCP troubles -- suggested patch
Date: Thu, 10 Feb 2005 21:53:20 GMT	[thread overview]
Message-ID: <0523RGW12@server5.heliogroup.fr> (raw)

It does not seem to solve the problem:
. Linux 2.6.9 takes 15 seconds to copy 105 MB to the Mac OSX
. Linux 2.6.10 with the TCP patch still takes 325 seconds.

Stephen Hemminger wrote:
>
> Please try this patch, based on Alexey's suggestion:
> 
> > That's one quick and simple idea: set PSH on each tso segment.
> > Seems, it is always good. Hardware will preserve it only on the last skb and
> > everyone will be happy.
> 
> # This is a BitKeeper generated diff -Nru style patch.
> #
> # ChangeSet
> #   2005/02/09 11:00:57-08:00 shemminger@linux.site 
> #   Always set PUSH on TSO multi-segment frames
> #   to workaround bugs in MacOSX
> # 
> # net/ipv4/tcp_output.c
> #   2005/02/09 11:00:44-08:00 shemminger@linux.site +8 -0
> #   Always set PUSH on TSO multi-segment frames
> #   to workaround bugs in MacOSX
> # 
> diff -Nru a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c
> --- a/net/ipv4/tcp_output.c	2005-02-09 11:01:12 -08:00
> +++ b/net/ipv4/tcp_output.c	2005-02-09 11:01:12 -08:00
> @@ -754,6 +754,14 @@
>  					break;
>  			}
>  
> +			/* Force push to be on for any large TSO frames
> +			 * to workaround problems with busted implementations
> +			 * like MacOSX that hold off delivery of data until
> +			 * push.
> +			 */
> +			if (tcp_skb_pcount(skb) > 1)
> +			    TCP_SKB_CB(skb)->flags |= TCPCB_FLAG_PSH;
> +
>  			TCP_SKB_CB(skb)->when = tcp_time_stamp;
>  			if (tcp_transmit_skb(sk, skb_clone(skb, GFP_ATOMIC)))
>  				break;

             reply	other threads:[~2005-02-10 21:53 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-02-10 21:53 Hubert Tonneau [this message]
2005-02-10 22:36 ` 2.6.10 TCP troubles -- suggested patch Rick Jones
2005-02-11  1:16   ` David S. Miller
  -- strict thread matches above, loose matches on Subject: below --
2005-02-20 23:06 Hubert Tonneau
2005-02-16 20:00 Hubert Tonneau
2005-02-13 10:52 Hubert Tonneau
2005-02-14 14:12 ` Alexey Kuznetsov
2005-02-11 21:55 Hubert Tonneau
2005-02-11 22:54 ` Rick Jones
2005-02-11 23:09   ` Nivedita Singhvi
2005-02-11 23:40     ` Rick Jones
2005-02-12  1:08     ` David S. Miller
2005-02-12  1:09   ` David S. Miller
2005-02-12 14:31     ` Alexey Kuznetsov
2005-02-12 19:28       ` David S. Miller
2005-02-12 19:44         ` Leonid Grossman
2005-02-12 19:52         ` Alexey Kuznetsov
2005-02-15 23:25           ` David S. Miller
2005-02-12 20:19       ` rick jones
2005-02-12 20:28         ` David S. Miller
2005-02-12 20:56         ` Alexey Kuznetsov
2005-02-12 21:27           ` Nivedita Singhvi
2005-02-12 21:43           ` rick jones
2005-02-12 22:00             ` Alexey Kuznetsov
2005-02-13  1:29               ` rick jones
2005-02-11 23:04 ` Stephen Hemminger
2005-02-12  1:07   ` David S. Miller
2005-02-12 12:11     ` Andi Kleen
2005-02-12 19:23       ` David S. Miller
2005-02-12 21:30         ` Andi Kleen
2005-02-12 14:16     ` Alexey Kuznetsov
2005-02-12 19:41       ` David S. Miller
2005-02-12 20:03         ` Alexey Kuznetsov
2005-02-15 23:26           ` David S. Miller
2005-02-15 23:42             ` Rick Jones
2005-02-15 23:23   ` David S. Miller
2005-02-16  9:13     ` Alexey Kuznetsov
2005-02-16 17:50       ` David S. Miller
     [not found] <050QTJA12@server5.heliogroup.fr>
2005-02-09 18:59 ` Stephen Hemminger
2005-02-09 20:25   ` David S. Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=0523RGW12@server5.heliogroup.fr \
    --to=hubert.tonneau@fullpliant.org \
    --cc=kuznet@ms2.inr.ac.ru \
    --cc=netdev@oss.sgi.com \
    --cc=romieu@fr.zoreil.com \
    --cc=shemminger@osdl.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).