[edk2-devel] [PATCH V3 06/12] ShellPkg: Update shell command memmap to show unaccepted memory

Gao, Zhichao zhichao.gao at intel.com
Mon Sep 5 09:19:45 UTC 2022


Reviewed-by: Zhichao Gao <zhichao.gao at intel.com>

Thanks,
Zhichao

> -----Original Message-----
> From: devel at edk2.groups.io <devel at edk2.groups.io> On Behalf Of Min Xu
> Sent: Monday, September 5, 2022 4:35 PM
> To: devel at edk2.groups.io
> Cc: Xu, Min M <min.m.xu at intel.com>; Ni, Ray <ray.ni at intel.com>; Gao,
> Zhichao <zhichao.gao at intel.com>; Aktas, Erdem
> <erdemaktas at google.com>; Gerd Hoffmann <kraxel at redhat.com>; James
> Bottomley <jejb at linux.ibm.com>; Yao, Jiewen <jiewen.yao at intel.com>;
> Tom Lendacky <thomas.lendacky at amd.com>
> Subject: [edk2-devel] [PATCH V3 06/12] ShellPkg: Update shell command
> memmap to show unaccepted memory
> 
> From: Min M Xu <min.m.xu at intel.com>
> 
> RFC: https://bugzilla.tianocore.org/show_bug.cgi?id=3937
> 
> ShellCommandRunMemMap() is updated to handle the case of unaccepted
> memory type.
> 
> Cc: Ray Ni <ray.ni at intel.com>
> Cc: Zhichao Gao <zhichao.gao at intel.com>
> Cc: Erdem Aktas <erdemaktas at google.com>
> Cc: Gerd Hoffmann <kraxel at redhat.com>
> Cc: James Bottomley <jejb at linux.ibm.com>
> Cc: Jiewen Yao <jiewen.yao at intel.com>
> Cc: Tom Lendacky <thomas.lendacky at amd.com>
> Acked-by: Gerd Hoffmann <kraxel at redhat.com>
> Signed-off-by: Min Xu <min.m.xu at intel.com>
> ---
>  .../Library/UefiShellDebug1CommandsLib/MemMap.c     | 13
> +++++++++++++
>  .../UefiShellDebug1CommandsLib.uni                  |  3 ++-
>  2 files changed, 15 insertions(+), 1 deletion(-)
> 
> diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/MemMap.c
> b/ShellPkg/Library/UefiShellDebug1CommandsLib/MemMap.c
> index 72f3c58b0970..a089953b286f 100644
> --- a/ShellPkg/Library/UefiShellDebug1CommandsLib/MemMap.c
> +++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/MemMap.c
> @@ -26,6 +26,7 @@ STATIC CONST CHAR16  NameEfiACPIMemoryNVS[]
> = L"ACPIMemoryNVS";
>  STATIC CONST CHAR16  NameEfiMemoryMappedIO[]          =
> L"MemoryMappedIO";
>  STATIC CONST CHAR16  NameEfiMemoryMappedIOPortSpace[] =
> L"MemoryMappedIOPortSpace";
>  STATIC CONST CHAR16  NameEfiPalCode[]                 = L"PalCode";
> +STATIC CONST CHAR16  NameEfiUnacceptedMemoryType[]    =
> L"Unaccepted";
> 
>  //
>  // Need short names for some memory types @@ -151,6 +152,8 @@
> ShellCommandRunMemMap (
>    UINT64                 UnusableMemoryPagesSize;
>    UINT64                 PalCodePages;
>    UINT64                 PalCodePagesSize;
> +  UINT64                 UnacceptedPages;
> +  UINT64                 UnacceptedPagesSize;
>    UINT64                 PersistentPages;
>    UINT64                 PersistentPagesSize;
>    BOOLEAN                Sfo;
> @@ -175,6 +178,7 @@ ShellCommandRunMemMap (
>    PalCodePages        = 0;
>    PersistentPages     = 0;
>    Size                = 0;
> +  UnacceptedPages     = 0;
>    Descriptors         = NULL;
>    ShellStatus         = SHELL_SUCCESS;
>    Status              = EFI_SUCCESS;
> @@ -303,6 +307,11 @@ ShellCommandRunMemMap (
>                TotalPages   += Walker->NumberOfPages;
>                PalCodePages += Walker->NumberOfPages;
>                break;
> +            case EfiUnacceptedMemoryType:
> +              ShellPrintHiiEx (-1, -1, NULL, (EFI_STRING_ID)(!Sfo ? STRING_TOKEN
> (STR_MEMMAP_LIST_ITEM) : STRING_TOKEN
> (STR_MEMMAP_LIST_ITEM_SFO)), gShellDebug1HiiHandle,
> NameEfiUnacceptedMemoryType, Walker->PhysicalStart, Walker-
> >PhysicalStart+MultU64x64 (SIZE_4KB, Walker->NumberOfPages)-1, Walker-
> >NumberOfPages, Walker->Attribute);
> +              TotalPages      += Walker->NumberOfPages;
> +              UnacceptedPages += Walker->NumberOfPages;
> +              break;
>              default:
>                //
>                // Shell Spec defines the SFO format.
> @@ -335,6 +344,7 @@ ShellCommandRunMemMap (
>          MmioSpacePagesSize      = MultU64x64 (SIZE_4KB, MmioSpacePages);
>          MmioPortPagesSize       = MultU64x64 (SIZE_4KB, MmioPortPages);
>          PalCodePagesSize        = MultU64x64 (SIZE_4KB, PalCodePages);
> +        UnacceptedPagesSize     = MultU64x64 (SIZE_4KB, UnacceptedPages);
>          PersistentPagesSize     = MultU64x64 (SIZE_4KB, PersistentPages);
>          UnusableMemoryPagesSize = MultU64x64 (SIZE_4KB,
> UnusableMemoryPages);
>          if (!Sfo) {
> @@ -368,6 +378,8 @@ ShellCommandRunMemMap (
>              MmioPortPagesSize,
>              PalCodePages,
>              PalCodePagesSize,
> +            UnacceptedPages,
> +            UnacceptedPagesSize,
>              AvailPages,
>              AvailPagesSize,
>              PersistentPages,
> @@ -422,6 +434,7 @@ ShellCommandRunMemMap (
>              AcpiReclaimPagesSize,
>              AcpiNvsPagesSize,
>              PalCodePagesSize,
> +            UnacceptedPagesSize,
>              PersistentPagesSize
>              );
>          }
> diff --git
> a/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1Comman
> dsLib.uni
> b/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1Comman
> dsLib.uni
> index 6693be26e699..b1d239ed37ea 100644
> ---
> a/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1Comman
> dsLib.uni
> +++
> b/ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1Comman
> d
> +++ sLib.uni
> @@ -88,13 +88,14 @@
>                                                    "  MMIO      : %,14ld Pages (%,ld Bytes)\r\n"
>                                                    "  MMIO_Port : %,14ld Pages (%,ld Bytes)\r\n"
>                                                    "  PalCode   : %,14ld Pages (%,ld Bytes)\r\n"
> +                                                  "  Unaccepted: %,14ld Pages (%,ld Bytes)\r\n"
>                                                    "  Available : %,14ld Pages (%,ld Bytes)\r\n"
>                                                    "  Persistent: %,14ld Pages (%,ld Bytes)\r\n"
>  #string STR_MEMMAP_LIST_SUMM_OTHER #language en-US
> "  %08x  : %,14ld Pages (%,ld Bytes)\r\n"
>  #string STR_MEMMAP_LIST_SUMM2     #language en-US "              -------------
> - \r\n"
>                                                    "Total Memory: %,14ld MB (%,ld Bytes)\r\n"
>  #string STR_MEMMAP_LIST_ITEM_SFO  #language en-US
> "MemoryMap,"%s","%LX","%LX","%LX","%LX"\r\n"
> -#string STR_MEMMAP_LIST_SUMM_SFO  #language en-US
> "MemoryMapSummary,"%Ld","%Ld","%Ld","%Ld","%Ld","%Ld","%Ld","%Ld
> ","%Ld","%Ld","%Ld","%Ld","%Ld","%Ld","%Ld","%Ld"\r\n"
> +#string STR_MEMMAP_LIST_SUMM_SFO  #language en-US
> "MemoryMapSummary,"%Ld","%Ld","%Ld","%Ld","%Ld","%Ld","%Ld","%Ld
> ","%Ld","%Ld","%Ld","%Ld","%Ld","%Ld","%Ld","%Ld", "%Ld"\r\n"
> 
>  #string STR_EFI_COMPRESS_FAIL     #language en-US "Unable to
> compress: %r.\r\n"
>  #string STR_EFI_DECOMPRESS_FAIL   #language en-US "Unable to
> decompress: %r.\r\n"
> --
> 2.29.2.windows.2
> 
> 
> 
> 
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#93140): https://edk2.groups.io/g/devel/message/93140
Mute This Topic: https://groups.io/mt/93474516/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-




More information about the edk2-devel-archive mailing list