public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [Patch] UefiCpuPkg RegisterCpuFeaturesLib: Enhance debug messages.
@ 2017-08-15  5:31 Eric Dong
  2017-08-15  5:31 ` [Patch] UefiCpuPkg RegisterCpuFeaturesLib: Fix buffer pointer error usage Eric Dong
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Eric Dong @ 2017-08-15  5:31 UTC (permalink / raw)
  To: edk2-devel; +Cc: Ruiyu Ni, Shao, Ming

Current debug message when enable/disable CPU feature not
correct. This patch enhances it to make it more accurate.

Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Shao, Ming <ming.shao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Eric Dong <eric.dong@intel.com>
---
 UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c
index 54c9827..474aea3 100644
--- a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c
+++ b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c
@@ -528,9 +528,9 @@ AnalysisProcessorFeatures (
           //
           SupportedMaskCleanBit (CpuFeaturesData->SettingPcds, CpuFeatureInOrder->FeatureMask);
           if (CpuFeatureInOrder->FeatureName != NULL) {
-            DEBUG ((DEBUG_WARN, "Warning :: Failed to enable Feature Name = %a.\n", CpuFeatureInOrder->FeatureName));
+            DEBUG ((DEBUG_WARN, "Warning :: Failed to enable Feature: Name = %a.\n", CpuFeatureInOrder->FeatureName));
           } else {
-            DEBUG ((DEBUG_WARN, "Warning :: Failed to enable Feature Mask = "));
+            DEBUG ((DEBUG_WARN, "Warning :: Failed to enable Feature: Mask = "));
             DumpCpuFeatureMask (CpuFeatureInOrder->FeatureMask);
           }
         }
@@ -538,9 +538,9 @@ AnalysisProcessorFeatures (
         Status = CpuFeatureInOrder->InitializeFunc (ProcessorNumber, CpuInfo, CpuFeatureInOrder->ConfigData, FALSE);
         if (EFI_ERROR (Status)) {
           if (CpuFeatureInOrder->FeatureName != NULL) {
-            DEBUG ((DEBUG_WARN, "Warning :: Failed to enable Feature Name = %a.\n", CpuFeatureInOrder->FeatureName));
+            DEBUG ((DEBUG_WARN, "Warning :: Failed to disable Feature: Name = %a.\n", CpuFeatureInOrder->FeatureName));
           } else {
-            DEBUG ((DEBUG_WARN, "Warning :: Failed to enable Feature Mask = "));
+            DEBUG ((DEBUG_WARN, "Warning :: Failed to disable Feature: Mask = "));
             DumpCpuFeatureMask (CpuFeatureInOrder->FeatureMask);
           }
         }
-- 
2.7.0.windows.1



^ permalink raw reply related	[flat|nested] 9+ messages in thread
* [Patch] UefiCpuPkg RegisterCpuFeaturesLib: Fix buffer pointer error usage.
@ 2017-08-16  1:03 Eric Dong
  2017-08-16  2:40 ` Kinney, Michael D
  0 siblings, 1 reply; 9+ messages in thread
From: Eric Dong @ 2017-08-16  1:03 UTC (permalink / raw)
  To: edk2-devel; +Cc: Ruiyu Ni, Shao Ming, Kinney Michael D

Current code allocate buffer for the pointer which later get value
from PCD database. but current code error use "=" for this case.
Use AllocateCopyPool instead to fix it.

V2 enhanced to directly use AllocateCopyPool to get the PCD value.
V3 enhanced to avoid using local temp variable.

Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Shao Ming <ming.shao@intel.com>
Cc: Kinney Michael D <michael.d.kinney@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Eric Dong <eric.dong@intel.com>
---
 .../RegisterCpuFeaturesLib/CpuFeaturesInitialize.c | 55 +++++-----------------
 1 file changed, 11 insertions(+), 44 deletions(-)

diff --git a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c
index 474aea3..a7e1852 100644
--- a/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c
+++ b/UefiCpuPkg/Library/RegisterCpuFeaturesLib/CpuFeaturesInitialize.c
@@ -51,48 +51,6 @@ SetSettingPcd (
 }
 
 /**
-  Worker function to get PcdCpuFeaturesSupport.
-
-  @return  The pointer to CPU feature bits mask buffer.
-**/
-UINT8 *
-GetSupportPcds (
-  VOID
-  )
-{
-  UINTN                  BitMaskSize;
-  UINT8                  *SupportBitMask;
-
-  BitMaskSize = PcdGetSize (PcdCpuFeaturesSupport);
-  SupportBitMask = AllocateZeroPool (BitMaskSize);
-  ASSERT (SupportBitMask != NULL);
-  SupportBitMask = (UINT8 *) PcdGetPtr (PcdCpuFeaturesSupport);
-
-  return SupportBitMask;
-}
-
-/**
-  Worker function to get PcdCpuFeaturesUserConfiguration.
-
-  @return  The pointer to CPU feature bits mask buffer.
-**/
-UINT8 *
-GetConfigurationPcds (
-  VOID
-  )
-{
-  UINTN                  BitMaskSize;
-  UINT8                  *SupportBitMask;
-
-  BitMaskSize = PcdGetSize (PcdCpuFeaturesUserConfiguration);
-  SupportBitMask = AllocateZeroPool (BitMaskSize);
-  ASSERT (SupportBitMask != NULL);
-  SupportBitMask = (UINT8 *) PcdGetPtr (PcdCpuFeaturesUserConfiguration);
-
-  return SupportBitMask;
-}
-
-/**
   Collects CPU type and feature information.
 
   @param[in, out]  CpuInfo  The pointer to CPU feature information
@@ -180,8 +138,17 @@ CpuInitDataInitialize (
   //
   // Get support and configuration PCDs
   //
-  CpuFeaturesData->SupportPcds       = GetSupportPcds ();
-  CpuFeaturesData->ConfigurationPcds = GetConfigurationPcds ();
+  CpuFeaturesData->SupportPcds = AllocateCopyPool (
+          PcdGetSize (PcdCpuFeaturesSupport),
+          PcdGetPtr (PcdCpuFeaturesSupport)
+          );
+  ASSERT (CpuFeaturesData->SupportPcds != NULL);
+
+  CpuFeaturesData->ConfigurationPcds = AllocateCopyPool (
+          PcdGetSize (PcdCpuFeaturesUserConfiguration),
+          PcdGetPtr (PcdCpuFeaturesUserConfiguration)
+          );
+  ASSERT (CpuFeaturesData->ConfigurationPcds != NULL);
 }
 
 /**
-- 
2.7.0.windows.1



^ permalink raw reply related	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2017-08-16  8:11 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-08-15  5:31 [Patch] UefiCpuPkg RegisterCpuFeaturesLib: Enhance debug messages Eric Dong
2017-08-15  5:31 ` [Patch] UefiCpuPkg RegisterCpuFeaturesLib: Fix buffer pointer error usage Eric Dong
2017-08-15  5:44   ` Ni, Ruiyu
2017-08-15  5:31 ` [Patch] UefiCpuPkg BaseUefiCpuLib: remove error reference code Eric Dong
2017-08-16  8:13   ` Ni, Ruiyu
2017-08-16  8:14     ` Dong, Eric
2017-08-16  8:12 ` [Patch] UefiCpuPkg RegisterCpuFeaturesLib: Enhance debug messages Ni, Ruiyu
  -- strict thread matches above, loose matches on Subject: below --
2017-08-16  1:03 [Patch] UefiCpuPkg RegisterCpuFeaturesLib: Fix buffer pointer error usage Eric Dong
2017-08-16  2:40 ` Kinney, Michael D

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox