NetworkPkg: Restore TPL Before Return

This patch fixes a few instances of error cases in NetworkPkg
returning after a RaiseTPL call without restoring the TPL
first.

Signed-off-by: Oliver Smith-Denny <osde@linux.microsoft.com>
This commit is contained in:
Oliver Smith-Denny 2024-10-08 10:12:29 -07:00 committed by mergify[bot]
parent f3bc6013d2
commit 0d129450c2
3 changed files with 6 additions and 5 deletions

View File

@ -61,7 +61,6 @@ EfiIp6GetModeData (
return EFI_INVALID_PARAMETER;
}
OldTpl = gBS->RaiseTPL (TPL_CALLBACK);
IpInstance = IP6_INSTANCE_FROM_PROTOCOL (This);
IpSb = IpInstance->Service;
IpIf = IpInstance->Interface;
@ -70,6 +69,8 @@ EfiIp6GetModeData (
return EFI_INVALID_PARAMETER;
}
OldTpl = gBS->RaiseTPL (TPL_CALLBACK);
if (Ip6ModeData != NULL) {
//
// IsStarted is "whether the EfiIp6Configure has been called".

View File

@ -216,12 +216,12 @@ SnpUndi32GetStatus (
Snp = EFI_SIMPLE_NETWORK_DEV_FROM_THIS (This);
OldTpl = gBS->RaiseTPL (TPL_CALLBACK);
if (Snp == NULL) {
return EFI_DEVICE_ERROR;
}
OldTpl = gBS->RaiseTPL (TPL_CALLBACK);
switch (Snp->Mode.State) {
case EfiSimpleNetworkInitialized:
break;

View File

@ -287,12 +287,12 @@ SnpUndi32Transmit (
Snp = EFI_SIMPLE_NETWORK_DEV_FROM_THIS (This);
OldTpl = gBS->RaiseTPL (TPL_CALLBACK);
if (Snp == NULL) {
return EFI_DEVICE_ERROR;
}
OldTpl = gBS->RaiseTPL (TPL_CALLBACK);
switch (Snp->Mode.State) {
case EfiSimpleNetworkInitialized:
break;