]> git.proxmox.com Git - mirror_edk2.git/commitdiff
MdeModulePkg/Variable: add debug logs in VariableServiceSetVariable
authorVijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com>
Wed, 21 Nov 2018 15:29:06 +0000 (23:29 +0800)
committerStar Zeng <star.zeng@intel.com>
Fri, 23 Nov 2018 01:54:55 +0000 (09:54 +0800)
Print debug messages if size of the VariableName plus DataSize exceeds
Max(Auth|Voltaile)VariableSize bytes. The messages will be useful if any
platform specific value of Max(Auth|Voltaile)VariableSize PCDs have to
be changed.

Cc: Star Zeng <star.zeng@intel.com>
Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Vijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c

index 8e8db71bd201c8a2f74c64d2d0eddf3f50914c29..d100b1dcc552b196409b400926cab54f553e36d2 100644 (file)
@@ -3234,14 +3234,44 @@ VariableServiceSetVariable (
     //\r
     if ((Attributes & VARIABLE_ATTRIBUTE_AT_AW) != 0) {\r
       if (StrSize (VariableName) + PayloadSize > mVariableModuleGlobal->MaxAuthVariableSize - GetVariableHeaderSize ()) {\r
+        DEBUG ((DEBUG_ERROR,\r
+          "%a: Failed to set variable '%s' with Guid %g\n",\r
+          __FUNCTION__, VariableName, VendorGuid));\r
+        DEBUG ((DEBUG_ERROR,\r
+          "NameSize(0x%x) + PayloadSize(0x%x) > "\r
+          "MaxAuthVariableSize(0x%x) - HeaderSize(0x%x)\n",\r
+          StrSize (VariableName), PayloadSize,\r
+          mVariableModuleGlobal->MaxAuthVariableSize,\r
+          GetVariableHeaderSize ()\r
+          ));\r
         return EFI_INVALID_PARAMETER;\r
       }\r
     } else if ((Attributes & EFI_VARIABLE_NON_VOLATILE) != 0) {\r
       if (StrSize (VariableName) + PayloadSize > mVariableModuleGlobal->MaxVariableSize - GetVariableHeaderSize ()) {\r
+        DEBUG ((DEBUG_ERROR,\r
+          "%a: Failed to set variable '%s' with Guid %g\n",\r
+          __FUNCTION__, VariableName, VendorGuid));\r
+        DEBUG ((DEBUG_ERROR,\r
+          "NameSize(0x%x) + PayloadSize(0x%x) > "\r
+          "MaxVariableSize(0x%x) - HeaderSize(0x%x)\n",\r
+          StrSize (VariableName), PayloadSize,\r
+          mVariableModuleGlobal->MaxVariableSize,\r
+          GetVariableHeaderSize ()\r
+          ));\r
         return EFI_INVALID_PARAMETER;\r
       }\r
     } else {\r
       if (StrSize (VariableName) + PayloadSize > mVariableModuleGlobal->MaxVolatileVariableSize - GetVariableHeaderSize ()) {\r
+        DEBUG ((DEBUG_ERROR,\r
+          "%a: Failed to set variable '%s' with Guid %g\n",\r
+          __FUNCTION__, VariableName, VendorGuid));\r
+        DEBUG ((DEBUG_ERROR,\r
+          "NameSize(0x%x) + PayloadSize(0x%x) > "\r
+          "MaxVolatileVariableSize(0x%x) - HeaderSize(0x%x)\n",\r
+          StrSize (VariableName), PayloadSize,\r
+          mVariableModuleGlobal->MaxVolatileVariableSize,\r
+          GetVariableHeaderSize ()\r
+          ));\r
         return EFI_INVALID_PARAMETER;\r
       }\r
     }\r