aboutsummaryrefslogtreecommitdiff
path: root/drd/drd_clientreq.c
diff options
context:
space:
mode:
authorbart <bart@a5019735-40e9-0310-863c-91ae7b9d1cf9>2008-09-27 12:36:48 +0000
committerbart <bart@a5019735-40e9-0310-863c-91ae7b9d1cf9>2008-09-27 12:36:48 +0000
commit0f099cdd7eded60936c873750d611a08e592cda0 (patch)
tree42c2f0d860cdaa573088e4044728879decaef688 /drd/drd_clientreq.c
parent42087cc5bbf0147db03672f4543956688731cbd8 (diff)
downloadvalgrind-0f099cdd7eded60936c873750d611a08e592cda0.tar.gz
Added client requests related to pthread_cancel().
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8639 a5019735-40e9-0310-863c-91ae7b9d1cf9
Diffstat (limited to 'drd/drd_clientreq.c')
-rw-r--r--drd/drd_clientreq.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drd/drd_clientreq.c b/drd/drd_clientreq.c
index 6078deaa8..29ce30bbb 100644
--- a/drd/drd_clientreq.c
+++ b/drd/drd_clientreq.c
@@ -210,6 +210,16 @@ static Bool drd_handle_client_request(ThreadId vg_tid, UWord* arg, UWord* ret)
PtThreadIdToDrdThreadId(arg[1]));
break;
+ case VG_USERREQ__PRE_THREAD_CANCEL:
+ tl_assert(arg[1]);
+ drd_pre_thread_cancel(drd_tid, PtThreadIdToDrdThreadId(arg[1]));
+ break;
+
+ case VG_USERREQ__POST_THREAD_CANCEL:
+ tl_assert(arg[1]);
+ drd_post_thread_cancel(drd_tid, PtThreadIdToDrdThreadId(arg[1]), arg[2]);
+ break;
+
case VG_USERREQ__PRE_MUTEX_INIT:
if (thread_enter_synchr(drd_tid) == 0)
drd_pre_mutex_init(arg[1], arg[2]);