[PATCH 1/4] [NETFILTER]: Kill some supper dupper bloatry

2008-01-05 Thread Ilpo Järvinen
, 2122 bytes added, 11029 bytes removed, diff: -8907 Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/netfilter/nf_conntrack_netlink.c | 12 ++-- 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/net/netfilter/nf_conntrack_netlink.c b/net/netfilter

[PATCH 3/4] [XFRM]: Kill some bloat

2008-01-05 Thread Ilpo Järvinen
: 9 functions changed, 1120 bytes added, 3793 bytes removed, diff: -2673 Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/xfrm/xfrm_state.c |8 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/net/xfrm/xfrm_state.c b/net/xfrm/xfrm_state.c index 4dec655..81b0fce

[PATCH 4/4] [CCID3]: Kill some bloat

2008-01-05 Thread Ilpo Järvinen
ccid3_hc_tx_send_packet | -144 5 functions changed, 850 bytes removed, diff: -850 net/dccp/ccids/ccid3.c: ccid3_update_send_interval | +191 1 function changed, 191 bytes added, diff: +191 net/dccp/ccids/ccid3.o: 6 functions changed, 191 bytes added, 850 bytes removed, diff: -659 Signed-off-by: Ilpo Järvinen

[PATCH net-2.6.25 2/3] [TCP]: Urgent parameter effect can be simplified.

2008-01-03 Thread Ilpo Järvinen
Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_output.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c index f6d279a..6c7cd0a 100644 --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c @@ -2488,7 +2488,7

[PATCH net-2.6.25 3/3] [TCP]: Perform setting of common control fields in one place

2008-01-03 Thread Ilpo Järvinen
function changed, 90 bytes added tcp_output.o.mid: 8 functions changed, 90 bytes added, 351 bytes removed, diff: -261 Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_output.c | 91 +++- 1 files changed, 36 insertions(+), 55 deletions

[PATCH net-2.6.25 1/3] [TCP]: cleanup tcp_parse_options deep indented switch

2008-01-03 Thread Ilpo Järvinen
Removed case indentation level combined some nested ifs, mostly within 80 lines now. This is a leftover from indent patch, it just had to be done manually to avoid messing it up completely. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_input.c | 135

Re: TCP event tracking via netlink...

2008-01-02 Thread Ilpo Järvinen
On Wed, 2 Jan 2008, David Miller wrote: From: Stephen Hemminger [EMAIL PROTECTED] Date: Thu, 6 Dec 2007 09:23:12 -0800 Tools and scripts for testing that generate graphs are at: git://git.kernel.org/pub/scm/tcptest/tcptest Did you move it somewhere else? [EMAIL

Re: [PATCH 3/9] [TCP]: Remove unnecessary local variables

2007-12-31 Thread Ilpo Järvinen
On Mon, 31 Dec 2007, David Miller wrote: From: Ilpo_Järvinen [EMAIL PROTECTED] Date: Mon, 31 Dec 2007 12:47:51 +0200 Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] ... - in_flight = tcp_packets_in_flight(tp); - cwnd = tp-snd_cwnd; - if (in_flight cwnd

Re: TSO trimming question

2007-12-21 Thread Ilpo Järvinen
On Fri, 21 Dec 2007, Bill Fink wrote: I meant to ask about this a while back but then got distracted by other things. But now since the subject has come up, I had a couple of more questions about this code. What's with all the shifting back and forth? Here with: ((jiffies1)1) -

Re: TSO trimming question

2007-12-21 Thread Ilpo Järvinen
On Fri, 21 Dec 2007, Ilpo Järvinen wrote: On Fri, 21 Dec 2007, Bill Fink wrote: If so it seems like a lot of unnecessary work just to avoid a 1 in 4 billion event, since it's my understanding that the whole tcp_tso_should_defer function is just an optimization and not a criticality

[PATCH] [TCP]: Remove seq_rtt ptr from clean_rtx_queue args

2007-12-21 Thread Ilpo Järvinen
While checking Gavin's patch I noticed that the returned seq_rtt is not used by the caller. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- I think it shouldn't introduce new conflicts between net-2.6.25 and net-2.6 (tested with git-am -3 to both). net/ipv4/tcp_input.c |7 ++- 1

Re: [PATCH/RFC] [v2] TCP: use non-delayed ACK for congestion control RTT

2007-12-21 Thread Ilpo Järvinen
); + else if (ca_seq_rtt 0) + rtt_us = jiffies_to_usecs(ca_seq_rtt); } ca_ops-pkts_acked(sk, pkts_acked, rtt_us); Acked-by: Ilpo Järvinen [EMAIL PROTECTED] / Reviewed-by... whatever, I

Re: [PATCH/RFC] [v2] TCP: use non-delayed ACK for congestion control RTT

2007-12-21 Thread Ilpo Järvinen
On Fri, 21 Dec 2007, Ilpo Järvinen wrote: On Fri, 21 Dec 2007, Gavin McCullagh wrote: I'm just checking through the existing CA modules. I don't see the rtt used for RTO anywhere. This is what I gather they're each using rtt for. I meant more timeout like fashion (e.g., to timeout

[PATCH] [TCP]: Force TSO splits to MSS boundaries

2007-12-21 Thread Ilpo Järvinen
it should be calculated from. This approach also kills some duplicated code. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_output.c | 51 - 1 files changed, 25 insertions(+), 26 deletions(-) diff --git a/net/ipv4/tcp_output.c b/net

Re: TSO trimming question

2007-12-21 Thread Ilpo Järvinen
On Fri, 21 Dec 2007, Bill Fink wrote: On Fri, 21 Dec 2007, Bill Fink wrote: Or perhaps even: /* Ok, it looks like it is advisable to defer. */ tp-tso_deferred = jiffies; /* need to return a non-zero value to defer, which means won't * defer if jiffies == 0 but

Re: [PATCH] [TCP]: Force TSO splits to MSS boundaries

2007-12-21 Thread Ilpo Järvinen
On Fri, 21 Dec 2007, Ilpo Järvinen wrote: How about this, I had to use another approach due to reasons outlined in the commit message: -- [PATCH] [TCP]: Force TSO splits to MSS boundaries If snd_wnd - snd_nxt wasn't multiple of MSS, skb was split on odd boundary by the callers

Re: A short question about net git tree and patches

2007-12-20 Thread Ilpo Järvinen
On Thu, 20 Dec 2007, Sam Ravnborg wrote: On Thu, Dec 20, 2007 at 11:20:26AM +0200, David Shwatrz wrote: Hello, I have a short question regarding the net git tree and patches: I want to write and send patches against the most recent and bleeding edge kernel networking code. I see in:

Re: TSO trimming question

2007-12-20 Thread Ilpo Järvinen
that most of what tcp_tso_should_defer had in between there was dead code because of this. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_output.c |3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c index 8dafda9

Re: TSO trimming question

2007-12-20 Thread Ilpo Järvinen
On Thu, 20 Dec 2007, David Miller wrote: From: Ilpo_Järvinen [EMAIL PROTECTED] Date: Thu, 20 Dec 2007 13:40:51 +0200 (EET) That's not the only case, IMHO if there's odd boundary due to snd_una+snd_wnd - skb-seq limit (done in tcp_window_allows()), we don't consider it as odd but break

Re: After many hours all outbound connections get stuck in SYN_SENT

2007-12-20 Thread Ilpo Järvinen
On Thu, 20 Dec 2007, James Nichols wrote: I still dont understand. tcpdump -p -n -s 1600 -c 1 doesnt reveal User data at all. Without any exact data from you, I am afraid nobody can help. Oh, I didn't see that you specified specific options. I'll still have to anonymize 2000+

Re: After many hours all outbound connections get stuck in SYN_SENT

2007-12-20 Thread Ilpo Järvinen
On Thu, 20 Dec 2007, James Nichols wrote: You'd probably should also investigate the Linux kernel, especially the size and locks of the components of the Sack data structures and what happens to those data structures after Sack is disabled (presumably the Sack data structure is in some

Re: [TCP] IPV6 : Change a divide into a right shift in tcp_v6_send_ack()

2007-12-20 Thread Ilpo Järvinen
On Fri, 21 Dec 2007, Eric Dumazet wrote: Because tot_len is signed in tcp_v6_send_ack(), tot_len/4 forces compiler to emit an integer divide, while we can help it to use a right shift, less expensive. Can't you just change tot_len to unsigned here? It's just sizeof and some positive

Re: [PATCH/RFC] [v2] TCP: use non-delayed ACK for congestion control RTT

2007-12-19 Thread Ilpo Järvinen
On Tue, 18 Dec 2007, Gavin McCullagh wrote: The last attempt didn't take account of the situation where a timestamp wasn't available and tcp_clean_rtx_queue() has to feed both the RTO and the congestion avoidance. This updated patch stores both RTTs, making the delayed one available for the

Re: After many hours all outbound connections get stuck in SYN_SENT

2007-12-19 Thread Ilpo Järvinen
On Sun, 16 Dec 2007, James Nichols wrote: I have a Java application that makes a large number of outbound webservice calls over HTTP/TCP. The hosts contacted are a fixed set of about 2000 hosts and a web service call is made to each of them approximately every 5 mintues by a pool of 200 Java

Re: [PATCH/RFC] [v2] TCP: use non-delayed ACK for congestion control RTT

2007-12-19 Thread Ilpo Järvinen
On Wed, 19 Dec 2007, Gavin McCullagh wrote: On Wed, 19 Dec 2007, Ilpo Järvinen wrote: Isn't it also much better this way in a case where ACK losses happened, taking the longest RTT in that case is clearly questionable as it may over-estimate considerably. Quite so. However, another

Re: After many hours all outbound connections get stuck in SYN_SENT

2007-12-19 Thread Ilpo Järvinen
On Wed, 19 Dec 2007, James Nichols wrote: And the problem almost instanteaously resolved itself and outbound connection attempts were succesful. New or the pending ones? I'm fairly sure that sockets that were already open in SYN_SENT state when I turned tcp_sack off started to work

Re: After many hours all outbound connections get stuck in SYN_SENT

2007-12-19 Thread Ilpo Järvinen
On Wed, 19 Dec 2007, Eric Dumazet wrote: James Nichols a écrit : On 12/19/07, Eric Dumazet [EMAIL PROTECTED] wrote: James Nichols a écrit : So you see outgoing SYN packets, but no SYN replies coming from the remote peer ? (you mention ACKS, but the first packet received from

TSO trimming question

2007-12-19 Thread Ilpo Järvinen
Hi all, I'm not fully sure what's purpose of this code in tcp_write_xmit: if (skb-len limit) { unsigned int trim = skb-len % mss_now; if (trim) limit = skb-len - trim;

Re: TSO trimming question

2007-12-19 Thread Ilpo Järvinen
On Wed, 19 Dec 2007, Ilpo Järvinen wrote: I'm not fully sure what's purpose of this code in tcp_write_xmit: if (skb-len limit) { unsigned int trim = skb-len % mss_now; if (trim

Re: net-2.6.25 rebased...

2007-12-17 Thread Ilpo Järvinen
On Sun, 16 Dec 2007, David Miller wrote: I needed to rebase for two reasons: 1) Ilpo asked me to revert a lot of TCP stuff and the easiest way to do that was during a rebase. 2) Patrick McHardy needs some of the pending net-2.6 bug fixes in there in order to send me patches for

Re: [PATCH 2/2] [TCP]: Include __tcp_reset_fack_counts to non-__ version

2007-12-17 Thread Ilpo Järvinen
On Tue, 11 Dec 2007, Christoph Hellwig wrote: On Tue, Dec 11, 2007 at 01:50:39PM +0200, Ilpo J?rvinen wrote: + BUG_ON((prev != NULL) !tcp_skb_adjacent(sk, prev, skb[queue])); + + tcp_for_write_queue_from(skb[queue], sk, queue) { + if ((prev !=

SACK scoreboard (Was: Re: [RFC PATCH net-2.6.25 uncompilable] [TCP]: Avoid breaking GSOed skbs when SACKed one-by-one)

2007-12-15 Thread Ilpo Järvinen
On Tue, 11 Dec 2007, David Miller wrote: Interesting approach, but I think there is limited value to this (arguably) complex form. The core issue is that the data and the SACK state are maintained in the same datastructure. The complexity in all the state management and fixups in your

[PATCH net-2.6.25] Revert recent TCP work

2007-12-14 Thread Ilpo Järvinen
On Fri, 14 Dec 2007, Ilpo Järvinen wrote: So, I might soon prepare a revert patch for most of the questionable TCP parts and ask Dave to apply it (and drop them fully during next rebase) unless I suddently figure something out soon which explains all/most of the problems, then return

Re: kernel 2.6.23.8: KERNEL: assertion in net/ipv4/tcp_input.c

2007-12-14 Thread Ilpo Järvinen
On Thu, 13 Dec 2007, Wolfgang Walter wrote: it happened again with your patch applied: WARNING: at net/ipv4/tcp_input.c:1018 tcp_sacktag_write_queue() Call Trace: IRQ [80549290] tcp_sacktag_write_queue+0x7d0/0xa60 [80283869] add_partial+0x19/0x60 [80549ac4]

Re: 2.6.24-rc4-mm1 - BUG in tcp_fragment

2007-12-13 Thread Ilpo Järvinen
On Thu, 13 Dec 2007, Cedric Le Goater wrote: I got this one while compiling on NFS. C. kernel BUG at /home/legoater/linux/2.6.24-rc4-mm1/include/net/tcp.h:1480! I'm not exactly sure what patches you have applied and which patches are not, with rc4-mm1 there are two patches (first one was

[TCP]: fack_counts more fixes (the previous ones were incomplete)

2007-12-11 Thread Ilpo Järvinen
in the same window when TCP runs out new data. Now check really against the list heads rather than a valid skb which should still be processed. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/net/tcp.h |6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git

[PATCH net-2.6.25 0/2]: TCP minor

2007-12-11 Thread Ilpo Järvinen
Hi Dave, Here are two TCP patches. The first one removes not so useful parameter (my avoid GSO skb fragment RFC patch that I'll send separately right after I get this out depends it). The second applies cleanly only after the other fack_count fix patch. -- i. -- To unsubscribe from this list:

[PATCH 2/2] [TCP]: Include __tcp_reset_fack_counts to non-__ version

2007-12-11 Thread Ilpo Järvinen
This makes flow more obvious in case of short-circuit and removes need for prev double pointer fc recount per queue switch. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/net/tcp.h | 54 ++-- 1 files changed, 19 insertions(+), 35

[PATCH 1/2] [TCP]: Push fack_count calculation deeper into functions

2007-12-11 Thread Ilpo Järvinen
-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_input.c | 16 +++- 1 files changed, 7 insertions(+), 9 deletions(-) diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index 75a16b3..977c68c 100644 --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c @@ -1214,11 +1214,15

[RFC PATCH net-2.6.25 uncompilable] [TCP]: Avoid breaking GSOed skbs when SACKed one-by-one (Was: Re: [RFC] TCP illinois max rtt aging)

2007-12-11 Thread Ilpo Järvinen
the latest SACK block is still growing. Messy enough, other parts must be made aware of this change as well because the skb state is a bit fuzzy while have not yet marked it in tcp_sacktag_one. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/linux/tcp.h |2 + include/net/tcp.h

Re: 2.6.24-rc4-mm1

2007-12-10 Thread Ilpo Järvinen
on, the second-order effects are very hard to track, so it may fix all out-standing TCP bug reports. 2) Prev == NULL check was wrong way around 3) Last skb's fack count was incorrectly skipped while() {} loop Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/net/tcp.h | 22

[PATCH] [TCP]: Bind fackets_out state to highest_sack more tightly

2007-12-10 Thread Ilpo Järvinen
Added checks will catch most of the errors if the current complex fack_count counting logic is flawed somewhere. Fackets_out should always be advancable if highest_sack is too because the fackets_out is nowadays accurate (and obviously it must be smaller than packets_out). Signed-off-by: Ilpo

Re: [PATCH] [TCP]: Bind fackets_out state to highest_sack more tightly

2007-12-10 Thread Ilpo Järvinen
if highest_sack is too because the fackets_out is nowadays accurate (and obviously it must be smaller than packets_out). Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] Applied to net-2.6.25, thanks! Please get the fack_count fix as well from the mm1 thread before my mailbox gets filled

Re: 2.6.24-rc4-mm1

2007-12-10 Thread Ilpo Järvinen
On Mon, 10 Dec 2007, Ilpo Järvinen wrote: Dave, please include this one to net-2.6.25. ... -- [PATCH] [TCP]: Fix fack_count miscountings (multiple places) I've better version of this coming up, so Dave please don't put this one into net-2.6.25 (noticed that both the original and the after

Re: tcp assertion failures in 2.6.24-rc4-mm1

2007-12-09 Thread Ilpo Järvinen
On Sun, 9 Dec 2007, Andrew Morton wrote: This is a mac g5. It is being used as a distcc server across the LAN when... windfarm: CPUs control loops started. EXT3-fs: INFO: recovery required on readonly filesystem. EXT3-fs: write access will be enabled during recovery. kjournald

Re: [RFC] TCP illinois max rtt aging

2007-12-07 Thread Ilpo Järvinen
On Thu, 6 Dec 2007, Lachlan Andrew wrote: On 04/12/2007, Ilpo Järvinen [EMAIL PROTECTED] wrote: On Mon, 3 Dec 2007, Lachlan Andrew wrote: When SACK is active, the per-packet processing becomes more involved, tracking the list of lost/SACKed packets. This causes a CPU spike just

Re: [RFC] TCP illinois max rtt aging

2007-12-07 Thread Ilpo Järvinen
On Fri, 7 Dec 2007, David Miller wrote: From: Ilpo_Järvinen [EMAIL PROTECTED] Date: Fri, 7 Dec 2007 13:05:46 +0200 (EET) I guess if you get a large cumulative ACK, the amount of processing is still overwhelming (added DaveM if he has some idea how to combat it). Even a simple

Re: 2.6.24-rc4-mm1

2007-12-07 Thread Ilpo Järvinen
On Wed, 5 Dec 2007, David Miller wrote: From: Reuben Farrelly [EMAIL PROTECTED] Date: Thu, 06 Dec 2007 17:59:37 +1100 On 5/12/2007 4:17 PM, Andrew Morton wrote: - Lots of device IDs have been removed from the e1000 driver and moved over to e1000e. So if your e1000 stops

Re: TCP event tracking via netlink...

2007-12-07 Thread Ilpo Järvinen
On Thu, 6 Dec 2007, David Miller wrote: From: Ilpo_Järvinen [EMAIL PROTECTED] Date: Thu, 6 Dec 2007 01:18:28 +0200 (EET) On Wed, 5 Dec 2007, David Miller wrote: I assume you're using something like carefully crafted printk's, kprobes, or even ad-hoc statistic counters. That's what

Re: [RFC] TCP illinois max rtt aging

2007-12-07 Thread Ilpo Järvinen
On Fri, 7 Dec 2007, Ilpo Järvinen wrote: On Fri, 7 Dec 2007, David Miller wrote: From: Ilpo_Järvinen [EMAIL PROTECTED] Date: Fri, 7 Dec 2007 13:05:46 +0200 (EET) I guess if you get a large cumulative ACK, the amount of processing is still overwhelming (added DaveM if he has some

Re: [PATCH 3/3] [TCP]: NAGLE_PUSH seems to be a wrong way around

2007-12-05 Thread Ilpo Järvinen
On Wed, 5 Dec 2007, David Miller wrote: From: Ilpo_Järvinen [EMAIL PROTECTED] Date: Tue, 4 Dec 2007 18:48:50 +0200 The comment in tcp_nagle_test suggests that. This bug is very very old, even 2.4.0 seems to have it. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] Wow, I can't

[PATCH] [TCP]: Make invariant check complain about invalid sacked_out

2007-12-05 Thread Ilpo Järvinen
Earlier resolution for NewReno's sacked_out should now keep it small enough for this to become invariant-like check. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_input.c |5 + 1 files changed, 1 insertions(+), 4 deletions(-) diff --git a/net/ipv4/tcp_input.c b/net

Re: [PATCH] [TCP]: Make invariant check complain about invalid sacked_out

2007-12-05 Thread Ilpo Järvinen
On Wed, 5 Dec 2007, Ilpo Järvinen wrote: Earlier resolution for NewReno's sacked_out should now keep it small enough for this to become invariant-like check. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] Forgot to modify it to the subject, this one to net-2.6.25 please. -- i.

Re: TCP event tracking via netlink...

2007-12-05 Thread Ilpo Järvinen
On Wed, 5 Dec 2007, Stephen Hemminger wrote: On Wed, 05 Dec 2007 08:53:07 -0800 Joe Perches [EMAIL PROTECTED] wrote: it occurred to me that we might want to do something like a state change event generator. This could be a basis for an interesting TCP performance tester. That

Re: TCP event tracking via netlink...

2007-12-05 Thread Ilpo Järvinen
On Wed, 5 Dec 2007, David Miller wrote: Ilpo, I was pondering the kind of debugging one does to find congestion control issues and even SACK bugs and it's currently too painful because there is no standard way to track state changes. That's definately true. I assume you're using something

Re: [PATCH net-2.6 0/3]: Three TCP fixes

2007-12-05 Thread Ilpo Järvinen
On Wed, 5 Dec 2007, David Miller wrote: From: John Heffner [EMAIL PROTECTED] Date: Tue, 04 Dec 2007 13:42:41 -0500 Ilpo Järvinen wrote: ...I'm still to figure out why tcp_cwnd_down uses snd_ssthresh/2 as lower bound even though the ssthresh was already halved, so snd_ssthresh

[PATCH net-2.6.25] [TCP]: Create tcp_mark_head_lost_single for NewReno

2007-12-05 Thread Ilpo Järvinen
Fixes NewReno breakage that got introduced because reno ended up into RFC3517 counting branch in tcp_mark_head_lost after the split space tweaks. The fack branch would have worked, however, coming lost marker updates would eventually add this anyway. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED

Re: [RFC] TCP illinois max rtt aging

2007-12-04 Thread Ilpo Järvinen
On Mon, 3 Dec 2007, Lachlan Andrew wrote: On 03/12/2007, Stephen Hemminger [EMAIL PROTECTED] wrote: On Mon, 3 Dec 2007 15:59:23 -0800 Shao Liu [EMAIL PROTECTED] wrote: And also a question, why the samples when SACK is active are outliers? Any sample with SACK is going to mean a loss

[PATCH net-2.6 0/3]: Three TCP fixes

2007-12-04 Thread Ilpo Järvinen
Hi Dave, Here are couple of fixes to net-2.6. The first one is to FRTO which may fix some corner-case bug if the hand-coded check and the !tcp_may_send_now disagree. I didn't check the differences that carefully so they might agree after considering what FRTO overrides from there, however, it

[PATCH 3/3] [TCP]: NAGLE_PUSH seems to be a wrong way around

2007-12-04 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] The comment in tcp_nagle_test suggests that. This bug is very very old, even 2.4.0 seems to have it. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_output.c |3 +-- 1 files changed, 1 insertions(+), 2 deletions

[PATCH 2/3] [TCP]: Move prior_in_flight collect to more robust place

2007-12-04 Thread Ilpo Järvinen
of tcp_reno_cong_avoid bails out early because it thinks that TCP is not limited by cwnd. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_input.c |3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index 5f93d88

[PATCH 1/3] [TCP] FRTO: Use of existing funcs make code more obvious robust

2007-12-04 Thread Ilpo Järvinen
tcp_may_send_now. In addition, returns can then be combined. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_input.c | 14 +- 1 files changed, 5 insertions(+), 9 deletions(-) diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index 227977d..5f93d88 100644

Re: [PATCH net-2.6 0/3]: Three TCP fixes

2007-12-04 Thread Ilpo Järvinen
On Tue, 4 Dec 2007, John Heffner wrote: Ilpo Järvinen wrote: ...I'm still to figure out why tcp_cwnd_down uses snd_ssthresh/2 as lower bound even though the ssthresh was already halved, so snd_ssthresh should suffice. I remember this coming up at least once before, so it's probably

Re: [PATCH net-2.6 0/3]: Three TCP fixes

2007-12-04 Thread Ilpo Järvinen
On Tue, 4 Dec 2007, John Heffner wrote: Ilpo Järvinen wrote: ...Mind if I ask another similar one, any idea why prior_ssthresh is smaller (3/4 of it) than cwnd used to be (see tcp_current_ssthresh)? Not sure on that one. I'm not aware of any publications this is based on. My theory

Re: kernel 2.6.23.8: KERNEL: assertion in net/ipv4/tcp_input.c

2007-12-03 Thread Ilpo Järvinen
On Mon, 3 Dec 2007, Wolfgang Walter wrote: with kernel 2.6.23.8 we saw a KERNEL: assertion ((int)tcp_packets_in_flight(tp) = 0) failed at net/ipv4/tcp_input.c (1292) Is this the only message? Are there any Leak printouts? Any tweaking done to TCP related sysctls? And for completeness, is

Re: [PATCH 13/21] [TCP]: Store retransmit queue packets in RB tree.

2007-12-02 Thread Ilpo Järvinen
On Sun, 2 Dec 2007, Herbert Xu wrote: On Sun, Dec 02, 2007 at 12:48:08AM +0200, Ilpo Järvinen wrote: This work was mostly done by David S. Miller. ... @@ -253,6 +254,8 @@ struct sk_buff { struct sk_buff *next; struct sk_buff *prev; + struct

Re: [PATCH 12/21] [TCP]: Introduce per skb fack_counts to retransmit queue

2007-12-02 Thread Ilpo Järvinen
On Sun, 2 Dec 2007, Herbert Xu wrote: On Sun, Dec 02, 2007 at 12:48:07AM +0200, Ilpo Järvinen wrote: @@ -1220,6 +1221,11 @@ static inline struct sk_buff *tcp_write_queue_next(struct sock *sk, struct sk_bu return skb-next; } +static inline struct sk_buff *tcp_write_queue_prev

[PATCH net-2.6.25] TCP: Fix copy-paste (or code move) error

2007-12-02 Thread Ilpo Järvinen
Should get the skb from the same queue. I had it first elsewhere and missed this change while moving. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- diff --git a/include/net/tcp.h b/include/net/tcp.h index 7ae72c3..5929022 100644 --- a/include/net/tcp.h +++ b/include/net/tcp.h @@ -1524,7

[PATCH 01/21] [TCP]: Move LOSTRETRANS MIB outside !(L|S) check

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] Usually those skbs will have L set, not counting them as lost retransmissions is misleading. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_input.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git

[RFC PATCH net-2.6.25 0/21]: TCP tweaks RB-tree WIP preview

2007-12-01 Thread Ilpo Järvinen
Hi all, First, there are some rather trivial ones (up to [TCP]: Cleanup local variables of clean _rtx_queue)... They're followed by my current efforts to improve SACK processing latencies with large windows, including RB-tree for fast searching, problem space split to provide tight bounds that

[PATCH 02/21] [TCP]: Remove superflucious FLAG_DATA_SACKED

2007-12-01 Thread Ilpo Järvinen
with FLAG_DATA_SACKED. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_input.c | 10 +++--- 1 files changed, 3 insertions(+), 7 deletions(-) diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index ba05e16..6986a2d 100644 --- a/net/ipv4/tcp_input.c +++ b/net/ipv4

[PATCH 04/21] [TCP] Cong.ctrl modules: remove unused good_ack from cong_avoid

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/net/tcp.h|4 ++-- net/ipv4/tcp_bic.c |3 +-- net/ipv4/tcp_cong.c |2 +- net/ipv4/tcp_cubic.c |3 +-- net/ipv4/tcp_highspeed.c |3 +-- net

[PATCH 03/21] [TCP]: Unite identical code from two seqno split blocks

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] Bogus seqno compares just mislead, the code is identical for both sides of the seqno compare (and was even executed just once because of return in between). Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_input.c |7

[PATCH 05/21] [TCP] MTUprobe: prepare skb fields earlier

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] They better be valid when call to write_queue functions is made once things that follow are going in. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_output.c |3 ++- 1 files changed, 2 insertions(+), 1 deletions

[PATCH 09/21] [TCP]: Add unlikely() to urgent handling in clean_rtx_queue

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_input.c |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index 3f0b6c7..365c6d4 100644 --- a/net/ipv4

[PATCH 10/21] [TCP]: Cleanup local variables of clean_rtx_queue

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_input.c | 26 -- 1 files changed, 12 insertions(+), 14 deletions(-) diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index 365c6d4..a43c897

[PATCH 08/21] [TCP]: Remove duplicated code block from clean_rtx_queue

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_input.c | 48 1 files changed, 20 insertions(+), 28 deletions(-) diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c

[PATCH 07/21] [TCP]: Add tcp_for_write_queue_from_safe and use it in mtu_probe

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/net/tcp.h |5 + net/ipv4/tcp_output.c |8 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/include/net/tcp.h b/include/net/tcp.h index

[PATCH 12/21] [TCP]: Introduce per skb fack_counts to retransmit queue

2007-12-01 Thread Ilpo Järvinen
. Miller, included couple of bug fixes from Tom Quetchenbach [EMAIL PROTECTED]. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/net/tcp.h | 41 + 1 files changed, 41 insertions(+), 0 deletions(-) diff --git a/include/net/tcp.h b/include/net/tcp.h

[PATCH 11/21] [TCP]: Abstract tp-highest_sack accessing point to next skb

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] Pointing to the next skb is necessary to avoid referencing already SACKed skbs which will soon be on a separate list. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/net/tcp.h | 35 ++- net

[PATCH 14/21] [TCP]: Added queue parameter to _for_write_queue helpers

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/net/tcp.h |8 net/ipv4/tcp_input.c | 18 +- net/ipv4/tcp_output.c |8 3 files changed, 17 insertions(+), 17 deletions(-) diff

[PATCH 17/21] [TCP]: Move tcp_write_queue_empty

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/net/tcp.h | 10 +- 1 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/net/tcp.h b/include/net/tcp.h index 0883697..117fcc4 100644 --- a/include/net

[PATCH 16/21] [TCP]: Move tcp_check_dsack

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_input.c | 66 +- 1 files changed, 33 insertions(+), 33 deletions(-) diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c

[PATCH 15/21] [TCP]: Use per skb fack count instead of function argument

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_input.c | 30 +++--- 1 files changed, 15 insertions(+), 15 deletions(-) diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index 8a02de2

[PATCH 18/21] [TCP]: Move tcp_advance_highest_sack call early enough

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] The call must be done before any queue moves occur (done in the later patch). Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_input.c |6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/net/ipv4

[PATCH 13/21] [TCP]: Store retransmit queue packets in RB tree.

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] This work was mostly done by David S. Miller. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/linux/skbuff.h |3 ++ include/linux/tcp.h |2 + include/net/tcp.h| 62

[PATCH 19/21] [TCP]: Introduce tcp_real_queue_head(sk)

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] This is necessary when SACKed and non-SACKed spaces become separate in the later patch. However, callers should be converted to behave without this later on. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/net/tcp.h|8

[PATCH 06/21] [TCP]: Remove local variable and use packets_in_flight directly

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] Lines won't be that long and it's compiler's job to optimize them. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_output.c |9 +++-- 1 files changed, 3 insertions(+), 6 deletions(-) diff --git a/net/ipv4

[PATCH 20/21] [TCP]: Introduce tcp_skb_adjacent to detect holes in wq

2007-12-01 Thread Ilpo Järvinen
From: =?ISO-8859-1?q?Ilpo_J=E4rvinen?= [EMAIL PROTECTED] Soon the skbs in the write_queue won't necessary be adjacent ones because part of the queue is stored elsewhere. Verify that there isn't hole between skbs when trying to combine two of them. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED

[PATCH 21/21] [TCP]: Split write queue into two parts (SACKed and not)

2007-12-01 Thread Ilpo Järvinen
be obsolete after this. At least the highest item of recv_sack_cache is very likely redundant. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/linux/tcp.h |2 + include/net/tcp.h | 276 +--- net/ipv4/tcp_input.c | 236

[PATCH net-2.6.25] [TCP]: Two fixes to new sacktag code

2007-11-28 Thread Ilpo Järvinen
similar advancement is not problem because highest_sack was previosly put to point a sacked skb. These problems were located because of problem report from Matt Mathis [EMAIL PROTECTED]. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- ...I verified result from time-seq graphs now, they are right

[PATCH net-2.6.25 (v2)] [TCP]: Two fixes to new sacktag code

2007-11-28 Thread Ilpo Järvinen
On Wed, 28 Nov 2007, Ilpo Järvinen wrote: @@ -1575,7 +1575,7 @@ tcp_sacktag_write_queue(struct sock *sk, struct sk_buff *ack_skb, u32 prior_snd_ continue; } - if (!before(start_seq, tcp_highest_sack_seq(tp))) { + if (tp

[PATCH net-2.6.25] Fix pcounter build error without CONFIG_SMP

2007-11-26 Thread Ilpo Järvinen
/linux/pcounter.h:87: error: 'struct pcounter' has no member named 'value' make[1]: *** [ipc/mqueue.o] Error 1 make: *** [ipc] Error 2 Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/linux/pcounter.h |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/include/linux

[PATCH net-2.6.25] [TCP]: Move FRTO checks out from write queue abstraction funcs

2007-11-23 Thread Ilpo Järvinen
Better place exists in update_send_head (other non-queue related adjustments are done there as well) which is the only caller of tcp_advance_send_head (now that the bogus call from mtu_probe is gone). Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- include/net/tcp.h |5 - net

Re: [PATCH net-2.6.25] [TCP]: Move FRTO checks out from write queue abstraction funcs

2007-11-23 Thread Ilpo Järvinen
On Fri, 23 Nov 2007, Herbert Xu wrote: On Fri, Nov 23, 2007 at 02:25:08PM +0200, Ilpo Järvinen wrote: Better place exists in update_send_head (other non-queue related adjustments are done there as well) which is the only caller of tcp_advance_send_head (now that the bogus call from

Re: [RFC PATCH 1/2] [TCP]: MTUprobe: receiver window data available checks fixed

2007-11-22 Thread Ilpo Järvinen
On Thu, 22 Nov 2007, Herbert Xu wrote: On Wed, Nov 21, 2007 at 06:01:27PM +0200, Ilpo Järvinen wrote: Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] Thanks for the patch Ilpo! I've just got a couple small questions. ...Thanks for actually commenting it. :-) @@ -1307,6 +1308,7

[RFC PATCH 0/2]: TCP MTUprobe fixes

2007-11-21 Thread Ilpo Järvinen
Hi all, Here are two other things in MTU probe code that caught my attention while attempting to figure out the sk_send_head usage there (sent patch to that earlier). The latter here is not strictly speaking a fix but the original code has striking complexity to perform a query which

[RFC PATCH 2/2] [TCP] MTUprobe: Cleanup send queue check (no need to loop)

2007-11-21 Thread Ilpo Järvinen
. Use of write_seq check guarantees that there's a valid skb in send_head so I removed the extra check. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED] --- net/ipv4/tcp_output.c |7 +-- 1 files changed, 1 insertions(+), 6 deletions(-) diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c

[RFC PATCH 1/2] [TCP]: MTUprobe: receiver window data available checks fixed

2007-11-21 Thread Ilpo Järvinen
account packets that are necessary to trigger fast retransmit [RFC4821]. Location of snd_wnd probe_size/size_needed check is bogus because it will cause the other if() match as well (due to snd_nxt = snd_una invariant). Removed dead obvious comment. Signed-off-by: Ilpo Järvinen [EMAIL PROTECTED

Re: [RFC PATCH 09/10] [TCP]: Rewrite SACK block processing sack_recv_cache use

2007-11-20 Thread Ilpo Järvinen
On Mon, 19 Nov 2007, David Miller wrote: From: Ilpo_Järvinen [EMAIL PROTECTED] Date: Fri, 16 Nov 2007 15:44:40 +0200 (EET) Besides the log(n) search for which patches already exists, only O(new information) scan start..end range would be necessary. Or had you something else in mind

<    1   2   3   4   5   6   >