From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: To: 9fans@cse.psu.edu From: lucio@proxima.alt.za MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Subject: [9fans] _SLEEP.s Date: Thu, 1 Apr 2004 19:06:56 +0200 Topicbox-Message-UUID: 4c98d07e-eacd-11e9-9e20-41e7f4b1d025 When attempting to debug tcl 7.6, one of the tests that fails uses select() and seems to get caught in an infinite loop. Acid reports: acid: lstk() _SLEEP()+0x7 /sys/src/ape/lib/ap/syscall/_SLEEP.s:5 select(timeout=0x5d2d0,rfds=0x0,wfds=0x0,efds=0x0,nfds=0x0)+0x5e3 /sys/src/ape/lib/ap/plan9/_buf.c:280 t=0xa f=0x7fffd3c4 i=0x8a43a26c n=0xe9d6f slots=0x0 err=0x7fffd3bc Tcl_Sleep(ms=0xa)+0xe8 /pub/src/tcl7.6/plan9/tclPlan9Notfy.c:319 before=0x8a43a26c after=0x8a43a26c [ ... ] and what baffles me is that the stated syscall code is not to be found in the given location. The nearest I came up with was in the .../gnu/ape hierarchy. I checked sources and that also has no entries other than the mkfile in /sys/src/ape/lib/ap/syscall so perhaps somebody can explain how that mkfile works, at least in broad terms. Lastly, can anyone hazard a reasonable guess as to how the sleep syscall actually gets itself in a loop? The timeout value is "10", if acid is not lying. ++L