coregrind/m_scheduler + drd: Rework r13862

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13864 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/coregrind/m_scheduler/scheduler.c b/coregrind/m_scheduler/scheduler.c
index b6f558d..52b4d0f 100644
--- a/coregrind/m_scheduler/scheduler.c
+++ b/coregrind/m_scheduler/scheduler.c
@@ -1011,7 +1011,6 @@
                                  ip, True/*upd_fast_cache*/ );
    if (UNLIKELY(!found)) {
       /* Not found; we need to request a translation. */
-      VG_TRACK( start_client_code, tid, bbs_done );
       if (VG_(translate)( tid, ip, /*debug*/False, 0/*not verbose*/, 
                           bbs_done, True/*allow redirection*/ )) {
          found = VG_(search_transtab)( NULL, NULL, NULL,
@@ -1025,7 +1024,6 @@
 	 // or the thread has been marked for termination.  Either
 	 // way, we just need to go back into the scheduler loop.
       }
-      VG_TRACK( stop_client_code, tid, bbs_done );
    }
 }
 
diff --git a/drd/drd_main.c b/drd/drd_main.c
index db6eeb8..2104ea3 100644
--- a/drd/drd_main.c
+++ b/drd/drd_main.c
@@ -276,6 +276,7 @@
                              const Addr a,
                              const SizeT size)
 {
+   DRD_(thread_set_vg_running_tid)(VG_(get_running_tid)());
    if (size > 0)
    {
       DRD_(trace_load)(a, size);