WITNESS for pthreads
jhb at freebsd.org
Tue Mar 31 08:03:36 PDT 2009
On Tuesday 31 March 2009 2:50:27 am Daniel Eischen wrote:
> > Ok, I have poked around at these... all the mutex attributes defined here
> > do is set the attributes to shared. There does not seem to be any standard
> > naming mechanism.
> Naming mechanism for what? Names shouldn't be needed for anything,
> nor do I think it is desired.
Off topic: names would be very helpful to port witness to pthreads. The
thoughts I have had for doing this though would be to add a new _np attribute
to set the name. I actually would like to write a 'libwitness' that
basically overrides the various symbols and provides the name_np attribute
and implement witness in the shared library on top of whatever pthreads
library is in use. This would also allow it to be portable to other OS's.
(Well, it could break pshared mutexes, but using the pointer-style types, you
could have the libwitness allocate its own "mutex" structure which has
a "real" mutex inside of it along with the name and other per-lock data it
tracks. It would then forward mutex operations to the real pthreads library
after performing LOR checks, etc.).
More information about the freebsd-threads