forked from OSchip/llvm-project
Fixed a few places where we were doing:
uint32_t size = ThreadList.GetSize(); for (i=0; i < size; ++i) without grabbing the thread list mutex. llvm-svn: 163541
This commit is contained in:
parent
7acbf00f96
commit
41f2b940c9
|
@ -792,14 +792,17 @@ protected:
|
|||
}
|
||||
}
|
||||
|
||||
const uint32_t num_threads = process->GetThreadList().GetSize();
|
||||
{ // Scope for thread list mutex:
|
||||
Mutex::Locker locker (process->GetThreadList().GetMutex());
|
||||
const uint32_t num_threads = process->GetThreadList().GetSize();
|
||||
|
||||
// Set the actions that the threads should each take when resuming
|
||||
for (uint32_t idx=0; idx<num_threads; ++idx)
|
||||
{
|
||||
process->GetThreadList().GetThreadAtIndex(idx)->SetResumeState (eStateRunning);
|
||||
// Set the actions that the threads should each take when resuming
|
||||
for (uint32_t idx=0; idx<num_threads; ++idx)
|
||||
{
|
||||
process->GetThreadList().GetThreadAtIndex(idx)->SetResumeState (eStateRunning);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Error error(process->Resume());
|
||||
if (error.Success())
|
||||
{
|
||||
|
|
|
@ -185,6 +185,7 @@ protected:
|
|||
else if (command.GetArgumentCount() == 1 && ::strcmp (command.GetArgumentAtIndex(0), "all") == 0)
|
||||
{
|
||||
Process *process = m_interpreter.GetExecutionContext().GetProcessPtr();
|
||||
Mutex::Locker locker (process->GetThreadList().GetMutex());
|
||||
uint32_t num_threads = process->GetThreadList().GetSize();
|
||||
for (uint32_t i = 0; i < num_threads; i++)
|
||||
{
|
||||
|
@ -208,6 +209,7 @@ protected:
|
|||
{
|
||||
uint32_t num_args = command.GetArgumentCount();
|
||||
Process *process = m_interpreter.GetExecutionContext().GetProcessPtr();
|
||||
Mutex::Locker locker (process->GetThreadList().GetMutex());
|
||||
std::vector<ThreadSP> thread_sps;
|
||||
|
||||
for (uint32_t i = 0; i < num_args; i++)
|
||||
|
|
|
@ -4860,6 +4860,7 @@ Process::GetThreadStatus (Stream &strm,
|
|||
{
|
||||
size_t num_thread_infos_dumped = 0;
|
||||
|
||||
Mutex::Locker locker (GetThreadList().GetMutex());
|
||||
const size_t num_threads = GetThreadList().GetSize();
|
||||
for (uint32_t i = 0; i < num_threads; i++)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue