Netdev List
 help / color / mirror / Atom feed
From: Eric Dumazet <eric.dumazet@gmail.com>
To: Alex Dubov <oakad@yahoo.com>
Cc: netdev@vger.kernel.org
Subject: Re: Bad TCP timestamps on non-PC platforms
Date: Thu, 06 Jan 2011 09:09:16 +0100	[thread overview]
Message-ID: <1294301356.2723.73.camel@edumazet-laptop> (raw)
In-Reply-To: <219643.83181.qm@web37604.mail.mud.yahoo.com>

Le mercredi 05 janvier 2011 à 22:55 -0800, Alex Dubov a écrit :
> Greetings.
> I'm dealing with 2.6.37-rc7 kernel on MPC8548 platform.
> 
> It so appears, that recent kernels have sysctl_tcp_timestamps set to "1"
> by default.
> 
> On embedded platforms, where real time clock is initialized lately or
> absent outright, this causes TSval field of outgoing TCP packets to be
> set to some garbage value, in my case in the vicinity of 0xffffffff. As a
> result, other Linux machines silently drop such packets, preventing normal
> completion of network boot or any other TCP dependent operation.
> 
> Therefore, I feel, two changes are necessary (I can send in a patch):
> 1. Make sysctl_tcp_timestamps value config-time selectable (it must be
> disabled by default on machines without RTC).
> 2. When re-enabling tcp_timestamps through sysctl, reset the timestamp
> counter to the current system clock value.
> 
> And an optional, tricky one:
> 3. Postpone TCP timestamp counter initialization until RTC is actually
> available (if RTC is connected to i2c bus, TCP is initialized well ahead
> of it).
> 

I am trying to understand the problem, but I guess you hit something not
related to RTC at all.

#define tcp_time_stamp		((__u32)(jiffies))
#define INITIAL_JIFFIES ((unsigned long)(unsigned int) (-300*HZ))

jiffies can be ZERO 300 seconds after boot.

It should not matter with RFC1323. Some TCP session could in theory be
done without TCP timestamps being activated (because SYN paquet would
carry a ZERO  tsval/tsecr), but this should not prevents normal network
operation.

Are you sure the "other linux machines" dont have
strange /etc/sysctl.conf settings ?




  reply	other threads:[~2011-01-06  8:09 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-06  6:55 Bad TCP timestamps on non-PC platforms Alex Dubov
2011-01-06  8:09 ` Eric Dumazet [this message]
2011-01-07  1:55   ` Alex Dubov
2011-01-07  2:11     ` Eric Dumazet
2011-01-07  6:39       ` Alex Dubov
2011-01-06 16:44 ` David Miller
  -- strict thread matches above, loose matches on Subject: below --
2011-01-10  3:41 Alex Dubov
2011-01-10  3:57 ` Stephen Hemminger
2011-01-10  6:33   ` Alex Dubov
2011-01-10  7:07     ` Eric Dumazet
2011-01-10  7:19       ` David 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=1294301356.2723.73.camel@edumazet-laptop \
    --to=eric.dumazet@gmail.com \
    --cc=netdev@vger.kernel.org \
    --cc=oakad@yahoo.com \
    /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