VOID\r
)\r
{\r
- LIST_ENTRY *Link;\r
- PROCEDURE_TOKEN *ProcToken;\r
-\r
- Link = GetFirstNode (&gSmmCpuPrivate->TokenList);\r
- while (!IsNull (&gSmmCpuPrivate->TokenList, Link)) {\r
- ProcToken = PROCEDURE_TOKEN_FROM_LINK (Link);\r
-\r
- ProcToken->RunningApCount = 0;\r
-\r
- //\r
- // Check the spinlock status and release it if not released yet.\r
- //\r
- if (!AcquireSpinLockOrFail(ProcToken->SpinLock)) {\r
- DEBUG((DEBUG_ERROR, "Risk::SpinLock still not released!"));\r
- }\r
- ReleaseSpinLock (ProcToken->SpinLock);\r
-\r
- Link = GetNextNode (&gSmmCpuPrivate->TokenList, Link);\r
- }\r
-\r
//\r
// Reset the FirstFreeToken to the beginning of token list upon exiting SMI.\r
//\r