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.