+ ASSERT (PeriodicSmiLibraryHandler->DispatchHandle == NULL);\r
+ if (PeriodicSmiLibraryHandler->Stack != NULL) {\r
+ FreePages (\r
+ PeriodicSmiLibraryHandler->Stack,\r
+ EFI_SIZE_TO_PAGES (PeriodicSmiLibraryHandler->StackSize)\r
+ );\r
+ PeriodicSmiLibraryHandler->Stack = NULL;\r
+ }\r
+ RemoveEntryList (&PeriodicSmiLibraryHandler->Link);\r
+ InsertHeadList (&gFreePeriodicSmiLibraryHandlers, &PeriodicSmiLibraryHandler->Link);\r
+}\r
+\r
+/**\r
+ Add the additional entries to the list of free periodic SMI handlers.\r
+ The function is assumed to be called only when the list of free periodic SMI\r
+ handlers is empty.\r
+\r
+ @retval TRUE The additional entries were added.\r
+ @retval FALSE There was no available resource for the additional entries.\r
+**/\r
+BOOLEAN\r
+EnlargeFreePeriodicSmiLibraryHandlerList (\r
+ VOID\r
+ )\r
+{\r
+ UINTN Index;\r