]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ArmPkg/Library/ArmMmuLib/Arm/ArmMmuLibCore.c
ArmPkg/ArmMmuLib ARM: trim high memory regions instead of rejecting them
[mirror_edk2.git] / ArmPkg / Library / ArmMmuLib / Arm / ArmMmuLibCore.c
index bffab83d4fd0bbe1571fbab9ca3ae0c879a6357b..baa085c3849a9279e175ca8443531a8597eda048 100644 (file)
@@ -744,10 +744,11 @@ ArmSetMemoryAttributes (
   UINT64        ChunkLength;\r
   BOOLEAN       FlushTlbs;\r
 \r
-  if (BaseAddress > (UINT64)MAX_ADDRESS - Length + 1) {\r
+  if (BaseAddress > (UINT64)MAX_ADDRESS) {\r
     return EFI_UNSUPPORTED;\r
   }\r
 \r
+  Length = MIN (Length, (UINT64)MAX_ADDRESS - BaseAddress + 1);\r
   if (Length == 0) {\r
     return EFI_SUCCESS;\r
   }\r