[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20080228233514.63b7136e.billfink@mindspring.com>
Date: Thu, 28 Feb 2008 23:35:14 -0500
From: Bill Fink <billfink@...dspring.com>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: "Ilpo =?ISO-8859-1?Q?J=E4rvinen" ?= <ilpo.jarvinen@...sinki.fi>,
Guillaume Chazarain <guichaz@...il.com>,
Giangiacomo Mariotti <giangiacomo_mariotti@...oo.com>,
LKML <linux-kernel@...r.kernel.org>,
Netdev <netdev@...r.kernel.org>
Subject: Re: WARNING: at net/ipv4/tcp_input.c:2054 tcp_mark_head_lost()
On Thu, 28 Feb 2008, Andrew Morton wrote:
> On Thu, 28 Feb 2008 10:22:27 +0200 (EET) "Ilpo Järvinen" <ilpo.jarvinen@...sinki.fi> wrote:
>
> > [PATCH] TCP debug S+L (for 2.6.25-rcs, incompatible with 2.6.24.y)
> >
> > ---
> > include/net/tcp.h | 9 +++-
> > net/ipv4/tcp_input.c | 18 +++++++-
> > net/ipv4/tcp_ipv4.c | 127 +++++++++++++++++++++++++++++++++++++++++++++++++
> > net/ipv4/tcp_output.c | 23 +++++++--
>
> I'll put this in -mm, see if we can flush anything out. Please let me know
> if/when it's obsolete, updated, etc.
>
> What is "S+L"?
I'll let Ilpo give the definitive answer. But to test if I'm starting
to grasp this, I'll give my understanding. I believe 'S' means that a
transmitted TCP skb has been acknowledged by a SACK, while 'L' means
that a transmitted SKB is believed lost. Since the 'S' state implies
that the packet has actually been successfully received, it should not be
possible for it to be considered lost ('L' state). Thus an "S+L" state
for a TCP skb is an internally inconsistent state and an indication of
a TCP bug.
Anyone feel free to correct me if I'm way off base in my understanding.
-Bill
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists