]> sourceware.org Git - systemtap.git/commit
(PR14637 partial fix) Improve stapdyn locking.
authorDavid Smith <dsmith@redhat.com>
Fri, 5 Oct 2012 17:52:43 +0000 (12:52 -0500)
committerDavid Smith <dsmith@redhat.com>
Fri, 5 Oct 2012 17:52:43 +0000 (12:52 -0500)
commit82523f19f6c048cffd729752f57656dbee5bbdc9
tree83875c5c437ce99d23c74d37787ab9ebedb12602
parent3f5a5bb1f0870a711b6851d1377fe37699c4e19f
(PR14637 partial fix) Improve stapdyn locking.

* runtime/dyninst/runtime.h: Remove the 'stapdyn_big_dumb_lock' and make
  preempt_disable() and preempt_enable_no_resched() do nothing for
  dyninst.
* runtime/dyninst/tls_data.c: Change the mutex in tls_data_container_t to
  a rwlock.
  (_stp_tls_free_per_thread_ptr): Write lock the container before remove
  the object from the list (and reduce the amount of time the container is
  locked).
  (_stp_tls_get_per_thread_ptr): Write lock the container before adding
  the object from the list (and reduce the amount of time the container is
  locked).
* runtime/map.c (_stp_pmap_agg): Be sure to unlock the map in error
  conditions.
* runtime/pmap-gen.c (KEYSYM(_stp_pmap_get)): Be sure to unlock the
  container in an error condition.
runtime/dyninst/runtime.h
runtime/dyninst/tls_data.c
runtime/map.c
runtime/pmap-gen.c
This page took 0.02718 seconds and 5 git commands to generate.