drd: Yet another regression test reliability improvement.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@12004 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/drd/tests/annotate_smart_pointer.cpp b/drd/tests/annotate_smart_pointer.cpp
index cf6e6ac..862ecb0 100644
--- a/drd/tests/annotate_smart_pointer.cpp
+++ b/drd/tests/annotate_smart_pointer.cpp
@@ -317,6 +317,12 @@
     p->post_increment();
     for (int i = 0; i < nthreads; ++i)
       T[i].Create(thread_func, new smart_ptr<counter>(p));
+    {
+      // Avoid that counter.m_mutex introduces a false ordering on the
+      // counter.m_count accesses.
+      const timespec delay = { 0, 100 * 1000 * 1000 };
+      nanosleep(&delay, 0);
+    }
     p = NULL;
     for (int i = 0; i < nthreads; ++i)
       T[i].Join();