Reviewers: Vitaly Repeshko,

Description:
"Deiceolate" Thread classes.

Thread class was receiving an isolate parameter by default.
This approact violates the assumption that only VM threads
can have an associated isolate, and can lead to troubles,
because accessing the same isolate from different threads
leads to race conditions.

This was found by investigating mysterious failures of the
CPU profiler layout test on Linux Chromium. As almost all
threads were associated with some isolate, the sampler was
trying to sample them.

As a side effect, we have also fixed the DebuggerAgent test.

Thanks to Vitaly for help in fixing isolates handling!

[email protected]
BUG=none
TEST=none


Please review this at http://codereview.chromium.org/7003108/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M include/v8.h
  M samples/shell.cc
  M src/api.cc
  M src/cpu-profiler.h
  M src/cpu-profiler.cc
  M src/debug-agent.h
  M src/debug-agent.cc
  M src/debug.h
  M src/debug.cc
  M src/isolate.h
  M src/isolate.cc
  M src/log.cc
  M src/platform-cygwin.cc
  M src/platform-freebsd.cc
  M src/platform-linux.cc
  M src/platform-macos.cc
  M src/platform-nullos.cc
  M src/platform-openbsd.cc
  M src/platform-solaris.cc
  M src/platform-win32.cc
  M src/platform.h
  M src/v8threads.h
  M src/v8threads.cc
  M test/cctest/cctest.h
  M test/cctest/cctest.status
  M test/cctest/test-api.cc
  M test/cctest/test-circular-queue.cc
  M test/cctest/test-cpu-profiler.cc
  M test/cctest/test-debug.cc
  M test/cctest/test-lockers.cc
  M test/cctest/test-platform-tls.cc
  M test/cctest/test-sockets.cc
  M test/cctest/test-thread-termination.cc
  M test/cctest/test-threads.cc


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

Reply via email to