Tighten handling of pthread_create errors on Linux.

The return value of pthread_create is now checked to be 0.
Tests on MIPS boards had some silent and hard to find timeouts and errors related to this.
This ensures a proper error message and shutdown if a thread could not be started.

BUG=
TEST=

Review URL: http://codereview.chromium.org/8497041
Patch from Gergely Kis <gergely@homejinni.com>.

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9945 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
vitalyr@chromium.org 2011-11-09 19:02:41 +00:00
parent 8a074ba183
commit 0ec3ba8fe4

View File

@ -768,7 +768,8 @@ void Thread::Start() {
pthread_attr_setstacksize(&attr, static_cast<size_t>(stack_size_)); pthread_attr_setstacksize(&attr, static_cast<size_t>(stack_size_));
attr_ptr = &attr; attr_ptr = &attr;
} }
pthread_create(&data_->thread_, attr_ptr, ThreadEntry, this); int result = pthread_create(&data_->thread_, attr_ptr, ThreadEntry, this);
CHECK_EQ(0, result);
ASSERT(data_->thread_ != kNoThread); ASSERT(data_->thread_ != kNoThread);
} }