Which plugins for OSProcess?
David T. Lewis
lewis at mail.msen.com
Wed Jan 31 03:18:12 UTC 2007
On Tue, Jan 30, 2007 at 10:57:17AM -0800, John M McIntosh wrote:
>
> On Jan 30, 2007, at 4:27 AM, David T. Lewis wrote:
>
> >That said, that actual lockup appears to be happening in AioPlugin,
> >which invokes the aio functions in the VM. The aio functions depend
> >on select(), and it looks like this is where you are hanging up.
> >I certainly can't think of anything in the 3.9 image (versus 3.8)
> >that could be triggering it, so it seems more likely to be something
> >in the VM, either the AIO plugin or the underlying aio functions.
>
> I noted in the 3.9 unix source code has HAVE_NANOSLEEP defined and
> when the VM sleeps we
> call nanosleep() then aioPoll twice with the value of zero. But then
> aioPoll() returns early since the value is
> zero and it never invokes select().
>
> Perhaps some unix folks can comment if there are any interesting side
> effects of this behaviour, such as never calling select()
It looks OK to me, aioPoll() only bypasses the select() if there are no
file descriptors being watched.
/* get out early if there is no pending i/o and no need to relinquish cpu */
if ((maxFd == 0) && (microSeconds == 0))
return 0;
>
> I'll note issues with MC servers based on 3.9 where they hang, and
> a swirl of a mouse on a VNC display of their X-11 display restores
> functionality.
hmmm....
Dave
More information about the Squeak-dev
mailing list
|