\r
CONST UINTN mDoFarReturnFlag = 0;\r
\r
-RESERVED_VECTORS_DATA mReservedVectorsData[CPU_EXCEPTION_NUM];\r
-EFI_CPU_INTERRUPT_HANDLER mExternalInterruptHandlerTable[CPU_EXCEPTION_NUM];\r
+RESERVED_VECTORS_DATA mReservedVectorsData[CPU_INTERRUPT_NUM];\r
+EFI_CPU_INTERRUPT_HANDLER mExternalInterruptHandlerTable[CPU_INTERRUPT_NUM];\r
EXCEPTION_HANDLER_DATA mExceptionHandlerData = {\r
0, // To be fixed\r
0, // To be fixed\r
IA32_DESCRIPTOR IdtDescriptor;\r
UINTN IdtEntryCount;\r
EXCEPTION_HANDLER_TEMPLATE_MAP TemplateMap;\r
- RESERVED_VECTORS_DATA *ReservedVectors;\r
- EFI_CPU_INTERRUPT_HANDLER *ExternalInterruptHandler;\r
-\r
- Status = gBS->AllocatePool (\r
- EfiBootServicesCode,\r
- sizeof (RESERVED_VECTORS_DATA) * CPU_INTERRUPT_NUM,\r
- (VOID **)&ReservedVectors\r
- );\r
- ASSERT (!EFI_ERROR (Status) && ReservedVectors != NULL);\r
- SetMem ((VOID *)ReservedVectors, sizeof (RESERVED_VECTORS_DATA) * CPU_INTERRUPT_NUM, 0xff);\r
+\r
+ SetMem ((VOID *)mReservedVectorsData, sizeof (RESERVED_VECTORS_DATA) * CPU_INTERRUPT_NUM, 0xff);\r
if (VectorInfo != NULL) {\r
- Status = ReadAndVerifyVectorInfo (VectorInfo, ReservedVectors, CPU_INTERRUPT_NUM);\r
+ Status = ReadAndVerifyVectorInfo (VectorInfo, mReservedVectorsData, CPU_INTERRUPT_NUM);\r
if (EFI_ERROR (Status)) {\r
- FreePool (ReservedVectors);\r
return EFI_INVALID_PARAMETER;\r
}\r
}\r
\r
- ExternalInterruptHandler = AllocateZeroPool (sizeof (EFI_CPU_INTERRUPT_HANDLER) * CPU_INTERRUPT_NUM);\r
- ASSERT (ExternalInterruptHandler != NULL);\r
-\r
//\r
// Read IDT descriptor and calculate IDT size\r
//\r
ASSERT (TemplateMap.ExceptionStubHeaderSize <= HOOKAFTER_STUB_SIZE);\r
\r
mExceptionHandlerData.IdtEntryCount = CPU_INTERRUPT_NUM;\r
- mExceptionHandlerData.ReservedVectors = ReservedVectors;\r
- mExceptionHandlerData.ExternalInterruptHandler = ExternalInterruptHandler;\r
InitializeSpinLock (&mExceptionHandlerData.DisplayMessageSpinLock);\r
\r
UpdateIdtTable (IdtTable, &TemplateMap, &mExceptionHandlerData);\r