Re: [patch 00/13] Syslets, "Threadlets", generic AIO support, v3

From: Ingo Molnar
Date: Thu Mar 01 2007 - 06:55:37 EST



* Ingo Molnar <mingo@xxxxxxx> wrote:

> > I also changed client socket to nonblocking mode with the same result
> > in epoll server. If you will find it broken, please send me corrected
> > to test too.
>
> this line in evserver_kevent.c looks a bit fishy:

this one in evserver_kevent.c looks problematic too:

shutdown(s, SHUT_RDWR);
close(s);

as evserver_epoll.c only does:

close(s);

again, there might be TCP control flow differences due to this. [ Or the
removal of this shutdown() call might be a small speedup for the kevent
case ;) ]

Also, the order of fd and socket close() is different in the two cases.
It shouldnt make any difference - but that too just makes the results
harder to trust. Would it be so hard to introduce a single
handle_web_request() function that is exactly the same in the two tests?
All the queueing details (which are of course different in the epoll and
the kevent case) should be in the client function, which calls
handle_web_request().

Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/