All of lore.kernel.org
 help / color / mirror / Atom feed
From: Luca Deri <deri@ntop.org>
To: Robert Olsson <Robert.Olsson@data.slu.se>
Cc: hadi@cyberus.ca, Jason Lunz <lunz@falooley.org>,
	netdev@oss.sgi.com, ntop-misc@fuji.unipi.it
Subject: Re: Luca Deri's paper: Improving Passive Packet Capture: Beyond	Device Polling
Date: Wed, 07 Apr 2004 09:03:11 +0200	[thread overview]
Message-ID: <4073A7AF.5060401@ntop.org> (raw)
In-Reply-To: <16498.52551.712261.214192@robur.slu.se>

Robert Olsson wrote:

>jamal writes:
>
> > I didnt follow that discussion; archived for later entertaining reading.
> > My take on it was it is 2.6.x related and in particular the misbehavior
> > observed has to do with use of rcu in the route cache.
> > 
> > > It appears this problem became worse in 2.6 with HZ=1000, because now
> > > the napi rx softirq work is being done 10X as much on return from the
> > > timer interrupt.  I'm not sure if a solution was reached.
> > 
> > Robert?
>
> Well it's a general problem controlling softirq/user and the RCU locking
> put this on our agenda as the dst hash was among the first applications 
> to use the RCU locking. Which in turn had problem doing progress in hard 
> softirq environment which happens during route cache DoS.
>
> NAPI is a part of RX_SOFTIRQ which is well-behaved. NAPI addresses only 
> irq/sofirq problem and is totally innocent for do_sofirq() run from other 
> parts of kernel causing userland starvation.
>
> Under normal hi-load conditions RX_SOFTIRQ schedules itself when the
> netdev_max_backlog is done. do_softirq sees this and defers execution
> to ksoftirqd and things get under (scheduler) control.
>
> During route DoS, code that does a lot do_softirq() is run for hash and 
> fib-lookup, GC etc. The effect is that ksoftirqd is more or less bypassed.
> Again it's a general problem... We are just the unlucky guys getting 
> into this.
>
> I don't know if packet capture tests done by Luca ran into this problems.
> A profile could have helped...
>  
>

Robert,
yes I run into this problems and I have solved using the RTIRQ kernel patch.

Cheers, Luca

> Cheers.
>						--ro 
>  
>


-- 
Luca Deri <deri@ntop.org>	http://luca.ntop.org/
Hacker: someone who loves to program and enjoys being
clever about it - Richard Stallman

  reply	other threads:[~2004-04-07  7:03 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-03-30 14:23 Luca Deri's paper: Improving Passive Packet Capture: Beyond Device Polling Yusuf Goolamabbas
2004-04-03 23:02 ` jamal
2004-04-05 16:03   ` Jason Lunz
2004-04-06 10:30     ` P
2004-04-06 12:25       ` Luca Deri
2004-04-06 16:01         ` Jason Lunz
2004-04-06 18:40           ` Ben Greear
     [not found]         ` <1081262228.1046.25.camel@jzny.localdomain>
2004-04-07  6:59           ` Luca Deri
2004-04-07 12:20             ` jamal
     [not found]         ` <E1BAt0s-0003V8-00@crown.reflexsecurity.com>
2004-04-07  7:11           ` Luca Deri
2004-04-06 14:18     ` jamal
2004-04-06 15:31       ` Robert Olsson
2004-04-07  7:03         ` Luca Deri [this message]
2004-04-07 15:11           ` [Ntop-misc] " Robert Olsson

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=4073A7AF.5060401@ntop.org \
    --to=deri@ntop.org \
    --cc=Robert.Olsson@data.slu.se \
    --cc=hadi@cyberus.ca \
    --cc=lunz@falooley.org \
    --cc=netdev@oss.sgi.com \
    --cc=ntop-misc@fuji.unipi.it \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.