mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-29 16:44:10 +02:00
SysCall: Added FreeUserSpaceDriver().
This commit is contained in:
parent
b13baeb518
commit
0c0b76825f
@ -326,6 +326,27 @@ FindUserInfo (
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
STATIC
|
||||||
|
VOID
|
||||||
|
EFIAPI
|
||||||
|
FreeUserSpaceDriver (
|
||||||
|
IN VOID *CoreWrapper
|
||||||
|
)
|
||||||
|
{
|
||||||
|
LIST_ENTRY *Link;
|
||||||
|
USER_SPACE_DRIVER *UserDriver;
|
||||||
|
|
||||||
|
for (Link = gUserSpaceDriversHead.ForwardLink; Link != &gUserSpaceDriversHead; Link = Link->ForwardLink) {
|
||||||
|
UserDriver = BASE_CR (Link, USER_SPACE_DRIVER, Link);
|
||||||
|
|
||||||
|
if (UserDriver->CoreWrapper == CoreWrapper) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
RemoveEntryList (&UserDriver->Link);
|
||||||
|
}
|
||||||
|
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
EFIAPI
|
EFIAPI
|
||||||
CallBootService (
|
CallBootService (
|
||||||
@ -498,6 +519,7 @@ CallBootService (
|
|||||||
ForbidSupervisorAccessToUserMemory ();
|
ForbidSupervisorAccessToUserMemory ();
|
||||||
|
|
||||||
while (Index > 0) {
|
while (Index > 0) {
|
||||||
|
FreeUserSpaceDriver (CoreArgList[Index - 1]);
|
||||||
FreePool (CoreArgList[Index - 1]);
|
FreePool (CoreArgList[Index - 1]);
|
||||||
Index -= 2;
|
Index -= 2;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user