From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=209.85.221.65; helo=mail-wr1-f65.google.com; envelope-from=philmd@redhat.com; receiver=edk2-devel@lists.01.org Received: from mail-wr1-f65.google.com (mail-wr1-f65.google.com [209.85.221.65]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 6F264211EB294 for ; Tue, 2 Apr 2019 08:35:47 -0700 (PDT) Received: by mail-wr1-f65.google.com with SMTP id k17so17215295wrx.10 for ; Tue, 02 Apr 2019 08:35:47 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:openpgp:message-id :date:user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=514vkVrtp3NwTr71qjQhKdLbB2UmBek7MUwKN70Q2e4=; b=ibvqY05iXawjpIkFTAx2XYL4g2rONTIvY+YTjGnNtNDx3BaHD8aftnxrm6hLtY8nLr EQi7uc9F3PGu62x4q2C/+o1AcM1UX7a+8DfE76Qu8x8eG1xcwe21boe7AtH46nSmV6F0 3BuM3z7E33/2BYTmsJUJtUaBh89rUqG17hO/ppu26nu0JhcBma39HzbbX1kUovAV5THy 1TBoTaA9jR+4e1eZLd8vCGfEkH1vRuf4ekxKfEENZknblsc6Sonx75mOUhKXh6F1z8oD mRVu1jjYL8W3jWIZivid7ryoAlMBjC4BeI6cbwaIRIOZ7M0ACh0pI/D/qhI282uAjtHt t0Tg== X-Gm-Message-State: APjAAAV6ygZoJHdTGf/pXcFKGlBNt4+HALBMnOaKQw7Ue2GKu7XK4lua stdwUBlDEKgzuV3NbUKQkVSM6g== X-Google-Smtp-Source: APXvYqwX5FzIZep1n2Op7gFoF5STI2VKwj1aQ3DfeXZMwhR2G22TVF7Z/JFY/Wx1sh2rKGSR1Wp2GA== X-Received: by 2002:adf:f1c7:: with SMTP id z7mr48006490wro.274.1554219346240; Tue, 02 Apr 2019 08:35:46 -0700 (PDT) Received: from [192.168.1.33] (193.red-88-21-103.staticip.rima-tde.net. [88.21.103.193]) by smtp.gmail.com with ESMTPSA id 84sm23820974wme.43.2019.04.02.08.35.45 (version=TLS1_3 cipher=AEAD-AES128-GCM-SHA256 bits=128/128); Tue, 02 Apr 2019 08:35:45 -0700 (PDT) To: Zhichao Gao , edk2-devel@lists.01.org Cc: Bret Barkelew , Michael Turner , Liming Gao , Star Zeng References: <20190402055020.8656-1-zhichao.gao@intel.com> From: =?UTF-8?Q?Philippe_Mathieu-Daud=c3=a9?= Openpgp: id=89C1E78F601EE86C867495CBA2A3FD6EDEADC0DE; url=http://pgp.mit.edu/pks/lookup?op=get&search=0xA2A3FD6EDEADC0DE Message-ID: Date: Tue, 2 Apr 2019 17:35:44 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: <20190402055020.8656-1-zhichao.gao@intel.com> Subject: Re: [PATCH] MdeModulePkg/CapsulePei: Update the debug code to print 64bit data X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Apr 2019 15:35:49 -0000 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Hi Bret, On 4/2/19 7:50 AM, Zhichao Gao wrote: > From: Bret Barkelew > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1677 > > For some pointer and UINT64 data, the debug code print with '%x'. > Which would loss the upper 32bit data. So update '%x' to '%lx' > for these data. Some are UINTN. Per Laszlo answer on this thread: https://lists.01.org/pipermail/edk2-devel/2016-September/002093.html for those, casting and changing format is the accepted way. However this is a change, > Change the DEBUG PrintLevel from EFI_D_ version to DEBUG_ version. > DEBUG_ version is recommended to use. and this is another change. Splitting this patch in 2 would make it more digestable. > > Cc: Jian J Wang > Cc: Ray Ni > Cc: Star Zeng > Cc: Liming Gao > Cc: Sean Brogan > Cc: Michael Turner > Cc: Bret Barkelew > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Zhichao Gao > --- > .../CapsulePei/Common/CapsuleCoalesce.c | 90 +++++++++---------- > .../Universal/CapsulePei/UefiCapsule.c | 46 +++++----- > .../Universal/CapsulePei/X64/X64Entry.c | 2 +- > 3 files changed, 69 insertions(+), 69 deletions(-) > > diff --git a/MdeModulePkg/Universal/CapsulePei/Common/CapsuleCoalesce.c b/MdeModulePkg/Universal/CapsulePei/Common/CapsuleCoalesce.c > index 3575a94d0f..2a527054bd 100644 > --- a/MdeModulePkg/Universal/CapsulePei/Common/CapsuleCoalesce.c > +++ b/MdeModulePkg/Universal/CapsulePei/Common/CapsuleCoalesce.c > @@ -258,7 +258,7 @@ ValidateCapsuleByMemoryResource ( > // Sanity Check > // > if (Size > MAX_ADDRESS) { > - DEBUG ((EFI_D_ERROR, "ERROR: Size(0x%lx) > MAX_ADDRESS\n", Size)); > + DEBUG ((DEBUG_ERROR, "ERROR: Size(0x%lx) > MAX_ADDRESS\n", Size)); > return FALSE; > } > > @@ -266,7 +266,7 @@ ValidateCapsuleByMemoryResource ( > // Sanity Check > // > if (Address > (MAX_ADDRESS - Size)) { > - DEBUG ((EFI_D_ERROR, "ERROR: Address(0x%lx) > (MAX_ADDRESS - Size(0x%lx))\n", Address, Size)); > + DEBUG ((DEBUG_ERROR, "ERROR: Address(0x%lx) > (MAX_ADDRESS - Size(0x%lx))\n", Address, Size)); > return FALSE; > } > > @@ -280,14 +280,14 @@ ValidateCapsuleByMemoryResource ( > for (Index = 0; MemoryResource[Index].ResourceLength != 0; Index++) { > if ((Address >= MemoryResource[Index].PhysicalStart) && > ((Address + Size) <= (MemoryResource[Index].PhysicalStart + MemoryResource[Index].ResourceLength))) { > - DEBUG ((EFI_D_INFO, "Address(0x%lx) Size(0x%lx) in MemoryResource[0x%x] - Start(0x%lx) Length(0x%lx)\n", > + DEBUG ((DEBUG_INFO, "Address(0x%lx) Size(0x%lx) in MemoryResource[0x%x] - Start(0x%lx) Length(0x%lx)\n", > Address, Size, > Index, MemoryResource[Index].PhysicalStart, MemoryResource[Index].ResourceLength)); > return TRUE; > } > } > > - DEBUG ((EFI_D_ERROR, "ERROR: Address(0x%lx) Size(0x%lx) not in any MemoryResource\n", Address, Size)); > + DEBUG ((DEBUG_ERROR, "ERROR: Address(0x%lx) Size(0x%lx) not in any MemoryResource\n", Address, Size)); > return FALSE; > } > > @@ -312,7 +312,7 @@ ValidateCapsuleIntegrity ( > UINTN CapsuleCount; > EFI_CAPSULE_BLOCK_DESCRIPTOR *Ptr; > > - DEBUG ((EFI_D_INFO, "ValidateCapsuleIntegrity\n")); > + DEBUG ((DEBUG_INFO, "ValidateCapsuleIntegrity\n")); > > // > // Go through the list to look for inconsistencies. Check for: > @@ -333,15 +333,15 @@ ValidateCapsuleIntegrity ( > return NULL; > } > > - DEBUG ((EFI_D_INFO, "Ptr - 0x%x\n", Ptr)); > - DEBUG ((EFI_D_INFO, "Ptr->Length - 0x%x\n", Ptr->Length)); > - DEBUG ((EFI_D_INFO, "Ptr->Union - 0x%x\n", Ptr->Union.ContinuationPointer)); > + DEBUG ((DEBUG_INFO, "Ptr - 0x%lx\n", (UINT64)Ptr)); > + DEBUG ((DEBUG_INFO, "Ptr->Length - 0x%lx\n", Ptr->Length)); > + DEBUG ((DEBUG_INFO, "Ptr->Union - 0x%lx\n", Ptr->Union.ContinuationPointer)); > while ((Ptr->Length != 0) || (Ptr->Union.ContinuationPointer != (EFI_PHYSICAL_ADDRESS) (UINTN) NULL)) { > // > // Make sure the descriptor is aligned at UINT64 in memory > // > if ((UINTN) Ptr & (sizeof(UINT64) - 1)) { > - DEBUG ((EFI_D_ERROR, "ERROR: BlockList address failed alignment check\n")); > + DEBUG ((DEBUG_ERROR, "ERROR: BlockList address failed alignment check\n")); > return NULL; > } > > @@ -354,9 +354,9 @@ ValidateCapsuleIntegrity ( > if (!ValidateCapsuleByMemoryResource (MemoryResource, (EFI_PHYSICAL_ADDRESS) (UINTN) Ptr, sizeof (EFI_CAPSULE_BLOCK_DESCRIPTOR))) { > return NULL; > } > - DEBUG ((EFI_D_INFO, "Ptr(C) - 0x%x\n", Ptr)); > - DEBUG ((EFI_D_INFO, "Ptr->Length - 0x%x\n", Ptr->Length)); > - DEBUG ((EFI_D_INFO, "Ptr->Union - 0x%x\n", Ptr->Union.ContinuationPointer)); > + DEBUG ((DEBUG_INFO, "Ptr(C) - 0x%lx\n", (UINT64)Ptr)); > + DEBUG ((DEBUG_INFO, "Ptr->Length - 0x%lx\n", Ptr->Length)); > + DEBUG ((DEBUG_INFO, "Ptr->Union - 0x%lx\n", Ptr->Union.ContinuationPointer)); > } else { > if (!ValidateCapsuleByMemoryResource (MemoryResource, Ptr->Union.DataBlock, Ptr->Length)) { > return NULL; > @@ -375,14 +375,14 @@ ValidateCapsuleIntegrity ( > // Sanity check > // > if (Ptr->Length < sizeof(EFI_CAPSULE_HEADER)) { > - DEBUG ((EFI_D_ERROR, "ERROR: Ptr->Length(0x%lx) < sizeof(EFI_CAPSULE_HEADER)\n", Ptr->Length)); > + DEBUG ((DEBUG_ERROR, "ERROR: Ptr->Length(0x%lx) < sizeof(EFI_CAPSULE_HEADER)\n", Ptr->Length)); > return NULL; > } > // > // Make sure HeaderSize field is valid > // > if (CapsuleHeader->HeaderSize > CapsuleHeader->CapsuleImageSize) { > - DEBUG ((EFI_D_ERROR, "ERROR: CapsuleHeader->HeaderSize(0x%x) > CapsuleHeader->CapsuleImageSize(0x%x)\n", CapsuleHeader->HeaderSize, CapsuleHeader->CapsuleImageSize)); > + DEBUG ((DEBUG_ERROR, "ERROR: CapsuleHeader->HeaderSize(0x%x) > CapsuleHeader->CapsuleImageSize(0x%x)\n", CapsuleHeader->HeaderSize, CapsuleHeader->CapsuleImageSize)); > return NULL; > } > if (IsCapsuleCorrupted (CapsuleHeader)) { > @@ -395,7 +395,7 @@ ValidateCapsuleIntegrity ( > if (CapsuleSize >= Ptr->Length) { > CapsuleSize = CapsuleSize - Ptr->Length; > } else { > - DEBUG ((EFI_D_ERROR, "ERROR: CapsuleSize(0x%lx) < Ptr->Length(0x%lx)\n", CapsuleSize, Ptr->Length)); > + DEBUG ((DEBUG_ERROR, "ERROR: CapsuleSize(0x%lx) < Ptr->Length(0x%lx)\n", CapsuleSize, Ptr->Length)); > // > // Sanity check > // > @@ -409,9 +409,9 @@ ValidateCapsuleIntegrity ( > if (!ValidateCapsuleByMemoryResource (MemoryResource, (EFI_PHYSICAL_ADDRESS) (UINTN) Ptr, sizeof (EFI_CAPSULE_BLOCK_DESCRIPTOR))) { > return NULL; > } > - DEBUG ((EFI_D_INFO, "Ptr(B) - 0x%x\n", Ptr)); > - DEBUG ((EFI_D_INFO, "Ptr->Length - 0x%x\n", Ptr->Length)); > - DEBUG ((EFI_D_INFO, "Ptr->Union - 0x%x\n", Ptr->Union.ContinuationPointer)); > + DEBUG ((DEBUG_INFO, "Ptr(B) - 0x%lx\n", (UINT64)Ptr)); > + DEBUG ((DEBUG_INFO, "Ptr->Length - 0x%lx\n", Ptr->Length)); > + DEBUG ((DEBUG_INFO, "Ptr->Union - 0x%lx\n", Ptr->Union.ContinuationPointer)); > } > } > > @@ -419,7 +419,7 @@ ValidateCapsuleIntegrity ( > // > // No any capsule is found in BlockList > // > - DEBUG ((EFI_D_ERROR, "ERROR: CapsuleCount(0x%x) == 0\n", CapsuleCount)); > + DEBUG ((DEBUG_ERROR, "ERROR: CapsuleCount(0x%x) == 0\n", CapsuleCount)); > return NULL; > } > > @@ -427,7 +427,7 @@ ValidateCapsuleIntegrity ( > // > // Capsule data is incomplete. > // > - DEBUG ((EFI_D_ERROR, "ERROR: CapsuleSize(0x%lx) != 0\n", CapsuleSize)); > + DEBUG ((DEBUG_ERROR, "ERROR: CapsuleSize(0x%lx) != 0\n", CapsuleSize)); > return NULL; > } > > @@ -515,7 +515,7 @@ RelocateBlockDescriptors ( > } > > CopyMem ((VOID *) RelocBuffer, (VOID *) (UINTN) TempBlockDesc->Union.DataBlock, (UINTN) TempBlockDesc->Length); > - DEBUG ((EFI_D_INFO, "Capsule relocate descriptors from/to/size 0x%lX 0x%lX 0x%lX\n", TempBlockDesc->Union.DataBlock, (UINT64)(UINTN)RelocBuffer, TempBlockDesc->Length)); > + DEBUG ((DEBUG_INFO, "Capsule relocate descriptors from/to/size 0x%lX 0x%lX 0x%lX\n", TempBlockDesc->Union.DataBlock, (UINT64)(UINTN)RelocBuffer, TempBlockDesc->Length)); > TempBlockDesc->Union.DataBlock = (EFI_PHYSICAL_ADDRESS) (UINTN) RelocBuffer; > } > TempBlockDesc++; > @@ -552,7 +552,7 @@ RelocateBlockDescriptors ( > return NULL; > } > CopyMem ((VOID *) RelocBuffer, (VOID *) CurrBlockDescHead, BlockListSize); > - DEBUG ((EFI_D_INFO, "Capsule reloc descriptor block #2\n")); > + DEBUG ((DEBUG_INFO, "Capsule reloc descriptor block #2\n")); > // > // Point the previous block's next point to this copied version. If > // the tail pointer is null, then this is the first descriptor block. > @@ -651,7 +651,7 @@ GetCapsuleInfo ( > UINTN ThisCapsuleImageSize; > EFI_CAPSULE_HEADER *CapsuleHeader; > > - DEBUG ((EFI_D_INFO, "GetCapsuleInfo enter\n")); > + DEBUG ((DEBUG_INFO, "GetCapsuleInfo enter\n")); > > ASSERT (Desc != NULL); > > @@ -673,7 +673,7 @@ GetCapsuleInfo ( > // While here we need check all capsules size. > // > if (Desc->Length >= (MAX_ADDRESS - Size)) { > - DEBUG ((EFI_D_ERROR, "ERROR: Desc->Length(0x%lx) >= (MAX_ADDRESS - Size(0x%x))\n", Desc->Length, Size)); > + DEBUG ((DEBUG_ERROR, "ERROR: Desc->Length(0x%lx) >= (MAX_ADDRESS - Size(0x%x))\n", Desc->Length, Size)); > return EFI_OUT_OF_RESOURCES; > } > Size += (UINTN) Desc->Length; > @@ -707,7 +707,7 @@ GetCapsuleInfo ( > // If no descriptors, then fail > // > if (Count == 0) { > - DEBUG ((EFI_D_ERROR, "ERROR: Count == 0\n")); > + DEBUG ((DEBUG_ERROR, "ERROR: Count == 0\n")); > return EFI_NOT_FOUND; > } > > @@ -787,7 +787,7 @@ CapsuleTestPatternPreCoalesce ( > UINT32 TestCounter; > UINT32 TestSize; > > - DEBUG ((EFI_D_INFO, "CapsuleTestPatternPreCoalesce\n")); > + DEBUG ((DEBUG_INFO, "CapsuleTestPatternPreCoalesce\n")); > > // > // Find first data descriptor > @@ -803,7 +803,7 @@ CapsuleTestPatternPreCoalesce ( > // First one better be long enough to at least hold the test signature > // > if (Desc->Length < sizeof (UINT32)) { > - DEBUG ((EFI_D_INFO, "Capsule test pattern pre-coalesce punted #1\n")); > + DEBUG ((DEBUG_INFO, "Capsule test pattern pre-coalesce punted #1\n")); > return ; > } > > @@ -823,13 +823,13 @@ CapsuleTestPatternPreCoalesce ( > TestPtr += 2; > while (1) { > if ((TestSize & 0x03) != 0) { > - DEBUG ((EFI_D_INFO, "Capsule test pattern pre-coalesce punted #2\n")); > + DEBUG ((DEBUG_INFO, "Capsule test pattern pre-coalesce punted #2\n")); > return ; > } > > while (TestSize > 0) { > if (*TestPtr != TestCounter) { > - DEBUG ((EFI_D_INFO, "Capsule test pattern pre-coalesce failed data corruption check\n")); > + DEBUG ((DEBUG_INFO, "Capsule test pattern pre-coalesce failed data corruption check\n")); > return ; > } > > @@ -873,7 +873,7 @@ BuildCapsuleDescriptors ( > EFI_CAPSULE_BLOCK_DESCRIPTOR *TempBlock; > EFI_CAPSULE_BLOCK_DESCRIPTOR *HeadBlock; > > - DEBUG ((EFI_D_INFO, "BuildCapsuleDescriptors enter\n")); > + DEBUG ((DEBUG_INFO, "BuildCapsuleDescriptors enter\n")); > > LastBlock = NULL; > HeadBlock = NULL; > @@ -904,7 +904,7 @@ BuildCapsuleDescriptors ( > } > } > } else { > - DEBUG ((EFI_D_ERROR, "ERROR: BlockListBuffer[Index](0x%lx) < MAX_ADDRESS\n", BlockListBuffer[Index])); > + DEBUG ((DEBUG_ERROR, "ERROR: BlockListBuffer[Index](0x%lx) < MAX_ADDRESS\n", BlockListBuffer[Index])); > } > Index ++; > } > @@ -1022,7 +1022,7 @@ CapsuleDataCoalesce ( > EFI_CAPSULE_BLOCK_DESCRIPTOR *TempBlockDesc; > EFI_CAPSULE_BLOCK_DESCRIPTOR PrivateDataDesc[2]; > > - DEBUG ((EFI_D_INFO, "CapsuleDataCoalesce enter\n")); > + DEBUG ((DEBUG_INFO, "CapsuleDataCoalesce enter\n")); > > CapsuleIndex = 0; > SizeLeft = 0; > @@ -1055,15 +1055,15 @@ CapsuleDataCoalesce ( > if (EFI_ERROR (Status)) { > return Status; > } > - DEBUG ((EFI_D_INFO, "CapsuleSize - 0x%x\n", CapsuleSize)); > - DEBUG ((EFI_D_INFO, "CapsuleNumber - 0x%x\n", CapsuleNumber)); > - DEBUG ((EFI_D_INFO, "NumDescriptors - 0x%x\n", NumDescriptors)); > + DEBUG ((DEBUG_INFO, "CapsuleSize - 0x%x\n", CapsuleSize)); > + DEBUG ((DEBUG_INFO, "CapsuleNumber - 0x%x\n", CapsuleNumber)); This is confuse CapsuleNumber is declared UINT64 in MdeModulePkg/Universal/CapsulePei/Common/CommonHeader.h and we use a UINTN here. Why not keep UINT64 and use "%lx"? > + DEBUG ((DEBUG_INFO, "NumDescriptors - 0x%x\n", NumDescriptors)); > if ((CapsuleSize == 0) || (NumDescriptors == 0) || (CapsuleNumber == 0)) { > return EFI_NOT_FOUND; > } > > if (CapsuleNumber - 1 >= (MAX_ADDRESS - (sizeof (EFI_CAPSULE_PEIM_PRIVATE_DATA) + sizeof(UINT64))) / sizeof(UINT64)) { > - DEBUG ((EFI_D_ERROR, "ERROR: CapsuleNumber - 0x%x\n", CapsuleNumber)); > + DEBUG ((DEBUG_ERROR, "ERROR: CapsuleNumber - 0x%x\n", CapsuleNumber)); > return EFI_BUFFER_TOO_SMALL; > } > > @@ -1093,7 +1093,7 @@ CapsuleDataCoalesce ( > // Sanity check > // > if (CapsuleSize >= (MAX_ADDRESS - (sizeof (EFI_CAPSULE_PEIM_PRIVATE_DATA) + (CapsuleNumber - 1) * sizeof(UINT64) + sizeof(UINT64)))) { > - DEBUG ((EFI_D_ERROR, "ERROR: CapsuleSize - 0x%x\n", CapsuleSize)); > + DEBUG ((DEBUG_ERROR, "ERROR: CapsuleSize - 0x%x\n", CapsuleSize)); > return EFI_BUFFER_TOO_SMALL; > } > // > @@ -1105,7 +1105,7 @@ CapsuleDataCoalesce ( > // Sanity check > // > if (NumDescriptors >= (MAX_ADDRESS / sizeof(EFI_CAPSULE_BLOCK_DESCRIPTOR))) { > - DEBUG ((EFI_D_ERROR, "ERROR: NumDescriptors - 0x%x\n", NumDescriptors)); > + DEBUG ((DEBUG_ERROR, "ERROR: NumDescriptors - 0x%x\n", NumDescriptors)); > return EFI_BUFFER_TOO_SMALL; > } > DescriptorsSize = NumDescriptors * sizeof (EFI_CAPSULE_BLOCK_DESCRIPTOR); > @@ -1113,7 +1113,7 @@ CapsuleDataCoalesce ( > // Sanity check > // > if (DescriptorsSize >= (MAX_ADDRESS - CapsuleSize)) { > - DEBUG ((EFI_D_ERROR, "ERROR: DescriptorsSize - 0x%lx, CapsuleSize - 0x%lx\n", (UINT64)DescriptorsSize, (UINT64)CapsuleSize)); > + DEBUG ((DEBUG_ERROR, "ERROR: DescriptorsSize - 0x%lx, CapsuleSize - 0x%lx\n", (UINT64)DescriptorsSize, (UINT64)CapsuleSize)); > return EFI_BUFFER_TOO_SMALL; > } > > @@ -1121,10 +1121,10 @@ CapsuleDataCoalesce ( > // Don't go below some min address. If the base is below it, > // then move it up and adjust the size accordingly. > // > - DEBUG ((EFI_D_INFO, "Capsule Memory range from 0x%8X to 0x%8X\n", (UINTN) *MemoryBase, (UINTN)*MemoryBase + *MemorySize)); > + DEBUG ((DEBUG_INFO, "Capsule Memory range from 0x%8X to 0x%8X\n", (UINTN) *MemoryBase, (UINTN)*MemoryBase + *MemorySize)); Don't you also want to cast to UINT64 and use "%lX" here? > if ((UINTN)*MemoryBase < (UINTN) MIN_COALESCE_ADDR) { > if (((UINTN)*MemoryBase + *MemorySize) < (UINTN) MIN_COALESCE_ADDR) { > - DEBUG ((EFI_D_ERROR, "ERROR: *MemoryBase + *MemorySize - 0x%x\n", (UINTN)*MemoryBase + *MemorySize)); > + DEBUG ((DEBUG_ERROR, "ERROR: *MemoryBase + *MemorySize - 0x%x\n", (UINTN)*MemoryBase + *MemorySize)); > return EFI_BUFFER_TOO_SMALL; > } else { > *MemorySize = *MemorySize - ((UINTN) MIN_COALESCE_ADDR - (UINTN) *MemoryBase); > @@ -1133,13 +1133,13 @@ CapsuleDataCoalesce ( > } > > if (*MemorySize <= (CapsuleSize + DescriptorsSize)) { > - DEBUG ((EFI_D_ERROR, "ERROR: CapsuleSize + DescriptorsSize - 0x%x\n", CapsuleSize + DescriptorsSize)); > + DEBUG ((DEBUG_ERROR, "ERROR: CapsuleSize + DescriptorsSize - 0x%x\n", CapsuleSize + DescriptorsSize)); > return EFI_BUFFER_TOO_SMALL; > } > > FreeMemBase = *MemoryBase; > FreeMemSize = *MemorySize; > - DEBUG ((EFI_D_INFO, "Capsule Free Memory from 0x%8X to 0x%8X\n", (UINTN) FreeMemBase, (UINTN) FreeMemBase + FreeMemSize)); > + DEBUG ((DEBUG_INFO, "Capsule Free Memory from 0x%8X to 0x%8X\n", (UINTN) FreeMemBase, (UINTN) FreeMemBase + FreeMemSize)); > > // > // Relocate all the block descriptors to low memory to make further > @@ -1205,7 +1205,7 @@ CapsuleDataCoalesce ( > } > > CopyMem ((VOID *) RelocPtr, (VOID *) (UINTN) TempBlockDesc->Union.DataBlock, (UINTN) TempBlockDesc->Length); > - DEBUG ((EFI_D_INFO, "Capsule reloc data block from 0x%8X to 0x%8X with size 0x%8X\n", > + DEBUG ((DEBUG_INFO, "Capsule reloc data block from 0x%8X to 0x%8X with size 0x%8X\n", > (UINTN) TempBlockDesc->Union.DataBlock, (UINTN) RelocPtr, (UINTN) TempBlockDesc->Length)); > > TempBlockDesc->Union.DataBlock = (EFI_PHYSICAL_ADDRESS) (UINTN) RelocPtr; > @@ -1256,7 +1256,7 @@ CapsuleDataCoalesce ( > ASSERT (CurrentBlockDesc->Length <= SizeLeft); > > CopyMem ((VOID *) DestPtr, (VOID *) (UINTN) (CurrentBlockDesc->Union.DataBlock), (UINTN)CurrentBlockDesc->Length); > - DEBUG ((EFI_D_INFO, "Capsule coalesce block no.0x%lX from 0x%lX to 0x%lX with size 0x%lX\n",(UINT64)CapsuleTimes, > + DEBUG ((DEBUG_INFO, "Capsule coalesce block no.0x%lX from 0x%lX to 0x%lX with size 0x%lX\n",(UINT64)CapsuleTimes, > CurrentBlockDesc->Union.DataBlock, (UINT64)(UINTN)DestPtr, CurrentBlockDesc->Length)); > DestPtr += CurrentBlockDesc->Length; > SizeLeft -= CurrentBlockDesc->Length; > diff --git a/MdeModulePkg/Universal/CapsulePei/UefiCapsule.c b/MdeModulePkg/Universal/CapsulePei/UefiCapsule.c > index 1131094c4f..f5ec1c20ec 100644 > --- a/MdeModulePkg/Universal/CapsulePei/UefiCapsule.c > +++ b/MdeModulePkg/Universal/CapsulePei/UefiCapsule.c > @@ -427,7 +427,7 @@ ModeSwitch ( > if (ReservedRangeEnd < MemoryEnd64) { > MemoryBase64 = ReservedRangeEnd; > } else { > - DEBUG ((EFI_D_ERROR, "Memory is not enough to process capsule!\n")); > + DEBUG ((DEBUG_ERROR, "Memory is not enough to process capsule!\n")); > return EFI_OUT_OF_RESOURCES; > } > } else if (ReservedRangeBase < MemoryEnd64) { > @@ -525,7 +525,7 @@ FindCapsuleCoalesceImage ( > &AuthenticationState > ); > if (EFI_ERROR (Status)) { > - DEBUG ((EFI_D_ERROR, "Unable to find PE32 section in CapsuleX64 image ffs %r!\n", Status)); > + DEBUG ((DEBUG_ERROR, "Unable to find PE32 section in CapsuleX64 image ffs %r!\n", Status)); > return Status; > } > *CoalesceImageMachineType = PeCoffLoaderGetMachineType ((VOID *) (UINTN) CoalesceImageAddress); > @@ -574,7 +574,7 @@ GetLongModeContext ( > LongModeBuffer > ); > if (EFI_ERROR (Status)) { > - DEBUG (( EFI_D_ERROR, "Error Get LongModeBuffer variable %r!\n", Status)); > + DEBUG (( DEBUG_ERROR, "Error Get LongModeBuffer variable %r!\n", Status)); > } > return Status; > } > @@ -734,7 +734,7 @@ BuildMemoryResourceDescriptor ( > } > > if (Index == 0) { > - DEBUG ((EFI_D_INFO | EFI_D_WARN, "No memory resource descriptor reported in HOB list before capsule Coalesce\n")); > + DEBUG ((DEBUG_INFO | DEBUG_WARN, "No memory resource descriptor reported in HOB list before capsule Coalesce\n")); > #if defined (MDE_CPU_IA32) || defined (MDE_CPU_X64) > // > // Allocate memory to hold memory resource descriptor, > @@ -746,7 +746,7 @@ BuildMemoryResourceDescriptor ( > > MemoryResource[0].PhysicalStart = 0; > MemoryResource[0].ResourceLength = LShiftU64 (1, GetPhysicalAddressBits ()); > - DEBUG ((EFI_D_INFO, "MemoryResource[0x0] - Start(0x%0lx) Length(0x%0lx)\n", > + DEBUG ((DEBUG_INFO, "MemoryResource[0x0] - Start(0x%0lx) Length(0x%0lx)\n", > MemoryResource[0x0].PhysicalStart, MemoryResource[0x0].ResourceLength)); > return MemoryResource; > #else > @@ -770,7 +770,7 @@ BuildMemoryResourceDescriptor ( > while (Hob.Raw != NULL) { > ResourceDescriptor = (EFI_HOB_RESOURCE_DESCRIPTOR *) Hob.Raw; > if (ResourceDescriptor->ResourceType == EFI_RESOURCE_SYSTEM_MEMORY) { > - DEBUG ((EFI_D_INFO, "MemoryResource[0x%x] - Start(0x%0lx) Length(0x%0lx)\n", > + DEBUG ((DEBUG_INFO, "MemoryResource[0x%x] - Start(0x%0lx) Length(0x%0lx)\n", > Index, ResourceDescriptor->PhysicalStart, ResourceDescriptor->ResourceLength)); > MemoryResource[Index].PhysicalStart = ResourceDescriptor->PhysicalStart; > MemoryResource[Index].ResourceLength = ResourceDescriptor->ResourceLength; > @@ -973,7 +973,7 @@ CapsuleCoalesce ( > // > Status = PeiServicesGetBootMode (&BootMode); > if (EFI_ERROR (Status) || (BootMode != BOOT_ON_FLASH_UPDATE)) { > - DEBUG ((EFI_D_ERROR, "Boot mode is not correct for capsule update path.\n")); > + DEBUG ((DEBUG_ERROR, "Boot mode is not correct for capsule update path.\n")); > Status = EFI_NOT_FOUND; > goto Done; > } > @@ -1016,14 +1016,14 @@ CapsuleCoalesce ( > // > // There is no capsule variables, quit > // > - DEBUG ((EFI_D_INFO,"Capsule variable Index = %d\n", Index)); > + DEBUG ((DEBUG_INFO,"Capsule variable Index = %d\n", Index)); > break; > } > VariableCount++; > Index++; > } > > - DEBUG ((EFI_D_INFO,"Capsule variable count = %d\n", VariableCount)); > + DEBUG ((DEBUG_INFO,"Capsule variable count = %d\n", VariableCount)); > > // > // The last entry is the end flag. > @@ -1034,7 +1034,7 @@ CapsuleCoalesce ( > ); > > if (Status != EFI_SUCCESS) { > - DEBUG ((EFI_D_ERROR, "AllocatePages Failed!, Status = %x\n", Status)); > + DEBUG ((DEBUG_ERROR, "AllocatePages Failed!, Status = %x\n", Status)); > goto Done; > } > > @@ -1046,7 +1046,7 @@ CapsuleCoalesce ( > // > Status = GetCapsuleDescriptors (VariableArrayAddress); > if (EFI_ERROR (Status)) { > - DEBUG ((EFI_D_ERROR, "Fail to find capsule variables.\n")); > + DEBUG ((DEBUG_ERROR, "Fail to find capsule variables.\n")); > goto Done; > } > > @@ -1064,14 +1064,14 @@ CapsuleCoalesce ( > CoalesceImageEntryPoint = 0; > Status = GetLongModeContext (&LongModeBuffer); > if (EFI_ERROR (Status)) { > - DEBUG ((EFI_D_ERROR, "Fail to find the variable for long mode context!\n")); > + DEBUG ((DEBUG_ERROR, "Fail to find the variable for long mode context!\n")); > Status = EFI_NOT_FOUND; > goto Done; > } > > Status = FindCapsuleCoalesceImage (&CoalesceImageEntryPoint, &CoalesceImageMachineType); > if ((EFI_ERROR (Status)) || (CoalesceImageMachineType != EFI_IMAGE_MACHINE_X64)) { > - DEBUG ((EFI_D_ERROR, "Fail to find CapsuleX64 module in FV!\n")); > + DEBUG ((DEBUG_ERROR, "Fail to find CapsuleX64 module in FV!\n")); > Status = EFI_NOT_FOUND; > goto Done; > } > @@ -1091,14 +1091,14 @@ CapsuleCoalesce ( > Status = CapsuleDataCoalesce (PeiServices, (EFI_PHYSICAL_ADDRESS *)(UINTN)VariableArrayAddress, MemoryResource, MemoryBase, MemorySize); > #endif > > - DEBUG ((EFI_D_INFO, "Capsule Coalesce Status = %r!\n", Status)); > + DEBUG ((DEBUG_INFO, "Capsule Coalesce Status = %r!\n", Status)); > > if (Status == EFI_BUFFER_TOO_SMALL) { > - DEBUG ((EFI_D_ERROR, "There is not enough memory to process capsule!\n")); > + DEBUG ((DEBUG_ERROR, "There is not enough memory to process capsule!\n")); > } > > if (Status == EFI_NOT_FOUND) { > - DEBUG ((EFI_D_ERROR, "Fail to parse capsule descriptor in memory!\n")); > + DEBUG ((DEBUG_ERROR, "Fail to parse capsule descriptor in memory!\n")); > REPORT_STATUS_CODE ( > EFI_ERROR_CODE | EFI_ERROR_MAJOR, > (EFI_SOFTWARE_PEI_MODULE | EFI_SW_PEI_EC_INVALID_CAPSULE_DESCRIPTOR) > @@ -1163,7 +1163,7 @@ CapsuleTestPattern ( > // > if (*TestPtr == 0x54534554) { > RetValue = TRUE; > - DEBUG ((EFI_D_INFO, "Capsule test pattern mode activated...\n")); > + DEBUG ((DEBUG_INFO, "Capsule test pattern mode activated...\n")); > TestSize = TestPtr[1] / sizeof (UINT32); > // > // Skip over the signature and the size fields in the pattern data header > @@ -1172,7 +1172,7 @@ CapsuleTestPattern ( > TestCounter = 0; > while (TestSize > 0) { > if (*TestPtr != TestCounter) { > - DEBUG ((EFI_D_INFO, "Capsule test pattern mode FAILED: BaseAddr/FailAddr 0x%X 0x%X\n", (UINT32)(UINTN)(EFI_CAPSULE_PEIM_PRIVATE_DATA *)CapsuleBase, (UINT32)(UINTN)TestPtr)); > + DEBUG ((DEBUG_INFO, "Capsule test pattern mode FAILED: BaseAddr/FailAddr 0x%X 0x%X\n", (UINT32)(UINTN)(EFI_CAPSULE_PEIM_PRIVATE_DATA *)CapsuleBase, (UINT32)(UINTN)TestPtr)); > return TRUE; > } > > @@ -1181,7 +1181,7 @@ CapsuleTestPattern ( > TestSize--; > } > > - DEBUG ((EFI_D_INFO, "Capsule test pattern mode SUCCESS\n")); > + DEBUG ((DEBUG_INFO, "Capsule test pattern mode SUCCESS\n")); > } > > return RetValue; > @@ -1226,11 +1226,11 @@ CreateState ( > return EFI_VOLUME_CORRUPTED; > } > if (PrivateData->CapsuleAllImageSize >= MAX_ADDRESS) { > - DEBUG ((EFI_D_ERROR, "CapsuleAllImageSize too big - 0x%lx\n", PrivateData->CapsuleAllImageSize)); > + DEBUG ((DEBUG_ERROR, "CapsuleAllImageSize too big - 0x%lx\n", PrivateData->CapsuleAllImageSize)); > return EFI_OUT_OF_RESOURCES; > } > if (PrivateData->CapsuleNumber >= MAX_ADDRESS) { > - DEBUG ((EFI_D_ERROR, "CapsuleNumber too big - 0x%lx\n", PrivateData->CapsuleNumber)); > + DEBUG ((DEBUG_ERROR, "CapsuleNumber too big - 0x%lx\n", PrivateData->CapsuleNumber)); > return EFI_OUT_OF_RESOURCES; > } > // > @@ -1248,13 +1248,13 @@ CreateState ( > ); > > if (Status != EFI_SUCCESS) { > - DEBUG ((EFI_D_ERROR, "AllocatePages Failed!\n")); > + DEBUG ((DEBUG_ERROR, "AllocatePages Failed!\n")); > return Status; > } > // > // Copy to our new buffer for DXE > // > - DEBUG ((EFI_D_INFO, "Capsule copy from 0x%8X to 0x%8X with size 0x%8X\n", (UINTN)((UINT8 *)PrivateData + sizeof(EFI_CAPSULE_PEIM_PRIVATE_DATA) + (CapsuleNumber - 1) * sizeof(UINT64)), (UINTN) NewBuffer, Size)); > + DEBUG ((DEBUG_INFO, "Capsule copy from 0x%8X to 0x%8X with size 0x%8X\n", (UINTN)((UINT8 *)PrivateData + sizeof(EFI_CAPSULE_PEIM_PRIVATE_DATA) + (CapsuleNumber - 1) * sizeof(UINT64)), (UINTN) NewBuffer, Size)); > CopyMem ((VOID *) (UINTN) NewBuffer, (VOID *) (UINTN) ((UINT8 *)PrivateData + sizeof(EFI_CAPSULE_PEIM_PRIVATE_DATA) + (CapsuleNumber - 1) * sizeof(UINT64)), Size); > // > // Check for test data pattern. If it is the test pattern, then we'll > diff --git a/MdeModulePkg/Universal/CapsulePei/X64/X64Entry.c b/MdeModulePkg/Universal/CapsulePei/X64/X64Entry.c > index 40b7095194..2c309990fb 100644 > --- a/MdeModulePkg/Universal/CapsulePei/X64/X64Entry.c > +++ b/MdeModulePkg/Universal/CapsulePei/X64/X64Entry.c > @@ -174,7 +174,7 @@ PageFaultHandler ( > AddressEncMask = PageFaultContext->AddressEncMask; > > PFAddress = AsmReadCr2 (); > - DEBUG ((EFI_D_ERROR, "CapsuleX64 - PageFaultHandler: Cr2 - %lx\n", PFAddress)); > + DEBUG ((DEBUG_ERROR, "CapsuleX64 - PageFaultHandler: Cr2 - %lx\n", PFAddress)); > > if (PFAddress >= PhyMask + SIZE_4KB) { > return PageFaultContext->OriginalHandler; >