Re: strace, accept(), ERESTARTSYS and EINTR

From: Phil Endecott
Date: Sat Jan 05 2008 - 09:25:08 EST


Jiri Slaby wrote:
On 01/05/2008 11:31 AM, Jiri Slaby wrote:
Do not remove CCed people.

On 01/05/2008 02:38 AM, Phil Endecott wrote:
timezone go and play with http://demos.anyterm.org/bastet/anyterm.html
while I sleep....

Service Temporarily Unavailable

It failed at 0325 GMT thanks to the many of you who played, but unfortunately it was an assert somewhere unrelated that failed. I'll start it up again shortly.

bastet? the tetris in which you always get the worst block you can get at the
moment :)?

That's the one! At the time it was the only game that worked with my VT100-to-HTML conversion.

Do you serve the pages by the code which causes the problems?

Yes.

Could we see more of the server's code, even with multi-threading, which you
mentioned etc.

It's all here: https://svn.chezphil.org/anyterm/trunk/daemon/
In particular: https://svn.chezphil.org/libpbe/trunk/src/Daemon.cc
However, there's a lot of code and I know that there are bugs in it. I just want to focus on the kernel-related issue that the strace fragment that I posted brings up: even if my user code gets completely screwed up (corrupts its stack, runs out of FDs/VM/threads etc), I don't think that I should see in the strace output that accept() has returned ERESTARTSYS. I should always see accept() returning a legitimate result before seeing that thread doing the next syscall. Right?


Cheers, Phil.



--
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/