Skip to content

X64 Exception Type - 0D(#GP - General Protection) CPU Apic ID - 00000000 #8

@rainhenry

Description

@rainhenry

I downloaded the release version of the EFI file from your repository. Since I primarily work on Ubuntu, I don't know how to rebuild it from source code on Ubuntu. So, for convenience, I directly used the release EFI file from the repository.

Then I tried running it on a laptop with a relatively new Intel processor, but on the physical machine, it froze after execution; the screen didn't change at all, it was like it was frozen.

To find the problem, I tried running it on a Qemu virtual machine and on another Intel platform development board. Both had my own compiled debug BIOS versions, and I could see a lot of debug logs. Then I got the following information:

Error on the Intel 10th Gen Core development board:

FS0:\> 
FS0:\> spgFSOpen: Open '.' Success
spgame.efi
FSOpen: Open '\spgame.efi' Success
FSOpen: Open '\spgame.efi' Success
FSOpen: Open '\spgame.efi' Success
FSOpen: Open '\spgame.efi' Success
[Security] 3rd party image[0] can be loaded after EndOfDxe: PciRoot(0x0)/Pci(0x14,0x0)/USB(0x0,0x0)/HD(1,GPT,2EDD3E24-6161-264B-B4CC-4504FF44B006,0x800,0x40000)/\spgame.efi.
InstallProtocolInterface: 5B1B31A1-9562-11D2-8E3F-00A0C969723B 25DBC8240
Loading driver at 0x00180000000 EntryPoint=0x0018000116C 
InstallProtocolInterface: BC62157E-3E33-4FEC-9920-2D3B36D750DF 25DBC8E18
ProtectUefiImageCommon - 0x5DBC8240
  - 0x0000000180000000 - 0x00000000006FD000
InstallProtocolInterface: 752F3136-4E16-4FDC-A22A-E5F46812F4CA 4DCE408
!!!! X64 Exception Type - 0D(#GP - General Protection)  CPU Apic ID - 00000000 !!!!
ExceptionData - 0000000000000000
RIP  - 0000000004DE5729, CS  - 0000000000000038, RFLAGS - 0000000000010206
RAX  - 0000000004DF7460, RCX - 00000001800B6EC8, RDX - 0000000000000000
RBX  - 0000000000000000, RSP - 0000000004DCE178, RBP - 0000000004DCE268
RSI  - 0000000000000009, RDI - 0000000004DF7440
R8   - 00000001806FC78C, R9  - 0000000000000108, R10 - 00000000000003F8
R11  - 0000000000000000, R12 - 800000000000000E, R13 - 00000001806FC78C
R14  - 00000001800B6EC8, R15 - 000000025DB2A758
DS   - 0000000000000030, ES  - 0000000000000030, FS  - 0000000000000030
GS   - 0000000000000030, SS  - 0000000000000030
CR0  - 0000000080010033, CR2 - 0000000000000000, CR3 - 0000000004A01000
CR4  - 0000000000000668, CR8 - 0000000000000000
DR0  - 0000000000000000, DR1 - 0000000000000000, DR2 - 0000000000000000
DR3  - 0000000000000000, DR6 - 00000000FFFF0FF0, DR7 - 0000000000000400
GDTR - 000000009CF4B000 0000000000000047, LDTR - 0000000000000000
IDTR - 000000025EBD2018 0000000000000FFF,   TR - 0000000000000000
FXSAVE_STATE - 0000000004DCDDD0
!!!! Find image based on IP(0x4DE5729) /home/rainhenry/sdb1/edk2_ok/edk2/Build/UefiPayloadPkgX64/DEBUG_GCC5/X64/MdeModulePkg/Core/Dxe/DxeMain/DEBUG/DxeCore.dll (ImageBase=0000000004DCF000, EntryPoint=0000000004DDE9FD) !!!!

Error on the Qemu virtual machine:

FSOpen: Open '\spgame.efi' Success
FSOpen: Open '\spgame.efi' Success
FSOpen: Open '\spgame.efi' Success
InstallProtocolInterface: 5B1B31A1-9562-11D2-8E3F-00A0C969723B 7CD003C0
ConvertPages: failed to find range 180000000 - 1806FCFFF
Loading driver at 0x0007BD3F000 EntryPoint=0x0007BD4016C 
InstallProtocolInterface: BC62157E-3E33-4FEC-9920-2D3B36D750DF 7CD00B98
ProtectUefiImageCommon - 0x7CD003C0
  - 0x000000007BD3F000 - 0x00000000006FD000
InstallProtocolInterface: 752F3136-4E16-4FDC-A22A-E5F46812F4CA 4DCE3B8
!!!! X64 Exception Type - 0D(#GP - General Protection)  CPU Apic ID - 00000000 !!!!
ExceptionData - 0000000000000000
RIP  - 0000000004DD2293, CS  - 0000000000000038, RFLAGS - 0000000000010206
RAX  - 0000000004DF6640, RCX - 000000007BDF5EC8, RDX - 0000000000000000
RBX  - 0000000000000000, RSP - 0000000004DCE118, RBP - 0000000004DCE208
RSI  - 0000000000000009, RDI - 0000000004DF64D0
R8   - 000000007C43B78C, R9  - 0000000000000108, R10 - 0000000004DF0E30
R11  - 0000000000000000, R12 - 800000000000000E, R13 - 000000007C43B78C
R14  - 000000007BDF5EC8, R15 - 000000007CBC1410
DS   - 0000000000000030, ES  - 0000000000000030, FS  - 0000000000000030
GS   - 0000000000000030, SS  - 0000000000000030
CR0  - 0000000080010033, CR2 - 0000000000000000, CR3 - 0000000004A01000
CR4  - 0000000000040678, CR8 - 0000000000000000
DR0  - 0000000000000000, DR1 - 0000000000000000, DR2 - 0000000000000000
DR3  - 0000000000000000, DR6 - 00000000FFFF0FF0, DR7 - 0000000000000400
GDTR - 000000007DED5000 0000000000000047, LDTR - 0000000000000000
IDTR - 000000007DED2018 0000000000000FFF,   TR - 0000000000000000
FXSAVE_STATE - 0000000004DCDD70
!!!! Find image based on IP(0x4DD2293) /home/rainhenry/sdb1/edk2_ok/edk2/Build/UefiPayloadPkgX64/DEBUG_GCC5/X64/MdeModulePkg/Core/Dxe/DxeMain/DEBUG/DxeCore.dll (ImageBase=0000000004DCF000, EntryPoint=0000000004DE9142) !!!!

They look similar. It seems to be an APIC ID issue, but I don't know how to solve it. I hope you can give me some guidance and suggestions. Thank you very much!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions