Re: [Libevent-users] Signals and priority queues

2012-01-13 Thread Ralph Castain
On Jan 13, 2012, at 12:56 PM, Nick Mathewson wrote: > On Fri, Jan 13, 2012 at 2:52 PM, Ralph Castain wrote: >> >> Hah! I see what happened. I removed it because it was marked as an OMPI >> change: >> >> - /OMPI CHANGE/ >> - /* set a timeval to avoid

Re: [Libevent-users] Signals and priority queues

2012-01-13 Thread Nick Mathewson
On Fri, Jan 13, 2012 at 2:52 PM, Ralph Castain wrote: > > Hah! I see what happened. I removed it because it was marked as an OMPI > change: > > -               /    OMPI CHANGE    / > -               /* set a timeval to avoid blocking select on Windows */ > -#ifndef WIN32 > -            

Re: [Libevent-users] Signals and priority queues

2012-01-13 Thread Ralph Castain
On Jan 13, 2012, at 12:40 PM, Nick Mathewson wrote: >>if (ev == NULL) { >>/* if no time-based events are active wait for I/O */ >>fprintf(stderr, "NO TIME-BASED EVENTS ACTIVE - tvp %d\n", (tv == >> NULL) ? -1 : (int)tv->tv_sec); >>goto out; >>

Re: [Libevent-users] Signals and priority queues

2012-01-13 Thread Ralph Castain
On Jan 13, 2012, at 12:40 PM, Nick Mathewson wrote: >>if (ev == NULL) { >>/* if no time-based events are active wait for I/O */ >>fprintf(stderr, "NO TIME-BASED EVENTS ACTIVE - tvp %d\n", (tv == >> NULL) ? -1 : (int)tv->tv_sec); >>goto out; >>

Re: [Libevent-users] Signals and priority queues

2012-01-13 Thread Nick Mathewson
>        if (ev == NULL) { >                /* if no time-based events are active wait for I/O */ >            fprintf(stderr, "NO TIME-BASED EVENTS ACTIVE - tvp %d\n", (tv == > NULL) ? -1 : (int)tv->tv_sec); >                goto out; >        } > That's not Libevent's code! Libevent, even in 2

Re: [Libevent-users] Signals and priority queues

2012-01-13 Thread Ralph Castain
On Jan 13, 2012, at 9:53 AM, Nick Mathewson wrote: > On Fri, Jan 13, 2012 at 11:46 AM, Ralph Castain wrote: > >>> Adding some assertions in event_add_internal might track this down. >>> Trivially, you could do >>> if (tv && !tv_is_absolute) { >>> /* waiting one billion seconds should be

Re: [Libevent-users] Signals and priority queues

2012-01-13 Thread Nick Mathewson
On Fri, Jan 13, 2012 at 11:46 AM, Ralph Castain wrote: >> Adding some assertions in event_add_internal might track this down. >> Trivially, you could do >>   if (tv && !tv_is_absolute) { >>       /* waiting one billion seconds should be enough for anyone */ >>       EVUTIL_ASSERT(tv->tv_sec < 100

Re: [Libevent-users] Signals and priority queues

2012-01-13 Thread Ralph Castain
On Jan 13, 2012, at 8:29 AM, Nick Mathewson wrote: > On Fri, Jan 13, 2012 at 10:13 AM, Ralph Castain wrote: > >>> What kind of illegal value are you seeing, >> >> 1326467251, 774650 > > Okay, that looks like it's the actual current time! I wonder why that > would make select() give an error,

Re: [Libevent-users] Signals and priority queues

2012-01-13 Thread Nick Mathewson
On Fri, Jan 13, 2012 at 10:13 AM, Ralph Castain wrote: >> What kind of illegal value are you seeing, > > 1326467251, 774650 Okay, that looks like it's the actual current time! I wonder why that would make select() give an error, though. Maybe because the current time plus that many seconds exc

Re: [Libevent-users] Signals and priority queues

2012-01-13 Thread Ralph Castain
On Jan 13, 2012, at 7:29 AM, Nick Mathewson wrote: > On Fri, Jan 13, 2012 at 7:47 AM, Ralph Castain 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

Re: [Libevent-users] Signals and priority queues

2012-01-13 Thread Nick Mathewson
On Fri, Jan 13, 2012 at 7:47 AM, Ralph Castain 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

Re: [Libevent-users] Signals and priority queues

2012-01-13 Thread Ralph Castain
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 argume

Re: [Libevent-users] Signals and priority queues

2012-01-06 Thread Ralph Castain
Afraid I'm going to have to eat my words here, Nick. It looks like something is going on in the code - not entirely sure just where yet (mine or libevent). I've installed a clean version of 2.0.13 (removing everything but the glue) into OMPI, and the problems persist. I've also tried converting

Re: [Libevent-users] Signals and priority queues

2012-01-06 Thread Ralph Castain
On Jan 6, 2012, at 7:02 AM, Nick Mathewson wrote: > On Fri, Jan 6, 2012 at 7:24 AM, Ralph Castain wrote: >> If it helps, I have now confirmed that I *can* activate the t2 event during >> the t1func callback in my example *provided* I called event_assign on it >> prior to entering event_base_lo

Re: [Libevent-users] Signals and priority queues

2012-01-06 Thread Nick Mathewson
On Fri, Jan 6, 2012 at 7:24 AM, Ralph Castain wrote: > If it helps, I have now confirmed that I *can* activate the t2 event during > the t1func callback in my example *provided* I called event_assign on it > prior to entering event_base_loop. It is also okay for me to event_add the t2 > event d

Re: [Libevent-users] Signals and priority queues

2012-01-06 Thread Ralph Castain
If it helps, I have now confirmed that I *can* activate the t2 event during the t1func callback in my example *provided* I called event_assign on it prior to entering event_base_loop. It is also okay for me to event_add the t2 event during the callback - I am simply not allowed to event_assign *

Re: [Libevent-users] Signals and priority queues

2012-01-06 Thread Ralph Castain
I've pursued this further, and now I am wondering if this is a libevent issue - or perhaps I'm misusing the library. The cause of the segfault appears to be the activation of the event created during the event callback. If I delay activation so it occurs outside of the callback, then everything

Re: [Libevent-users] Signals and priority queues

2012-01-05 Thread Ralph Castain
Well, after playing around a bit, I did finally manage to recreate the scenario in my main program using your example. The attached program reliably crashes with the following output and backtrace: Ralph:system rhc$ ./evpri-test Libevent 2.0.13-stable-openmpi SIGNAL EVENT DEFINED FIRST TERMINATI

Re: [Libevent-users] Signals and priority queues

2012-01-05 Thread Nick Mathewson
On Wed, Jan 4, 2012 at 2:50 PM, Ralph Castain wrote: > Hmmm...Well, your program works fine for me too, and I haven't succeeded in > making it crash, so I suspect it is a bug in my code (which is what I > expected). I configured with libevent debug enabled, but saw no output from > libevent (th

Re: [Libevent-users] Signals and priority queues

2012-01-04 Thread Ralph Castain
Hmmm...Well, your program works fine for me too, and I haven't succeeded in making it crash, so I suspect it is a bug in my code (which is what I expected). I configured with libevent debug enabled, but saw no output from libevent (the code still crashes as before). Is there anything else I need

Re: [Libevent-users] Signals and priority queues

2012-01-04 Thread Nick Mathewson
On Tue, Jan 3, 2012 at 6:45 PM, Ralph Castain wrote: > Hi folks > > I'm trying to use libevent 2.0.13 with priorities, and am having a problem > when signal events are defined. Basically, this is what I do: > > 1. create an event base > > 2. call event_base_priority_init(base, 8) > > 3. event_ass