On Fri, Jan 13, 2012 at 7:47 AM, Ralph Castain <r...@open-mpi.org> wrote:
> I've been digging further into this, and I believe I have much of it resolved 
> now. However, I have encountered a problem that appears to be something in 
> libevent itself.
>
> I configured libevent with debug enabled, and turned it on at execution - and 
> was barraged by:
>
> [warn] select: Invalid argument
>
> Digging further into the reason, I found that the message comes from the 
> following code in select_dispatch (file select.c):

Weird that you're using select.c; nearly any other backend would be faster.

>
>        res = select(nfds, sop->event_readset_out,
>            sop->event_writeset_out, NULL, tv);
>
>        EVBASE_ACQUIRE_LOCK(base, th_base_lock);
>
>        check_selectop(sop);
>
>        if (res == -1) {
>                if (errno != EINTR) {
>                        event_warn("select");
>                        return (-1);
>                }
>
>                return (0);
>        }
>
> The timeout value being supplied to select_dispatch is being corrupted after 
> the first time thru the routine - it comes into the routine the first time as 
> {0, 0}, but is an illegal value thereafter. Resetting the timeout to the 
> original value resolves the problem.

What kind of illegal value are you seeing, coming from where?  Are you
using the common_timeout code?  What are you doing to "reset the
timeout" ?

-- 
Nick
***********************************************************************
To unsubscribe, send an e-mail to majord...@freehaven.net with
unsubscribe libevent-users    in the body.

Reply via email to