[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200703011230.50596.dada1@cosmosbay.com>
Date: Thu, 1 Mar 2007 12:30:50 +0100
From: Eric Dumazet <dada1@...mosbay.com>
To: John find <linux.kernel@...e.fr>
Cc: linux-net@...r.kernel.org, netdev@...r.kernel.org,
Stephen Hemminger <shemminger@...ux-foundation.org>
Subject: Re: CLOCK_MONOTONIC datagram timestamps by the kernel
On Wednesday 28 February 2007 17:07, John wrote:
>
> Consider an idle Linux 2.6.20-rt8 system, equipped with a single PCI-E
> gigabit Ethernet NIC, running on a modern CPU (e.g. Core 2 Duo E6700).
> All this system does is time stamp 1000 packets per second.
>
> Are you claiming that this platform *cannot* handle most packets within
> less than 1 microsecond of their arrival?
Yes I claim it.
You expect too much of this platform, unless "most" means 10 % for
you ;)
If you replace "1 us" by "50 us", then yes, it probably can do it, if "most"
means 99%, (not 99.999 %)
Anyway, if you want to play, you can apply this patch on top of
linux-2.6.21-rc2 (nanosecond resolution infrastruture needs 2.6.21)
I let you do the adjustments for rt kernel.
I compiled it on my i386 machine, and tested it with a patched libpcap/tcpdump
[PATCH] NET : introduce nanosecond time infrastructure and SIOCGSTAMPNS
It appears some machines are *really* fast and that micro second resolution is
a limiting factor.
This patch converts sk_buff timestamp to use new nanosecond infra (added in
2.6.21), and introduces a new ioctl SIOCGSTAMPNS to let applications access
nanosecond resolution (ie a timespec instead of timeval)
Signed-off-by: Eric Dumazet <dada1@...mosbay.com>
fs/compat_ioctl.c | 17 ++++++++
include/asm-alpha/sockios.h | 1
include/asm-arm26/sockios.h | 3 +
include/asm-avr32/sockios.h | 3 +
include/asm-cris/sockios.h | 3 +
include/asm-frv/sockios.h | 3 +
include/asm-h8300/sockios.h | 3 +
include/asm-i386/sockios.h | 3 +
include/asm-ia64/sockios.h | 3 +
include/asm-m32r/sockios.h | 3 +
include/asm-m68k/sockios.h | 3 +
include/asm-mips/sockios.h | 3 +
include/asm-parisc/sockios.h | 3 +
include/asm-powerpc/sockios.h | 3 +
include/asm-s390/sockios.h | 3 +
include/asm-sh/sockios.h | 1
include/asm-sh64/sockios.h | 1
include/asm-sparc/sockios.h | 3 +
include/asm-sparc64/sockios.h | 3 +
include/asm-v850/sockios.h | 3 +
include/asm-x86_64/sockios.h | 3 +
include/asm-xtensa/sockios.h | 3 +
include/linux/skbuff.h | 42 +++++++++++++++-------
include/net/compat.h | 1
include/net/sock.h | 16 +++++---
net/appletalk/ddp.c | 3 +
net/atm/ioctl.c | 3 +
net/ax25/af_ax25.c | 4 ++
net/bridge/netfilter/ebt_ulog.c | 2 -
net/compat.c | 31 +++++++++++++---
net/core/dev.c | 14 +++----
net/core/skbuff.c | 4 +-
net/core/sock.c | 28 +++++++++++---
net/econet/af_econet.c | 4 +-
net/ipv4/af_inet.c | 3 +
net/ipv4/ip_fragment.c | 6 +--
net/ipv4/tcp_output.c | 2 -
net/ipv6/af_inet6.c | 3 +
net/ipv6/netfilter/nf_conntrack_reasm.c | 6 +--
net/ipv6/reassembly.c | 6 +--
net/ipx/af_ipx.c | 2 -
net/netrom/af_netrom.c | 5 ++
net/packet/af_packet.c | 8 ++--
net/rose/af_rose.c | 2 +
net/sunrpc/svcsock.c | 9 ++--
net/wanrouter/af_wanpipe.c | 3 +
net/x25/af_x25.c | 12 ++++++
47 files changed, 216 insertions(+), 77 deletions(-)
View attachment "net_nanosec_stamp.patch" of type "text/plain" (31833 bytes)
Powered by blists - more mailing lists