Re: [edk2] [PATCH] NetworkPkg: Protocol Uninstallation Cleanup
Already pushed. SHA-1: 22b35e8bd1f9aea7bbab3a26e8ab4df339454463 Thanks, Jiaxin > -Original Message- > From: Ashish Singhal [mailto:ashishsin...@nvidia.com] > Sent: Monday, January 14, 2019 12:58 PM > To: Wu, Jiaxin ; edk2-devel@lists.01.org > Cc: Fu, Siyuan > Subject: RE: [PATCH] NetworkPkg: Protocol Uninstallation Cleanup > > Thanks Jiaxin. Please let me know if anything else is needed to mainline it. > > -Original Message- > From: Wu, Jiaxin > Sent: Thursday, January 10, 2019 6:01 PM > To: Ashish Singhal ; edk2-devel@lists.01.org > Cc: Fu, Siyuan > Subject: RE: [PATCH] NetworkPkg: Protocol Uninstallation Cleanup > > Looks good to me. > > Reviewed-by: Wu Jiaxin > > Thanks, > Jiaxin > > > -Original Message- > > From: Ashish Singhal [mailto:ashishsin...@nvidia.com] > > Sent: Friday, January 11, 2019 3:27 AM > > To: edk2-devel@lists.01.org > > Cc: Fu, Siyuan ; Wu, Jiaxin > > ; Ashish Singhal > > Subject: [PATCH] NetworkPkg: Protocol Uninstallation Cleanup > > > > Use UEFILib provided protocol uninstallation abstraction instead of > > direct API for a proper cleanup. > > > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1444 > > > > Contributed-under: TianoCore Contribution Agreement 1.1 > > Signed-off-by: Ashish Singhal > > --- > > NetworkPkg/DnsDxe/DnsDriver.c | 30 ++ > > NetworkPkg/HttpBootDxe/HttpBootDxe.c | 15 +-- > > NetworkPkg/HttpDxe/HttpDriver.c | 15 +-- > > NetworkPkg/IpSecDxe/IpSecDriver.c | 15 +-- > > NetworkPkg/TcpDxe/TcpDriver.c | 15 +-- > > NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c | 15 +-- > > 6 files changed, 35 insertions(+), 70 deletions(-) > > > > diff --git a/NetworkPkg/DnsDxe/DnsDriver.c > > b/NetworkPkg/DnsDxe/DnsDriver.c index 1f9b924..b74f5ba 100644 > > --- a/NetworkPkg/DnsDxe/DnsDriver.c > > +++ b/NetworkPkg/DnsDxe/DnsDriver.c > > @@ -510,28 +510,18 @@ DnsDriverEntryPoint ( > > FreePool (mDriverData); > > > >Error2: > > - gBS->UninstallMultipleProtocolInterfaces ( > > - gDns6DriverBinding.DriverBindingHandle, > > - &gEfiDriverBindingProtocolGuid, > > - &gDns6DriverBinding, > > - &gEfiComponentName2ProtocolGuid, > > - &gDnsComponentName2, > > - &gEfiComponentNameProtocolGuid, > > - &gDnsComponentName, > > - NULL > > - ); > > + EfiLibUninstallDriverBindingComponentName2 ( > > + &gDns6DriverBinding, > > + &gDnsComponentName, > > + &gDnsComponentName2 > > + ); > > > >Error1: > > -gBS->UninstallMultipleProtocolInterfaces ( > > - ImageHandle, > > - &gEfiDriverBindingProtocolGuid, > > - &gDns4DriverBinding, > > - &gEfiComponentName2ProtocolGuid, > > - &gDnsComponentName2, > > - &gEfiComponentNameProtocolGuid, > > - &gDnsComponentName, > > - NULL > > - ); > > +EfiLibUninstallDriverBindingComponentName2 ( > > + &gDns4DriverBinding, > > + &gDnsComponentName, > > + &gDnsComponentName2 > > + ); > > > >return Status; > > } > > diff --git a/NetworkPkg/HttpBootDxe/HttpBootDxe.c > > b/NetworkPkg/HttpBootDxe/HttpBootDxe.c > > index 7ec06f960..0b16f95 100644 > > --- a/NetworkPkg/HttpBootDxe/HttpBootDxe.c > > +++ b/NetworkPkg/HttpBootDxe/HttpBootDxe.c > > @@ -1327,16 +1327,11 @@ HttpBootDxeDriverEntryPoint ( > > &gHttpBootDxeComponentName2 > > ); > >if (EFI_ERROR (Status)) { > > -gBS->UninstallMultipleProtocolInterfaces( > > - ImageHandle, > > - &gEfiDriverBindingProtocolGuid, > > - &gHttpBootIp4DxeDriverBinding, > > - &gEfiComponentName2ProtocolGuid, > > - &gHttpBootDxeComponentName2, > > - &gEfiComponentNameProtocolGuid, > > - &gHttpBootDxeComponentName, > > - NULL > > - ); > > +EfiLibUninstallDriverBindingComponentName2( > > + &gHttpBootIp4DxeDriverBinding, > > + &gHttpBootDxeComponentName, > > + &gHttpBootDxeComponentName2 > > + ); > >} > >return Status; > > } > > diff --git a/NetworkPkg/HttpDxe/HttpDriver.c > > b/NetworkPkg/HttpDxe/HttpDriver.c index 8df984d..979d76d 100644 > > --- a/NetworkPkg/HttpDxe/HttpDriver.c > > +++ b/NetworkPkg/HttpDxe/HttpDriver.c > > @@ -230,16 +230,11 @@ HttpDxeDriverEntryPoint ( > > &gHttpDxeComponentName2 > > ); > >if (EFI_ERROR (Status)) { > > -gBS->UninstallMultipleProtocolInterfaces ( > > - ImageHandle, > > - &gEfiDriverBindingProtocolGuid, > > - &gHttpDxeIp4DriverBinding, > > - &gEfiComponentName2ProtocolGuid, > > - &gHttpDxeComponentName2, > > - &gEfiComponentNameProtocolGuid, > > - &gHttpDxeComponentName, > > - NULL > > - ); > > +EfiLibUninstallDriverBindingCompon
Re: [edk2] [PATCH] NetworkPkg: Protocol Uninstallation Cleanup
Thanks Jiaxin. Please let me know if anything else is needed to mainline it. -Original Message- From: Wu, Jiaxin Sent: Thursday, January 10, 2019 6:01 PM To: Ashish Singhal ; edk2-devel@lists.01.org Cc: Fu, Siyuan Subject: RE: [PATCH] NetworkPkg: Protocol Uninstallation Cleanup Looks good to me. Reviewed-by: Wu Jiaxin Thanks, Jiaxin > -Original Message- > From: Ashish Singhal [mailto:ashishsin...@nvidia.com] > Sent: Friday, January 11, 2019 3:27 AM > To: edk2-devel@lists.01.org > Cc: Fu, Siyuan ; Wu, Jiaxin > ; Ashish Singhal > Subject: [PATCH] NetworkPkg: Protocol Uninstallation Cleanup > > Use UEFILib provided protocol uninstallation abstraction instead of > direct API for a proper cleanup. > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1444 > > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Ashish Singhal > --- > NetworkPkg/DnsDxe/DnsDriver.c | 30 ++ > NetworkPkg/HttpBootDxe/HttpBootDxe.c | 15 +-- > NetworkPkg/HttpDxe/HttpDriver.c | 15 +-- > NetworkPkg/IpSecDxe/IpSecDriver.c | 15 +-- > NetworkPkg/TcpDxe/TcpDriver.c | 15 +-- > NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c | 15 +-- > 6 files changed, 35 insertions(+), 70 deletions(-) > > diff --git a/NetworkPkg/DnsDxe/DnsDriver.c > b/NetworkPkg/DnsDxe/DnsDriver.c index 1f9b924..b74f5ba 100644 > --- a/NetworkPkg/DnsDxe/DnsDriver.c > +++ b/NetworkPkg/DnsDxe/DnsDriver.c > @@ -510,28 +510,18 @@ DnsDriverEntryPoint ( > FreePool (mDriverData); > >Error2: > - gBS->UninstallMultipleProtocolInterfaces ( > - gDns6DriverBinding.DriverBindingHandle, > - &gEfiDriverBindingProtocolGuid, > - &gDns6DriverBinding, > - &gEfiComponentName2ProtocolGuid, > - &gDnsComponentName2, > - &gEfiComponentNameProtocolGuid, > - &gDnsComponentName, > - NULL > - ); > + EfiLibUninstallDriverBindingComponentName2 ( > + &gDns6DriverBinding, > + &gDnsComponentName, > + &gDnsComponentName2 > + ); > >Error1: > -gBS->UninstallMultipleProtocolInterfaces ( > - ImageHandle, > - &gEfiDriverBindingProtocolGuid, > - &gDns4DriverBinding, > - &gEfiComponentName2ProtocolGuid, > - &gDnsComponentName2, > - &gEfiComponentNameProtocolGuid, > - &gDnsComponentName, > - NULL > - ); > +EfiLibUninstallDriverBindingComponentName2 ( > + &gDns4DriverBinding, > + &gDnsComponentName, > + &gDnsComponentName2 > + ); > >return Status; > } > diff --git a/NetworkPkg/HttpBootDxe/HttpBootDxe.c > b/NetworkPkg/HttpBootDxe/HttpBootDxe.c > index 7ec06f960..0b16f95 100644 > --- a/NetworkPkg/HttpBootDxe/HttpBootDxe.c > +++ b/NetworkPkg/HttpBootDxe/HttpBootDxe.c > @@ -1327,16 +1327,11 @@ HttpBootDxeDriverEntryPoint ( > &gHttpBootDxeComponentName2 > ); >if (EFI_ERROR (Status)) { > -gBS->UninstallMultipleProtocolInterfaces( > - ImageHandle, > - &gEfiDriverBindingProtocolGuid, > - &gHttpBootIp4DxeDriverBinding, > - &gEfiComponentName2ProtocolGuid, > - &gHttpBootDxeComponentName2, > - &gEfiComponentNameProtocolGuid, > - &gHttpBootDxeComponentName, > - NULL > - ); > +EfiLibUninstallDriverBindingComponentName2( > + &gHttpBootIp4DxeDriverBinding, > + &gHttpBootDxeComponentName, > + &gHttpBootDxeComponentName2 > + ); >} >return Status; > } > diff --git a/NetworkPkg/HttpDxe/HttpDriver.c > b/NetworkPkg/HttpDxe/HttpDriver.c index 8df984d..979d76d 100644 > --- a/NetworkPkg/HttpDxe/HttpDriver.c > +++ b/NetworkPkg/HttpDxe/HttpDriver.c > @@ -230,16 +230,11 @@ HttpDxeDriverEntryPoint ( > &gHttpDxeComponentName2 > ); >if (EFI_ERROR (Status)) { > -gBS->UninstallMultipleProtocolInterfaces ( > - ImageHandle, > - &gEfiDriverBindingProtocolGuid, > - &gHttpDxeIp4DriverBinding, > - &gEfiComponentName2ProtocolGuid, > - &gHttpDxeComponentName2, > - &gEfiComponentNameProtocolGuid, > - &gHttpDxeComponentName, > - NULL > - ); > +EfiLibUninstallDriverBindingComponentName2 ( > + &gHttpDxeIp4DriverBinding, > + &gHttpDxeComponentName, > + &gHttpDxeComponentName2 > + ); >} >return Status; > } > diff --git a/NetworkPkg/IpSecDxe/IpSecDriver.c > b/NetworkPkg/IpSecDxe/IpSecDriver.c > index f66f89a..3082d99 100644 > --- a/NetworkPkg/IpSecDxe/IpSecDriver.c > +++ b/NetworkPkg/IpSecDxe/IpSecDriver.c > @@ -631,16 +631,11 @@ IpSecDriverEntryPoint ( >return Status; > > ON_UNINSTALL_IPSEC4_DB: > - gBS->UninstallMultipleProtocolInterfaces ( > - ImageHandle, > - &gEfiDriverBindingProtocolGuid, > - &
Re: [edk2] [PATCH] NetworkPkg: Protocol Uninstallation Cleanup
Looks good to me. Reviewed-by: Wu Jiaxin Thanks, Jiaxin > -Original Message- > From: Ashish Singhal [mailto:ashishsin...@nvidia.com] > Sent: Friday, January 11, 2019 3:27 AM > To: edk2-devel@lists.01.org > Cc: Fu, Siyuan ; Wu, Jiaxin ; > Ashish Singhal > Subject: [PATCH] NetworkPkg: Protocol Uninstallation Cleanup > > Use UEFILib provided protocol uninstallation abstraction > instead of direct API for a proper cleanup. > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1444 > > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Ashish Singhal > --- > NetworkPkg/DnsDxe/DnsDriver.c | 30 ++ > NetworkPkg/HttpBootDxe/HttpBootDxe.c | 15 +-- > NetworkPkg/HttpDxe/HttpDriver.c | 15 +-- > NetworkPkg/IpSecDxe/IpSecDriver.c | 15 +-- > NetworkPkg/TcpDxe/TcpDriver.c | 15 +-- > NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c | 15 +-- > 6 files changed, 35 insertions(+), 70 deletions(-) > > diff --git a/NetworkPkg/DnsDxe/DnsDriver.c > b/NetworkPkg/DnsDxe/DnsDriver.c > index 1f9b924..b74f5ba 100644 > --- a/NetworkPkg/DnsDxe/DnsDriver.c > +++ b/NetworkPkg/DnsDxe/DnsDriver.c > @@ -510,28 +510,18 @@ DnsDriverEntryPoint ( > FreePool (mDriverData); > >Error2: > - gBS->UninstallMultipleProtocolInterfaces ( > - gDns6DriverBinding.DriverBindingHandle, > - &gEfiDriverBindingProtocolGuid, > - &gDns6DriverBinding, > - &gEfiComponentName2ProtocolGuid, > - &gDnsComponentName2, > - &gEfiComponentNameProtocolGuid, > - &gDnsComponentName, > - NULL > - ); > + EfiLibUninstallDriverBindingComponentName2 ( > + &gDns6DriverBinding, > + &gDnsComponentName, > + &gDnsComponentName2 > + ); > >Error1: > -gBS->UninstallMultipleProtocolInterfaces ( > - ImageHandle, > - &gEfiDriverBindingProtocolGuid, > - &gDns4DriverBinding, > - &gEfiComponentName2ProtocolGuid, > - &gDnsComponentName2, > - &gEfiComponentNameProtocolGuid, > - &gDnsComponentName, > - NULL > - ); > +EfiLibUninstallDriverBindingComponentName2 ( > + &gDns4DriverBinding, > + &gDnsComponentName, > + &gDnsComponentName2 > + ); > >return Status; > } > diff --git a/NetworkPkg/HttpBootDxe/HttpBootDxe.c > b/NetworkPkg/HttpBootDxe/HttpBootDxe.c > index 7ec06f960..0b16f95 100644 > --- a/NetworkPkg/HttpBootDxe/HttpBootDxe.c > +++ b/NetworkPkg/HttpBootDxe/HttpBootDxe.c > @@ -1327,16 +1327,11 @@ HttpBootDxeDriverEntryPoint ( > &gHttpBootDxeComponentName2 > ); >if (EFI_ERROR (Status)) { > -gBS->UninstallMultipleProtocolInterfaces( > - ImageHandle, > - &gEfiDriverBindingProtocolGuid, > - &gHttpBootIp4DxeDriverBinding, > - &gEfiComponentName2ProtocolGuid, > - &gHttpBootDxeComponentName2, > - &gEfiComponentNameProtocolGuid, > - &gHttpBootDxeComponentName, > - NULL > - ); > +EfiLibUninstallDriverBindingComponentName2( > + &gHttpBootIp4DxeDriverBinding, > + &gHttpBootDxeComponentName, > + &gHttpBootDxeComponentName2 > + ); >} >return Status; > } > diff --git a/NetworkPkg/HttpDxe/HttpDriver.c > b/NetworkPkg/HttpDxe/HttpDriver.c > index 8df984d..979d76d 100644 > --- a/NetworkPkg/HttpDxe/HttpDriver.c > +++ b/NetworkPkg/HttpDxe/HttpDriver.c > @@ -230,16 +230,11 @@ HttpDxeDriverEntryPoint ( > &gHttpDxeComponentName2 > ); >if (EFI_ERROR (Status)) { > -gBS->UninstallMultipleProtocolInterfaces ( > - ImageHandle, > - &gEfiDriverBindingProtocolGuid, > - &gHttpDxeIp4DriverBinding, > - &gEfiComponentName2ProtocolGuid, > - &gHttpDxeComponentName2, > - &gEfiComponentNameProtocolGuid, > - &gHttpDxeComponentName, > - NULL > - ); > +EfiLibUninstallDriverBindingComponentName2 ( > + &gHttpDxeIp4DriverBinding, > + &gHttpDxeComponentName, > + &gHttpDxeComponentName2 > + ); >} >return Status; > } > diff --git a/NetworkPkg/IpSecDxe/IpSecDriver.c > b/NetworkPkg/IpSecDxe/IpSecDriver.c > index f66f89a..3082d99 100644 > --- a/NetworkPkg/IpSecDxe/IpSecDriver.c > +++ b/NetworkPkg/IpSecDxe/IpSecDriver.c > @@ -631,16 +631,11 @@ IpSecDriverEntryPoint ( >return Status; > > ON_UNINSTALL_IPSEC4_DB: > - gBS->UninstallMultipleProtocolInterfaces ( > - ImageHandle, > - &gEfiDriverBindingProtocolGuid, > - &gIpSec4DriverBinding, > - &gEfiComponentName2ProtocolGuid, > - &gIpSecComponentName2, > - &gEfiComponentNameProtocolGuid, > - &gIpSecComponentName, > - NULL > - ); > + EfiLibUninstallDriverBindingComponentName2 ( > +&gIpSec4DriverBinding,
[edk2] [PATCH] NetworkPkg: Protocol Uninstallation Cleanup
Use UEFILib provided protocol uninstallation abstraction instead of direct API for a proper cleanup. REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1444 Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ashish Singhal --- NetworkPkg/DnsDxe/DnsDriver.c | 30 ++ NetworkPkg/HttpBootDxe/HttpBootDxe.c | 15 +-- NetworkPkg/HttpDxe/HttpDriver.c | 15 +-- NetworkPkg/IpSecDxe/IpSecDriver.c | 15 +-- NetworkPkg/TcpDxe/TcpDriver.c | 15 +-- NetworkPkg/UefiPxeBcDxe/PxeBcDriver.c | 15 +-- 6 files changed, 35 insertions(+), 70 deletions(-) diff --git a/NetworkPkg/DnsDxe/DnsDriver.c b/NetworkPkg/DnsDxe/DnsDriver.c index 1f9b924..b74f5ba 100644 --- a/NetworkPkg/DnsDxe/DnsDriver.c +++ b/NetworkPkg/DnsDxe/DnsDriver.c @@ -510,28 +510,18 @@ DnsDriverEntryPoint ( FreePool (mDriverData); Error2: - gBS->UninstallMultipleProtocolInterfaces ( - gDns6DriverBinding.DriverBindingHandle, - &gEfiDriverBindingProtocolGuid, - &gDns6DriverBinding, - &gEfiComponentName2ProtocolGuid, - &gDnsComponentName2, - &gEfiComponentNameProtocolGuid, - &gDnsComponentName, - NULL - ); + EfiLibUninstallDriverBindingComponentName2 ( + &gDns6DriverBinding, + &gDnsComponentName, + &gDnsComponentName2 + ); Error1: -gBS->UninstallMultipleProtocolInterfaces ( - ImageHandle, - &gEfiDriverBindingProtocolGuid, - &gDns4DriverBinding, - &gEfiComponentName2ProtocolGuid, - &gDnsComponentName2, - &gEfiComponentNameProtocolGuid, - &gDnsComponentName, - NULL - ); +EfiLibUninstallDriverBindingComponentName2 ( + &gDns4DriverBinding, + &gDnsComponentName, + &gDnsComponentName2 + ); return Status; } diff --git a/NetworkPkg/HttpBootDxe/HttpBootDxe.c b/NetworkPkg/HttpBootDxe/HttpBootDxe.c index 7ec06f960..0b16f95 100644 --- a/NetworkPkg/HttpBootDxe/HttpBootDxe.c +++ b/NetworkPkg/HttpBootDxe/HttpBootDxe.c @@ -1327,16 +1327,11 @@ HttpBootDxeDriverEntryPoint ( &gHttpBootDxeComponentName2 ); if (EFI_ERROR (Status)) { -gBS->UninstallMultipleProtocolInterfaces( - ImageHandle, - &gEfiDriverBindingProtocolGuid, - &gHttpBootIp4DxeDriverBinding, - &gEfiComponentName2ProtocolGuid, - &gHttpBootDxeComponentName2, - &gEfiComponentNameProtocolGuid, - &gHttpBootDxeComponentName, - NULL - ); +EfiLibUninstallDriverBindingComponentName2( + &gHttpBootIp4DxeDriverBinding, + &gHttpBootDxeComponentName, + &gHttpBootDxeComponentName2 + ); } return Status; } diff --git a/NetworkPkg/HttpDxe/HttpDriver.c b/NetworkPkg/HttpDxe/HttpDriver.c index 8df984d..979d76d 100644 --- a/NetworkPkg/HttpDxe/HttpDriver.c +++ b/NetworkPkg/HttpDxe/HttpDriver.c @@ -230,16 +230,11 @@ HttpDxeDriverEntryPoint ( &gHttpDxeComponentName2 ); if (EFI_ERROR (Status)) { -gBS->UninstallMultipleProtocolInterfaces ( - ImageHandle, - &gEfiDriverBindingProtocolGuid, - &gHttpDxeIp4DriverBinding, - &gEfiComponentName2ProtocolGuid, - &gHttpDxeComponentName2, - &gEfiComponentNameProtocolGuid, - &gHttpDxeComponentName, - NULL - ); +EfiLibUninstallDriverBindingComponentName2 ( + &gHttpDxeIp4DriverBinding, + &gHttpDxeComponentName, + &gHttpDxeComponentName2 + ); } return Status; } diff --git a/NetworkPkg/IpSecDxe/IpSecDriver.c b/NetworkPkg/IpSecDxe/IpSecDriver.c index f66f89a..3082d99 100644 --- a/NetworkPkg/IpSecDxe/IpSecDriver.c +++ b/NetworkPkg/IpSecDxe/IpSecDriver.c @@ -631,16 +631,11 @@ IpSecDriverEntryPoint ( return Status; ON_UNINSTALL_IPSEC4_DB: - gBS->UninstallMultipleProtocolInterfaces ( - ImageHandle, - &gEfiDriverBindingProtocolGuid, - &gIpSec4DriverBinding, - &gEfiComponentName2ProtocolGuid, - &gIpSecComponentName2, - &gEfiComponentNameProtocolGuid, - &gIpSecComponentName, - NULL - ); + EfiLibUninstallDriverBindingComponentName2 ( +&gIpSec4DriverBinding, +&gIpSecComponentName, +&gIpSecComponentName2 +); ON_UNINSTALL_IPSEC: gBS->UninstallProtocolInterface ( diff --git a/NetworkPkg/TcpDxe/TcpDriver.c b/NetworkPkg/TcpDxe/TcpDriver.c index 2d4b16c..00d172b 100644 --- a/NetworkPkg/TcpDxe/TcpDriver.c +++ b/NetworkPkg/TcpDxe/TcpDriver.c @@ -202,16 +202,11 @@ TcpDriverEntryPoint ( &gTcpComponentName2 ); if (EFI_ERROR (Status)) { -gBS->UninstallMultipleProtocolInterfaces ( - ImageHandle, - &gEfiDriverBindingProtocolGuid, - &gTcp4DriverBinding, - &gEfiCompon