// context. Meaning deadlock. Which is a bad thing.\r
// So, try lock it. If we can get it, cool, do our thing.\r
// otherwise, just dump out & try again on the next iteration.\r
- Status = gThread->MutexTryLock (gMPSystem.ProcessorData[ProcessorNumber].StateLock);\r
+ Status = gThread->MutexTryLock (ProcessorData->StateLock);\r
if (EFI_ERROR(Status)) {\r
return;\r
}\r
- ProcessorState = gMPSystem.ProcessorData[ProcessorNumber].State;\r
- gThread->MutexUnlock (gMPSystem.ProcessorData[ProcessorNumber].StateLock);\r
+ ProcessorState = ProcessorData->State;\r
+ gThread->MutexUnlock (ProcessorData->StateLock);\r
\r
switch (ProcessorState) {\r
case CPU_STATE_READY:\r
}\r
}\r
\r
- gThread->MutexLock (gMPSystem.ProcessorData[ProcessorNumber].StateLock);\r
- gMPSystem.ProcessorData[ProcessorNumber].State = CPU_STATE_IDLE;\r
- gThread->MutexUnlock (gMPSystem.ProcessorData[ProcessorNumber].StateLock);\r
+ gThread->MutexLock (ProcessorData->StateLock);\r
+ ProcessorData->State = CPU_STATE_IDLE;\r
+ gThread->MutexUnlock (ProcessorData->StateLock);\r
gMPSystem.FinishCount++;\r
break;\r
\r
}\r
\r
// Mark the\r
- Status = gThread->MutexTryLock (gMPSystem.ProcessorData[ProcessorNumber].StateLock);\r
+ Status = gThread->MutexTryLock (ProcessorData->StateLock);\r
if (EFI_ERROR(Status)) {\r
return;\r
}\r
- ProcessorState = gMPSystem.ProcessorData[ProcessorNumber].State;\r
- gThread->MutexUnlock (gMPSystem.ProcessorData[ProcessorNumber].StateLock);\r
+ ProcessorState = ProcessorData->State;\r
+ gThread->MutexUnlock (ProcessorData->StateLock);\r
\r
if (ProcessorState != CPU_STATE_IDLE) {\r
// If we are retrying make sure we don't double count\r