Status: Accepted
Owner: ----
CC: [email protected]
Labels: Type-Bug Priority-Medium

New issue 2047 by [email protected]: test-debug/ThreadedDebugging is flaky
http://code.google.com/p/v8/issues/detail?id=2047

=== release test-debug ThreadedDebugging ===
Path: cctest/test-debug/ThreadedDebugging
--- stderr ---
#
# Fatal error in test/cctest/test-debug.cc, line 5016
# CHECK(8 <= source_line && source_line <= 13) failed
#

Happens both in release and debug mode on various Linux bots.

The failure can be triggered reliably by inserting a sleep() in test-debug.cc:

+#include <unistd.h>  // for usleep

and in void DebuggerThread::Run():

   threaded_debugging_barriers.barrier_1.Wait();
   usleep(1000);
   v8::Debug::DebugBreak();

What happens is that when the debug break comes too late, the function under test gets optimized (OSRed), and for some reason that throws off the reported source position (it's 7 rather than in the [8..13] interval, which is wrong because line 7 is outside the loop).

We could probably just disable optimization for this test, but I have a suspicion that this should actually work as it is, and that there is a real bug somewhere.

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to