Re: [PATCH] /dev/epoll update ...

Dan Kegel (dank@kegel.com)
Tue, 25 Sep 2001 02:25:31 -0700


Jamie Lokier wrote:
> > Anyway there's a pretty good patch ( http://www.luban.org/GPL/gpl.html ),
> > that has been tested here :
> >
> > http://www.xmailserver.org/linux-patches/nio-improve.html
> >
> > that implement the signal-per-fd mechanism and it achieves a very good
> > scalability too.
>
> It has the bonus of requiring no userspace changes too. Lovely!

Well, not quite *no* userspace changes, but not many. You have to
use si_band rather than si_code (and with Luban's version, you also
need to set a new flag).

It has some locking problems that only show up under very heavy use,
so caveat emptor. I put together a stress test
(http://www.kegel.com/dkftpbench/ with the -sf option);
run that against betaftpd, and around 4500 ftp sessions, you might
see it crash because a signal comes in while the file table is expanding...

(By the way, I finally updated http://www.kegel.com/c10k.html to
distinguish properly between edge-triggered readiness notification
methods and level-triggered ones. Hope that helps dispel some
confusion in the future.)
- Dan
-
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/