Messages in this thread | | | Date | Mon, 25 Jun 2001 08:30:28 -0700 (PDT) | From | Davide Libenzi <> | Subject | Re: Collapsing RT signals ... |
| |
On 25-Jun-2001 Dan Kegel wrote: > 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.
I'll do for sure, thank You.
> > (See also http://www.kegel.com/c10k.html#nb.sigio )
I already knew Your document, pretty cool.
- Davide
- 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/
| |