mirror of
https://github.com/acidanthera/audk.git
synced 2025-04-07 19:45:07 +02:00
Ring3: Fixed missing Ring3Call result.
This commit is contained in:
parent
1836c35027
commit
d704a3c6e7
@ -122,6 +122,7 @@ Ring3Call (
|
||||
IN RING3_CALL_DATA *Data
|
||||
)
|
||||
{
|
||||
EFI_STATUS Status;
|
||||
FUNCTION_0 Function0;
|
||||
FUNCTION_1 Function1;
|
||||
FUNCTION_2 Function2;
|
||||
@ -132,33 +133,33 @@ Ring3Call (
|
||||
switch (Data->NumberOfArguments) {
|
||||
case 0:
|
||||
Function0 = (FUNCTION_0)Data->EntryPoint;
|
||||
Function0 ();
|
||||
Status = Function0 ();
|
||||
break;
|
||||
case 1:
|
||||
Function1 = (FUNCTION_1)Data->EntryPoint;
|
||||
Function1 (Data->Arguments[0]);
|
||||
Status = Function1 (Data->Arguments[0]);
|
||||
break;
|
||||
case 2:
|
||||
Function2 = (FUNCTION_2)Data->EntryPoint;
|
||||
Function2 (Data->Arguments[0], Data->Arguments[1]);
|
||||
Status = Function2 (Data->Arguments[0], Data->Arguments[1]);
|
||||
break;
|
||||
case 3:
|
||||
Function3 = (FUNCTION_3)Data->EntryPoint;
|
||||
Function3 (Data->Arguments[0], Data->Arguments[1], Data->Arguments[2]);
|
||||
Status = Function3 (Data->Arguments[0], Data->Arguments[1], Data->Arguments[2]);
|
||||
break;
|
||||
case 4:
|
||||
Function4 = (FUNCTION_4)Data->EntryPoint;
|
||||
Function4 (Data->Arguments[0], Data->Arguments[1], Data->Arguments[2], Data->Arguments[3]);
|
||||
Status = Function4 (Data->Arguments[0], Data->Arguments[1], Data->Arguments[2], Data->Arguments[3]);
|
||||
break;
|
||||
case 5:
|
||||
Function5 = (FUNCTION_5)Data->EntryPoint;
|
||||
Function5 (Data->Arguments[0], Data->Arguments[1], Data->Arguments[2], Data->Arguments[3], Data->Arguments[4]);
|
||||
Status = Function5 (Data->Arguments[0], Data->Arguments[1], Data->Arguments[2], Data->Arguments[3], Data->Arguments[4]);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
SysCall (SysCallReturnToCore);
|
||||
SysCall (SysCallReturnToCore, Status);
|
||||
}
|
||||
|
||||
EFI_STATUS
|
||||
|
@ -223,6 +223,7 @@ o64 sysret
|
||||
coreReturnAddress:
|
||||
mov rsp, [ASM_PFX(CoreRsp)]
|
||||
mov rbp, [ASM_PFX(CoreRbp)]
|
||||
mov rax, rdx
|
||||
ret
|
||||
|
||||
SECTION .data
|
||||
|
Loading…
x
Reference in New Issue
Block a user