Reviewed-by: Sriram Subramanian <[email protected]>

-----Original Message-----
From: Fu Siyuan [mailto:[email protected]] 
Sent: Thursday, October 15, 2015 11:36 AM
To: [email protected]
Cc: [email protected]; Subramanian, Sriram (System FW, HP Servers)
Subject: [Patch 2/2] MdeModulePkg: reset DHCP child when leaving PXE LoadFile.

The DHCP4 can have only one configured child instance so we need to reset the 
DHCP4 child when leaving PXE driver's LoadFile() function, otherwise the other 
programs which also need to use DHCP4 (like HTTP boot) will be impacted.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Fu Siyuan <[email protected]>
---
 MdeModulePkg/Universal/Network/UefiPxeBcDxe/PxeBcImpl.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/MdeModulePkg/Universal/Network/UefiPxeBcDxe/PxeBcImpl.c 
b/MdeModulePkg/Universal/Network/UefiPxeBcDxe/PxeBcImpl.c
index 72923f1..9213ca1 100644
--- a/MdeModulePkg/Universal/Network/UefiPxeBcDxe/PxeBcImpl.c
+++ b/MdeModulePkg/Universal/Network/UefiPxeBcDxe/PxeBcImpl.c
@@ -2902,9 +2902,14 @@ EfiPxeLoadFile (
   //
   if (Status == EFI_SUCCESS) {
     //
-    // The functionality of PXE Base Code protocol will not be stopped,
+    // The DHCP4 can have only one configured child instance so we need to stop
+    // reset the DHCP4 child before we return. Otherwise the other programs 
which 
+    // also need to use DHCP4 will be impacted.
+    // Other functionality of PXE Base Code protocol will not be 
+ stopped,
     // when downloading is successfully.
     //
+    Private->Dhcp4->Stop (Private->Dhcp4);
+    Private->Dhcp4->Configure (Private->Dhcp4, NULL);
     return EFI_SUCCESS;
 
   } else if (Status == EFI_BUFFER_TOO_SMALL) {
--
2.5.0.windows.1

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to