From: Eric Dumazet <dada1@cosmosbay.com>
To: Linus Torvalds <torvalds@osdl.org>
Cc: dipankar@in.ibm.com, Jean Delvare <khali@linux-fr.org>,
Serge Belyshev <belyshev@depni.sinp.msu.ru>,
LKML <linux-kernel@vger.kernel.org>,
Andrew Morton <akpm@osdl.org>,
Manfred Spraul <manfred@colorfullife.com>
Subject: Re: VFS: file-max limit 50044 reached
Date: Mon, 17 Oct 2005 21:39:20 +0200 [thread overview]
Message-ID: <4353FDE8.8070909@cosmosbay.com> (raw)
In-Reply-To: <Pine.LNX.4.64.0510171218490.3369@g5.osdl.org>
Linus Torvalds a écrit :
>
> On Mon, 17 Oct 2005, Eric Dumazet wrote:
>
>>Thats strange, because on my tests it seems that I dont have one reschedule
>>for 'maxbatch' items. Doing 'grep filp /proc/slabinfo' it seems I have one
>>'schedule' then filp count goes back to 1000.
>
>
> Hmm.
>
> I think you're right, but for all the wrong reasons.
>
> "maxbatch" ends up not actually having any real effect in the end: after
> the tasklet ends up running in softirqd, softirqd will actually keep on
> calling the tasklet code until it doesn't get rescheduled any more ;)
>
> So it will do "maxbatch" RCU entries, reschedule itself, return, and
> immediately get called again.
>
> Heh.
>
> The _good_ news is that since it ends up running in softirqd (after the
> first ten times - the softirq code in kernel/softirq.c will start off
> calling it ten times _first_), it can be scheduled away, so it actually
> ends up helping latency.
>
> Which means that we actually end up doing exactly the right thing,
> although for what appears to be the wrong reasons (or very lucky ones).
>
> The _bad_ news is that softirqd is running at nice +19, so I suspect that
> with some unlucky patterns it's probably pretty easy to make sure that
> ksoftirqd doesn't actually run very often at all!
>
> Gaah. So close, yet so far. I'm _almost_ willing to just undo my "make
> maxbatch huge" patch, and apply your patch, because now that I see how it
> all happens to work together I'm convinced that it _almost_ works. Even if
> it seems to be mostly by luck(*) rather than anything else.
>
:)
What about call_rcu_bh() which I left unchanged ? At least one of my
production machine cannot live very long unless I have maxbatch = 300, because
of an insane large tcp route cache (and one of its CPU almost filled by
softirq NIC processing)
> Linus
>
> (*) Not strictly true. It may not be by design of the RCU code itself, but
> it's definitely by design of the softirq's being designed to be robust and
> have good latency behaviour. So it does work by design, but it works by
> softirq design rather than RCU design ;)
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
>
next prev parent reply other threads:[~2005-10-17 19:39 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-10-15 13:19 VFS: file-max limit 50044 reached Serge Belyshev
2005-10-15 17:53 ` Serge Belyshev
2005-10-16 16:23 ` Dipankar Sarma
2005-10-16 18:51 ` Serge Belyshev
2005-10-16 18:56 ` Dipankar Sarma
2005-10-17 2:19 ` Linus Torvalds
2005-10-17 4:43 ` Serge Belyshev
2005-10-17 8:32 ` Jean Delvare
2005-10-17 8:46 ` Dipankar Sarma
2005-10-17 9:10 ` Eric Dumazet
2005-10-17 9:14 ` Christoph Hellwig
2005-10-17 9:25 ` Eric Dumazet
2005-10-17 10:32 ` Dipankar Sarma
2005-10-17 12:10 ` [RCU problem] was " Eric Dumazet
2005-10-17 12:31 ` linux-os (Dick Johnson)
2005-10-17 12:36 ` Dipankar Sarma
2005-10-17 13:28 ` Eric Dumazet
2005-10-17 13:33 ` Dipankar Sarma
2005-10-17 14:54 ` Eric Dumazet
2005-10-17 15:42 ` Linus Torvalds
2005-10-17 16:01 ` Eric Dumazet
2005-10-17 16:16 ` Linus Torvalds
2005-10-17 16:29 ` Dipankar Sarma
2005-10-17 18:01 ` Eric Dumazet
2005-10-17 18:31 ` Dipankar Sarma
2005-10-17 19:00 ` Linus Torvalds
2005-10-17 18:37 ` Linus Torvalds
2005-10-17 19:12 ` Eric Dumazet
2005-10-17 19:30 ` Linus Torvalds
2005-10-17 19:39 ` Eric Dumazet [this message]
2005-10-17 20:14 ` Linus Torvalds
2005-10-17 20:25 ` Christopher Friesen
2005-10-17 20:24 ` Dipankar Sarma
2005-10-18 15:55 ` Christopher Friesen
2005-10-17 20:38 ` Linus Torvalds
2005-10-17 20:33 ` Dipankar Sarma
2005-10-17 22:40 ` Linus Torvalds
2005-10-17 22:59 ` Paul E. McKenney
2005-10-18 9:46 ` Eric Dumazet
2005-10-18 16:22 ` Paul E. McKenney
2005-10-17 18:15 ` Dipankar Sarma
2005-10-17 18:40 ` Linus Torvalds
2005-10-17 16:23 ` Dipankar Sarma
2005-10-17 16:31 ` Lee Revell
2005-10-17 16:20 ` Dipankar Sarma
2005-10-17 2:34 ` Linus Torvalds
2005-10-17 3:54 ` Roland Dreier
2005-10-17 11:54 ` Dipankar Sarma
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=4353FDE8.8070909@cosmosbay.com \
--to=dada1@cosmosbay.com \
--cc=akpm@osdl.org \
--cc=belyshev@depni.sinp.msu.ru \
--cc=dipankar@in.ibm.com \
--cc=khali@linux-fr.org \
--cc=linux-kernel@vger.kernel.org \
--cc=manfred@colorfullife.com \
--cc=torvalds@osdl.org \
/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