Make 1917 less flaky

We were racing the target thread slightly which meant that the output
could change as the target thread is in an unexpected position when we
dump it's stack. This makes sure we wait until the target thread
actually goes to sleep before dumping its stack.

Bug: 64134910
Test: ./test.py --host -j50
Change-Id: Ifaf9686e3fa9a1991858f9f0119e589e83169640
diff --git a/test/1917-get-stack-frame/expected.txt b/test/1917-get-stack-frame/expected.txt
index 26217e6..4c9efcf 100644
--- a/test/1917-get-stack-frame/expected.txt
+++ b/test/1917-get-stack-frame/expected.txt
@@ -1,33 +1,33 @@
 Recurring 5 times
 'private static native art.StackTrace$StackFrameData[] art.StackTrace.nativeGetStackTrace(java.lang.Thread)' line: -1
 'public static art.StackTrace$StackFrameData[] art.StackTrace.GetStackTrace(java.lang.Thread)' line: 60
-'public void art.Test1917$StackTraceGenerator.run()' line: 81
-'public void art.Test1917$RecurCount.doRecur(int)' line: 103
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.run()' line: 96
-'public static void art.Test1917.run() throws java.lang.Exception' line: 132
+'public void art.Test1917$StackTraceGenerator.run()' line: 82
+'public void art.Test1917$RecurCount.doRecur(int)' line: 104
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.run()' line: 97
+'public static void art.Test1917.run() throws java.lang.Exception' line: 133
 Recurring 5 times on another thread
 'private static native art.StackTrace$StackFrameData[] art.StackTrace.nativeGetStackTrace(java.lang.Thread)' line: -1
 'public static art.StackTrace$StackFrameData[] art.StackTrace.GetStackTrace(java.lang.Thread)' line: 60
-'public void art.Test1917$StackTraceGenerator.run()' line: 81
-'public void art.Test1917$RecurCount.doRecur(int)' line: 103
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.run()' line: 96
+'public void art.Test1917$StackTraceGenerator.run()' line: 82
+'public void art.Test1917$RecurCount.doRecur(int)' line: 104
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.run()' line: 97
 Recurring 5 times on another thread. Stack trace from main thread!
 'public void java.util.concurrent.Semaphore.acquire() throws java.lang.InterruptedException' line: <NOT-DETERMINISTIC>
 'public void art.Test1917$ThreadPauser.run()' line: 46
-'public void art.Test1917$RecurCount.doRecur(int)' line: 103
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.doRecur(int)' line: 101
-'public void art.Test1917$RecurCount.run()' line: 96
+'public void art.Test1917$RecurCount.doRecur(int)' line: 104
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.doRecur(int)' line: 102
+'public void art.Test1917$RecurCount.run()' line: 97
diff --git a/test/1917-get-stack-frame/src/art/Test1917.java b/test/1917-get-stack-frame/src/art/Test1917.java
index 1057235..def7530 100644
--- a/test/1917-get-stack-frame/src/art/Test1917.java
+++ b/test/1917-get-stack-frame/src/art/Test1917.java
@@ -51,6 +51,7 @@
 
     public void waitForOtherThreadToPause() throws Exception {
       sem_wakeup_main.acquire();
+      while (!sem_wait.hasQueuedThreads()) {}
     }
 
     public void wakeupOtherThread() throws Exception {