Good day Ianx,

On 15.10.21 16:33, IanX Kuo wrote:
From: IanX Kuo <ianx....@intel.com>

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3675

Remove MdeModulePkg dependency

Cc: Eric Dong <eric.d...@intel.com>
Cc: Ray Ni <ray...@intel.com>
Cc: Rahul Kumar <rahul1.ku...@intel.com>
Signed-off-by: IanX Kuo <ianx....@intel.com>
---
  UefiCpuPkg/Library/CpuCacheInfoLib/CpuCacheInfoLib.c         | 5 ++++-
  UefiCpuPkg/Library/CpuCacheInfoLib/DxeCpuCacheInfoLib.inf    | 2 --
  UefiCpuPkg/Library/CpuCacheInfoLib/InternalCpuCacheInfoLib.h | 1 -
  UefiCpuPkg/Library/CpuCacheInfoLib/PeiCpuCacheInfoLib.inf    | 2 --
  4 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/UefiCpuPkg/Library/CpuCacheInfoLib/CpuCacheInfoLib.c 
b/UefiCpuPkg/Library/CpuCacheInfoLib/CpuCacheInfoLib.c
index c0077d6770..b5ed05bd43 100644
--- a/UefiCpuPkg/Library/CpuCacheInfoLib/CpuCacheInfoLib.c
+++ b/UefiCpuPkg/Library/CpuCacheInfoLib/CpuCacheInfoLib.c
@@ -282,6 +282,7 @@ CpuCacheInfoCollectCpuCacheInfoData (
    UINTN                     LocalCacheInfoCount;
    UINTN                     Index;
    UINTN                     NextIndex;
+  VOID                      *QuickSortBuffer;
//
    // Get number of Packages and Package ID.
@@ -369,7 +370,9 @@ CpuCacheInfoCollectCpuCacheInfoData (
      //
      // Sort LocalCacheInfo array by CPU package ID, core type, cache level 
and cache type.
      //
-    PerformQuickSort (LocalCacheInfo, LocalCacheInfoCount, sizeof 
(*LocalCacheInfo), (SORT_COMPARE) CpuCacheInfoCompare);
+    QuickSortBuffer = AllocateZeroPool (sizeof (*LocalCacheInfo));
+    ASSERT (QuickSortBuffer != NULL);

Dynamic allocations should always be handled with a proper runtime check, but I think LocalCacheInfo is small enough to live on the stack anyway, no?

Best regards,
Marvin

+    QuickSort (LocalCacheInfo, LocalCacheInfoCount, sizeof (*LocalCacheInfo), 
(BASE_SORT_COMPARE) CpuCacheInfoCompare, QuickSortBuffer);
      CopyMem (CacheInfo, LocalCacheInfo, sizeof (*CacheInfo) * 
LocalCacheInfoCount);
      DEBUG_CODE (
        CpuCacheInfoPrintCpuCacheInfoTable (CacheInfo, LocalCacheInfoCount);
diff --git a/UefiCpuPkg/Library/CpuCacheInfoLib/DxeCpuCacheInfoLib.inf 
b/UefiCpuPkg/Library/CpuCacheInfoLib/DxeCpuCacheInfoLib.inf
index c3d3f1e799..fdd79970f9 100644
--- a/UefiCpuPkg/Library/CpuCacheInfoLib/DxeCpuCacheInfoLib.inf
+++ b/UefiCpuPkg/Library/CpuCacheInfoLib/DxeCpuCacheInfoLib.inf
@@ -25,7 +25,6 @@
[Packages]
    MdePkg/MdePkg.dec
-  MdeModulePkg/MdeModulePkg.dec
    UefiCpuPkg/UefiCpuPkg.dec
[LibraryClasses]
@@ -34,7 +33,6 @@
    BaseMemoryLib
    MemoryAllocationLib
    UefiBootServicesTableLib
-  SortLib
[Protocols]
    gEfiMpServiceProtocolGuid
diff --git a/UefiCpuPkg/Library/CpuCacheInfoLib/InternalCpuCacheInfoLib.h 
b/UefiCpuPkg/Library/CpuCacheInfoLib/InternalCpuCacheInfoLib.h
index 26e1f46516..829a9f43ce 100644
--- a/UefiCpuPkg/Library/CpuCacheInfoLib/InternalCpuCacheInfoLib.h
+++ b/UefiCpuPkg/Library/CpuCacheInfoLib/InternalCpuCacheInfoLib.h
@@ -17,7 +17,6 @@
  #include <Library/DebugLib.h>
  #include <Library/BaseMemoryLib.h>
  #include <Library/MemoryAllocationLib.h>
-#include <Library/SortLib.h>
  #include <Library/CpuCacheInfoLib.h>
typedef union {
diff --git a/UefiCpuPkg/Library/CpuCacheInfoLib/PeiCpuCacheInfoLib.inf 
b/UefiCpuPkg/Library/CpuCacheInfoLib/PeiCpuCacheInfoLib.inf
index 0864497849..c643fc89be 100644
--- a/UefiCpuPkg/Library/CpuCacheInfoLib/PeiCpuCacheInfoLib.inf
+++ b/UefiCpuPkg/Library/CpuCacheInfoLib/PeiCpuCacheInfoLib.inf
@@ -25,7 +25,6 @@
[Packages]
    MdePkg/MdePkg.dec
-  MdeModulePkg/MdeModulePkg.dec
    UefiCpuPkg/UefiCpuPkg.dec
[LibraryClasses]
@@ -34,7 +33,6 @@
    BaseMemoryLib
    MemoryAllocationLib
    PeiServicesTablePointerLib
-  SortLib
[Ppis]
    gEdkiiPeiMpServices2PpiGuid



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#82154): https://edk2.groups.io/g/devel/message/82154
Mute This Topic: https://groups.io/mt/86340402/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to