|
From: Bob F. <bfr...@si...> - 2004-06-12 16:32:07
|
On Sat, 12 Jun 2004, Tom Hughes wrote: > In message <Pin...@sc...> > Bob Friesenhahn <bfr...@si...> wrote: > >> I am still working on properly supporting the timer_* APIs. > > I've been looking at them well following your previous posts. My first > problem was that the librt.so on FC2 wouldn't work until I added support > for NPTL style cleanup handlers to valgrind so I couldn't get as far as > trying to create a timer. I've committed a fix for that now, but I'm > curious as to hw you got it to work. The timer_create option which works with valgrind is notification via signal delivery. The synchronous notification by thread does not work. From what you have discovered, it should be possible for valgrind to convert the SIGEV_THREAD request into a SIGEV_SIGNAL notification. Timer signals are then dispatched to a thread by a valgrind-installed signal handler. The function is roughly similar to what librt is apparently doing. Naturally this would be a bit of work. Perhaps some librt code can be re-used. >> For the timer_delete POST operation I need a way to declare that the >> timer handle is no longer valid. How should that be done? > > Unless you're going to add full scale tracking for timer handles in > the same way that file handles are tracked then you can't. The memory > that holds the handle is still well defined so you shouldn't try and > mark it as undefined, not that you can as it is a scalar argument. Ok. Bob ====================================== Bob Friesenhahn bfr...@si... http://www.simplesystems.org/users/bfriesen |