Fixed one issue for IPF, the entry address needs 8 bytes alignment.
[mirror_edk2.git] / MdeModulePkg / Universal / Network / ArpDxe / ArpImpl.c
index b46c704..52b6e21 100644 (file)
@@ -1545,10 +1545,10 @@ ArpFindCacheEntry (
 \r
   if (EntryLength != NULL) {\r
     //\r
-    // Return the entry length.\r
+    // Return the entry length, make sure its 8 bytes alignment.\r
     //\r
-    *EntryLength = sizeof (EFI_ARP_FIND_DATA) + Instance->ConfigData.SwAddressLength +\r
-                   ArpService->SnpMode.HwAddressSize;\r
+    *EntryLength = (((sizeof (EFI_ARP_FIND_DATA) + Instance->ConfigData.SwAddressLength +\r
+                   ArpService->SnpMode.HwAddressSize) + 3) & ~(0x3));\r
   }\r
 \r
   if (EntryCount != NULL) {\r