]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Added client requests related to pthread_cancel().
authorBart Van Assche <bvanassche@acm.org>
Sat, 27 Sep 2008 12:36:48 +0000 (12:36 +0000)
committerBart Van Assche <bvanassche@acm.org>
Sat, 27 Sep 2008 12:36:48 +0000 (12:36 +0000)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@8639

drd/drd_clientreq.c
drd/drd_clientreq.h

index 6078deaa852aae246d61d7c647cd2f9882ede99d..29ce30bbbadaf4b47c65ea6e92a10fcb3a3f8329 100644 (file)
@@ -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]);
index b80b8a89adb58b96a0935dfbdf6e661889e3a827..3d06e71598f9b1904b1ebb454fea634f3146e2e8 100644 (file)
@@ -59,6 +59,13 @@ enum {
   VG_USERREQ__POST_THREAD_JOIN,
   /* args: pthread_t (joinee) */
 
+  /* To notify drd before a pthread_cancel call. */
+  VG_USERREQ__PRE_THREAD_CANCEL,
+  /* args: pthread_t */
+  /* To notify drd after a pthread_cancel call. */
+  VG_USERREQ__POST_THREAD_CANCEL,
+  /* args: pthread_t, Bool */
+
   /* to notify the drd tool of a pthread_mutex_init call. */
   VG_USERREQ__PRE_MUTEX_INIT,
   /* args: Addr, MutexT */