netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Andi Kleen <andi@firstfloor.org>
To: Eric Dumazet <dada1@cosmosbay.com>
Cc: Andi Kleen <andi@firstfloor.org>, Rick Jones <rick.jones2@hp.com>,
	Evgeniy Polyakov <johnpol@2ka.mipt.ru>,
	Denys Fedoryshchenko <denys@visp.net.lb>,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: loaded router, excessive getnstimeofday in oprofile\
Date: Wed, 27 Aug 2008 20:32:16 +0200	[thread overview]
Message-ID: <20080827183216.GZ26610@one.firstfloor.org> (raw)
In-Reply-To: <48B58E6B.1030302@cosmosbay.com>

> Doing the expensive timestamping in a possibly delayed thread (ie some 
> milliseconds
> after hardware notification) is wrong/useless.

We had this discussion earlier, please review the thread I linked to. 

Note that interrupts can be arbitarily delayed too (both by cli
and by interrupt mitigation), even on a non RT kernel.

If you want exact notification (packet arriving at your NIC's buffers) you 
need NIC hardware support (and more and more NICs have it[1]). 
If you do it in software then even the interrupt is at the end of a long 
queue with a pretty much arbitary delay. Doing it in socket context is 
just one queue more. It's pretty much all arbitary.

The argument for doing it as late as possible is the prohibitive 
cost on some systems as people notice all the time.

-Andi

[1] Unfortunately not necessarily synchronized with system time.

  reply	other threads:[~2008-08-27 18:29 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-08-22  1:57 loaded router, excessive getnstimeofday in oprofile Denys Fedoryshchenko
2008-08-22  2:23 ` Denys Fedoryshchenko
2008-08-26  9:51 ` Jarek Poplawski
2008-08-26 10:29   ` Denys Fedoryshchenko
2008-08-26 10:47     ` Jarek Poplawski
2008-08-26 10:49       ` Denys Fedoryshchenko
2008-08-26 11:07         ` Jarek Poplawski
2008-08-26 11:15           ` Jarek Poplawski
2008-08-26 11:16             ` Denys Fedoryshchenko
2008-08-26 11:32               ` Jarek Poplawski
2008-08-26 11:32                 ` Denys Fedoryshchenko
2008-08-26 20:14 ` Evgeniy Polyakov
2008-08-26 20:44   ` Eric Dumazet
2008-08-26 20:51     ` Evgeniy Polyakov
2008-08-27 12:09       ` Denys Fedoryshchenko
2008-08-27 12:36         ` Evgeniy Polyakov
2008-08-27 14:00           ` Denys Fedoryshchenko
2008-08-27 14:23             ` Evgeniy Polyakov
2008-08-27 12:54       ` Andi Kleen
2008-08-27 16:07         ` Rick Jones
2008-08-27 16:27           ` Andi Kleen
2008-08-27 16:49             ` Rick Jones
2008-08-27 16:56               ` Andi Kleen
2008-08-27 16:57                 ` Rick Jones
2008-08-27 17:27                 ` Eric Dumazet
2008-08-27 18:32                   ` Andi Kleen [this message]
2008-08-27 22:23                     ` loaded router, excessive getnstimeofday in oprofile\ David Miller
2008-08-27 22:38                       ` Andi Kleen
2008-08-27 22:18             ` loaded router, excessive getnstimeofday in oprofile David Miller
2008-08-27 22:39               ` Andi Kleen
2008-08-28  0:45                 ` Nick Piggin
2008-08-28  0:48                   ` David Miller
2008-08-28  1:07                     ` Nick Piggin
2008-08-27 16:17         ` Stephen Hemminger
2008-08-27 17:14           ` Jarek Poplawski
2008-08-27 21:34         ` David Miller
2008-08-28  2:39           ` Jason Uhlenkott
2008-08-28  3:10             ` David Miller
2008-08-28  6:28               ` Joe Malicki
2008-08-28  7:22                 ` Andi Kleen
2008-08-28 15:02                   ` Denys Fedoryshchenko
2008-08-28 19:01                     ` Ilpo Järvinen
2008-08-28 19:31                     ` David Miller
2008-08-28 16:48                   ` Denys Fedoryshchenko
2008-08-28 16:56                     ` Andi Kleen
2008-08-28 18:57                     ` Eric Dumazet
2008-08-28 19:25                       ` Denys Fedoryshchenko
2008-08-28 19:37                         ` Eric Dumazet
2008-08-28 19:55                           ` Denys Fedoryshchenko
2008-08-29 15:43                             ` Stephen Hemminger
2008-08-28 19:36                     ` David Miller
2008-08-28 19:59                       ` Denys Fedoryshchenko
2008-08-29 15:21                   ` Joe Malicki
2008-08-29 15:30                     ` Andi Kleen
2008-08-29 15:43                       ` Joe Malicki
2008-08-29 20:43                     ` Evgeniy Polyakov
2008-08-28 18:00                 ` Rick Jones
2008-08-28 19:42                   ` David Miller
2008-08-28 20:29                     ` Rick Jones
2008-08-28 20:32                       ` David Miller
2008-08-28 20:45                         ` Rick Jones
2008-08-28 20:47                           ` David Miller
2008-09-01  2:39                   ` Valdis.Kletnieks
2008-09-01  3:51                     ` David Miller
2008-09-01  4:08                       ` Valdis.Kletnieks
2008-09-01  4:10                         ` David Miller
2008-09-02 17:04                       ` Rick Jones
2008-08-28  3:35 ` Stephen Hemminger
2008-08-28  8:49   ` Denys Fedoryshchenko

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=20080827183216.GZ26610@one.firstfloor.org \
    --to=andi@firstfloor.org \
    --cc=dada1@cosmosbay.com \
    --cc=denys@visp.net.lb \
    --cc=johnpol@2ka.mipt.ru \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=rick.jones2@hp.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;
as well as URLs for NNTP newsgroup(s).