From 02dab4284760ead01742123500104b64fdc92964 Mon Sep 17 00:00:00 2001 From: qhuang8 Date: Thu, 29 Mar 2007 07:48:48 +0000 Subject: [PATCH] Variable driver: add checking to make sure flash is properly initialized PxeBc driver: fix the issue that the giaddr is wrongly interpreted to "gateway address" git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2515 6f19259b-4bc3-4df7-8a09-765794883524 --- EdkModulePkg/Universal/Network/PxeBc/Dxe/pxe_bc_dhcp.c | 2 -- EdkModulePkg/Universal/Variable/RuntimeDxe/Variable.c | 9 +++++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/EdkModulePkg/Universal/Network/PxeBc/Dxe/pxe_bc_dhcp.c b/EdkModulePkg/Universal/Network/PxeBc/Dxe/pxe_bc_dhcp.c index 101c030bc8..2e22fc5a35 100644 --- a/EdkModulePkg/Universal/Network/PxeBc/Dxe/pxe_bc_dhcp.c +++ b/EdkModulePkg/Universal/Network/PxeBc/Dxe/pxe_bc_dhcp.c @@ -621,8 +621,6 @@ AddRouters ( DHCP_RECEIVE_BUFFER *RxBufPtr ) { - Ip4AddRouter (Private, &RxBufPtr->u.Dhcpv4.giaddr); - Ip4AddRouterList ( Private, (DHCPV4_OP_IP_LIST *) RxBufPtr->OpAdds.PktOptAdds[OP_ROUTER_LIST_IX - 1] diff --git a/EdkModulePkg/Universal/Variable/RuntimeDxe/Variable.c b/EdkModulePkg/Universal/Variable/RuntimeDxe/Variable.c index e224558651..589217a992 100644 --- a/EdkModulePkg/Universal/Variable/RuntimeDxe/Variable.c +++ b/EdkModulePkg/Universal/Variable/RuntimeDxe/Variable.c @@ -1403,6 +1403,15 @@ Returns: sizeof (UINT32), (UINT8 *) &VariableStoreEntry.Length ); + // + // As Variables are stored in NV storage, which are slow devices,such as flash. + // Variable operation may skip checking variable program result to improve performance, + // We can assume Variable program is OK through some check point. + // Variable Store Size Setting should be the first Variable write operation, + // We can assume all Read/Write is OK if we can set Variable store size successfully. + // If write fail, we will assert here + // + ASSERT(VariableStoreHeader->Size == VariableStoreEntry.Length); if (EFI_ERROR (Status)) { return Status; -- 2.39.2