From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web12.37478.1658210327581703622 for ; Mon, 18 Jul 2022 22:58:47 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=YAKX0xS8; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: cosmo.lai@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1658210327; x=1689746327; h=from:to:cc:subject:date:message-id; bh=fc/YAw5tdDUolYRzlevjm2HQPNY59AqmLcvfm074d8E=; b=YAKX0xS8xQVzPWFvFOYWyFwroVkIhWJjHXj86iy+y7oGY2oNFcLfwhik DnzF8vXHlhWe1aBrin6UXYci5KTipdRN69eWDMjDeq5MmPGoZsVBWIklV i3NlPYtwQtQapYLlIneTSVL1ed7Tm0vTJo/twR/F8Qaly5ywiW2DA+6gM mp5toN0u10RhrWOHaTEpqssFywHMnggx30oYl+3xqEew6GwZxi02cY4tU WVaQXmtDJGYITS4bAjqQCev7eK9x4CUE2APJt8ireUqVE8ItDO5FjQ1// bYEmI1vrg2ipZCa8nmvf4iB3HN8t4oYbp3vvTxgNe8kGhWZ2ClCr+gTyH Q==; X-IronPort-AV: E=McAfee;i="6400,9594,10412"; a="287145549" X-IronPort-AV: E=Sophos;i="5.92,283,1650956400"; d="scan'208";a="287145549" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jul 2022 22:58:47 -0700 X-IronPort-AV: E=Sophos;i="5.92,283,1650956400"; d="scan'208";a="655603901" Received: from cosmolai-mobl1.gar.corp.intel.com ([10.252.134.41]) by fmsmga008-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jul 2022 22:58:43 -0700 From: "Cosmo Lai" To: devel@edk2.groups.io Cc: Cosmo Lai , Jian J Wang , Liming Gao , Dandan Bi Subject: [PATCH v5] MdeModulePkg/Include: Long debug string is truncated to 104 char Date: Tue, 19 Jul 2022 13:58:32 +0800 Message-Id: <98b4283b3ccad4a64b141ae7832f0698dd777877.1658210289.git.cosmo.lai@intel.com> X-Mailer: git-send-email 2.16.2.windows.1 From: Cosmo Lai REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3986 The EFI_STATUS_CODE_DATA_MAX_SIZE is defined as 200 in MdeModulePkg. After reducing 96byte buffer for variable parameters it is limited to only 104 char debug string. This is a non-necessary limitation. This change sets EFI_STATUS_CODE_DATA_MAX_SIZE to 0x200, and moves MAX_EXTENDED_DATA_SIZE definition to the same header file with value of EFI_STATUS_CODE_DATA_MAX_SIZE + sizeof (EFI_STATUS_CODE_DATA) which is used in ReportStatusCodeLib to support longer debug string. Cc: Jian J Wang Cc: Liming Gao Cc: Dandan Bi Signed-off-by: Cosmo Lai --- MdeModulePkg/Include/Guid/StatusCodeDataTypeDebug.h | 10 +++++++++- .../Library/DxeReportStatusCodeLib/ReportStatusCodeLib.c | 6 ------ .../Library/PeiReportStatusCodeLib/ReportStatusCodeLib.c | 5 ----- .../RuntimeDxeReportStatusCodeLib/ReportStatusCodeLib.c | 5 ----- 4 files changed, 9 insertions(+), 17 deletions(-) diff --git a/MdeModulePkg/Include/Guid/StatusCodeDataTypeDebug.h b/MdeModulePkg/Include/Guid/StatusCodeDataTypeDebug.h index 16203452e4..6f2688064b 100644 --- a/MdeModulePkg/Include/Guid/StatusCodeDataTypeDebug.h +++ b/MdeModulePkg/Include/Guid/StatusCodeDataTypeDebug.h @@ -10,6 +10,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #ifndef _STATUS_CODE_DATA_TYPE_DEBUG_H_ #define _STATUS_CODE_DATA_TYPE_DEBUG_H_ +#include + /// /// The Global ID used to identify a structure of type EFI_DEBUG_INFO. /// @@ -21,7 +23,13 @@ SPDX-License-Identifier: BSD-2-Clause-Patent /// /// The maximum size of an EFI_DEBUG_INFO structure. /// -#define EFI_STATUS_CODE_DATA_MAX_SIZE 200 +#define EFI_STATUS_CODE_DATA_MAX_SIZE 0x200 + +/// +/// Define the maximum extended data size that is supported when a +/// status code is reported. +/// +#define MAX_EXTENDED_DATA_SIZE (EFI_STATUS_CODE_DATA_MAX_SIZE + sizeof(EFI_STATUS_CODE_DATA)) /// /// This structure contains the ErrorLevel passed into the DEBUG() macro, followed diff --git a/MdeModulePkg/Library/DxeReportStatusCodeLib/ReportStatusCodeLib.c b/MdeModulePkg/Library/DxeReportStatusCodeLib/ReportStatusCodeLib.c index ed01d8aacb..da254b755f 100644 --- a/MdeModulePkg/Library/DxeReportStatusCodeLib/ReportStatusCodeLib.c +++ b/MdeModulePkg/Library/DxeReportStatusCodeLib/ReportStatusCodeLib.c @@ -19,12 +19,6 @@ #include #include -// -// Define the maximum extended data size that is supported when a status code is -// reported at TPL_HIGH_LEVEL. -// -#define MAX_EXTENDED_DATA_SIZE 0x200 - EFI_STATUS_CODE_PROTOCOL *mReportStatusCodeLibStatusCodeProtocol = NULL; /** diff --git a/MdeModulePkg/Library/PeiReportStatusCodeLib/ReportStatusCodeLib.c b/MdeModulePkg/Library/PeiReportStatusCodeLib/ReportStatusCodeLib.c index b0a5f61cda..71da0e94fc 100644 --- a/MdeModulePkg/Library/PeiReportStatusCodeLib/ReportStatusCodeLib.c +++ b/MdeModulePkg/Library/PeiReportStatusCodeLib/ReportStatusCodeLib.c @@ -17,11 +17,6 @@ #include #include -// -// Define the maximum extended data size that is supported in the PEI phase -// -#define MAX_EXTENDED_DATA_SIZE 0x200 - /** Internal worker function that reports a status code through the PEI Status Code Service or OEM Hook Status Code Library. diff --git a/MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/ReportStatusCodeLib.c b/MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/ReportStatusCodeLib.c index fdda288d33..8fd20ff239 100644 --- a/MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/ReportStatusCodeLib.c +++ b/MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/ReportStatusCodeLib.c @@ -21,11 +21,6 @@ #include #include -// -// Define the maximum extended data size that is supported when a status code is reported. -// -#define MAX_EXTENDED_DATA_SIZE 0x200 - EFI_STATUS_CODE_PROTOCOL *mReportStatusCodeLibStatusCodeProtocol = NULL; EFI_EVENT mReportStatusCodeLibVirtualAddressChangeEvent; EFI_EVENT mReportStatusCodeLibExitBootServicesEvent; -- 2.16.2.windows.1