From: Dan Kegel <dank@kegel.com>
To: Davide Libenzi <davidel@xmailserver.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: Collapsing RT signals ...
Date: Sun, 24 Jun 2001 21:21:57 -0700 [thread overview]
Message-ID: <3B36BC65.FF27BBB1@kegel.com> (raw)
Davide Libenzi <davidel@xmailserver.org> wrote:
> I'm making some test with RT signals and looking at how they're implemented
> inside the kernel.
> After having experienced frequent queue overflow signals I looked at how
> signals are queued inside the task_struct.
> There's no signals optimization inside and this make the queue length depending
> on the request rate instead of the number of connections.
> It can happen that two ( or more ) POLL_IN signals are queued with a single
> read() that sweep the buffer leaving other signals to issue reads ( read this
> as user-mode / kernel-mode switch ) that will fail due lack of data.
> So for every "superfluous" signal we'll have two user-mode / kernel-mode
> switches, one for signal delivery and one for a failing read().
> I'm just thinking at a way to optimize the signal delivery that is ( draft ) :
> ...
I agree, the queue overflow case is a pain in the butt.
Before you get too far coding up your idea, have you read
http://marc.theaimsgroup.com/?l=linux-kernel&m=99023775430848&w=2
? He's already implemented and benchmarked a variation on this
idea, maybe you could vet his code. He has taken it a step
further than perhaps you were going to.
(See also http://www.kegel.com/c10k.html#nb.sigio )
- Dan
next reply other threads:[~2001-06-25 4:20 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-06-25 4:21 Dan Kegel [this message]
2001-06-25 15:30 ` Collapsing RT signals Davide Libenzi
2001-06-25 15:43 ` Davide Libenzi
-- strict thread matches above, loose matches on Subject: below --
2001-06-25 1:03 Davide Libenzi
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=3B36BC65.FF27BBB1@kegel.com \
--to=dank@kegel.com \
--cc=davidel@xmailserver.org \
--cc=linux-kernel@vger.kernel.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 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.