summaryrefslogtreecommitdiffstats
path: root/NetworkPkg
diff options
context:
space:
mode:
authorAshish Singhal <ashishsingha@nvidia.com>2019-01-10 04:58:35 +0800
committerLiming Gao <liming.gao@intel.com>2019-01-10 23:37:43 +0800
commit15666b8cd0a27dcc9ab062b8004ddf3ed7d4e7f4 (patch)
tree106290098e93bfce144952315875740ca28b8bdc /NetworkPkg
parent0290fca20fe18f44fd5e5490722e1ffc493470de (diff)
downloadedk2-15666b8cd0a27dcc9ab062b8004ddf3ed7d4e7f4.tar.gz
edk2-15666b8cd0a27dcc9ab062b8004ddf3ed7d4e7f4.tar.bz2
edk2-15666b8cd0a27dcc9ab062b8004ddf3ed7d4e7f4.zip
NetworkPkg/IScsiDxe: Use UEFILib APIs to uninstall protocols.
During cleanup in case of initialization failure, some driver bindings are not installed. Using abstractions in UEFILib takes care of it. REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1428 Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ashish Singhal <ashishsingha@nvidia.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
Diffstat (limited to 'NetworkPkg')
-rw-r--r--NetworkPkg/IScsiDxe/IScsiDriver.c31
1 files changed, 11 insertions, 20 deletions
diff --git a/NetworkPkg/IScsiDxe/IScsiDriver.c b/NetworkPkg/IScsiDxe/IScsiDriver.c
index 91176e6715..8747de7930 100644
--- a/NetworkPkg/IScsiDxe/IScsiDriver.c
+++ b/NetworkPkg/IScsiDxe/IScsiDriver.c
@@ -1,6 +1,7 @@
/** @file
The entry point of IScsi driver.
+Copyright (c) 2019, NVIDIA Corporation. All rights reserved.
Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.<BR>
(C) Copyright 2017 Hewlett Packard Enterprise Development LP<BR>
@@ -1861,28 +1862,18 @@ Error3:
);
Error2:
- gBS->UninstallMultipleProtocolInterfaces (
- gIScsiIp6DriverBinding.DriverBindingHandle,
- &gEfiDriverBindingProtocolGuid,
- &gIScsiIp6DriverBinding,
- &gEfiComponentName2ProtocolGuid,
- &gIScsiComponentName2,
- &gEfiComponentNameProtocolGuid,
- &gIScsiComponentName,
- NULL
- );
+ EfiLibUninstallDriverBindingComponentName2 (
+ &gIScsiIp6DriverBinding,
+ &gIScsiComponentName,
+ &gIScsiComponentName2
+ );
Error1:
- gBS->UninstallMultipleProtocolInterfaces (
- ImageHandle,
- &gEfiDriverBindingProtocolGuid,
- &gIScsiIp4DriverBinding,
- &gEfiComponentName2ProtocolGuid,
- &gIScsiComponentName2,
- &gEfiComponentNameProtocolGuid,
- &gIScsiComponentName,
- NULL
- );
+ EfiLibUninstallDriverBindingComponentName2 (
+ &gIScsiIp4DriverBinding,
+ &gIScsiComponentName,
+ &gIScsiComponentName2
+ );
return Status;
}