MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Liming Gao <liming.gao@intel.com>
Cc: Star Zeng <star.zeng@intel.com>
---
MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c
index 77905a0..a47270a 100644
--- a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c
+++ b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c
@@ -4125,7 +4125,7 @@ ConvertNormalVarStorageToAuthVarStorage (
//
AuthVarStorage->Format = NormalVarStorage->Format;
AuthVarStorage->State = NormalVarStorage->State;
- AuthVarStorage->Size = (UINT32) (UINTN) ((UINT8 *) AuthStartPtr - (UINT8 *) AuthVarStorage);
+ AuthVarStorage->Size = (UINT32)((UINTN) (UINT8 *) AuthStartPtr - (UINTN) (UINT8 *) AuthVarStorage);
CopyGuid (&AuthVarStorage->Signature, &gEfiAuthenticatedVariableGuid);
ASSERT (AuthVarStorage->Size <= AuthVarStroageSize);
--
2.8.0.windows.1
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
On 26 December 2017 at 08:36, Liming Gao <liming.gao@intel.com> wrote: > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Liming Gao <liming.gao@intel.com> > Cc: Star Zeng <star.zeng@intel.com> Could you please add an explanation why this is necessary? Do we really need 5 (!) casts to perform a simple subtraction? > --- > MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c > index 77905a0..a47270a 100644 > --- a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c > +++ b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c > @@ -4125,7 +4125,7 @@ ConvertNormalVarStorageToAuthVarStorage ( > // > AuthVarStorage->Format = NormalVarStorage->Format; > AuthVarStorage->State = NormalVarStorage->State; > - AuthVarStorage->Size = (UINT32) (UINTN) ((UINT8 *) AuthStartPtr - (UINT8 *) AuthVarStorage); > + AuthVarStorage->Size = (UINT32)((UINTN) (UINT8 *) AuthStartPtr - (UINTN) (UINT8 *) AuthVarStorage); > CopyGuid (&AuthVarStorage->Signature, &gEfiAuthenticatedVariableGuid); > ASSERT (AuthVarStorage->Size <= AuthVarStroageSize); > > -- > 2.8.0.windows.1 > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
Ard: Here is the simpler version. Convert pointer to UINTN, then subtract them to get the size, last convert it to UINT32. AuthVarStorage->Size = (UINT32)((UINTN) AuthStartPtr - (UINTN) AuthVarStorage); Thanks Liming >-----Original Message----- >From: Ard Biesheuvel [mailto:ard.biesheuvel@linaro.org] >Sent: Tuesday, December 26, 2017 4:39 PM >To: Gao, Liming <liming.gao@intel.com> >Cc: edk2-devel@lists.01.org; Zeng, Star <star.zeng@intel.com> >Subject: Re: [edk2] [Patch] MdeModulePkg Variable: Update Pointer Minus >with UINTN type > >On 26 December 2017 at 08:36, Liming Gao <liming.gao@intel.com> wrote: >> Contributed-under: TianoCore Contribution Agreement 1.1 >> Signed-off-by: Liming Gao <liming.gao@intel.com> >> Cc: Star Zeng <star.zeng@intel.com> > >Could you please add an explanation why this is necessary? Do we >really need 5 (!) casts to perform a simple subtraction? > >> --- >> MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c >b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c >> index 77905a0..a47270a 100644 >> --- a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c >> +++ b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c >> @@ -4125,7 +4125,7 @@ ConvertNormalVarStorageToAuthVarStorage ( >> // >> AuthVarStorage->Format = NormalVarStorage->Format; >> AuthVarStorage->State = NormalVarStorage->State; >> - AuthVarStorage->Size = (UINT32) (UINTN) ((UINT8 *) AuthStartPtr - >(UINT8 *) AuthVarStorage); >> + AuthVarStorage->Size = (UINT32)((UINTN) (UINT8 *) AuthStartPtr - >(UINTN) (UINT8 *) AuthVarStorage); >> CopyGuid (&AuthVarStorage->Signature, >&gEfiAuthenticatedVariableGuid); >> ASSERT (AuthVarStorage->Size <= AuthVarStroageSize); >> >> -- >> 2.8.0.windows.1 >> >> _______________________________________________ >> edk2-devel mailing list >> edk2-devel@lists.01.org >> https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
On 26 December 2017 at 08:46, Gao, Liming <liming.gao@intel.com> wrote: > Ard: > Here is the simpler version. Convert pointer to UINTN, then subtract them to get the size, last convert it to UINT32. > > AuthVarStorage->Size = (UINT32)((UINTN) AuthStartPtr - (UINTN) AuthVarStorage); > That looks much better, thanks (although I prefer no space after the cast) >>-----Original Message----- >>From: Ard Biesheuvel [mailto:ard.biesheuvel@linaro.org] >>Sent: Tuesday, December 26, 2017 4:39 PM >>To: Gao, Liming <liming.gao@intel.com> >>Cc: edk2-devel@lists.01.org; Zeng, Star <star.zeng@intel.com> >>Subject: Re: [edk2] [Patch] MdeModulePkg Variable: Update Pointer Minus >>with UINTN type >> >>On 26 December 2017 at 08:36, Liming Gao <liming.gao@intel.com> wrote: >>> Contributed-under: TianoCore Contribution Agreement 1.1 >>> Signed-off-by: Liming Gao <liming.gao@intel.com> >>> Cc: Star Zeng <star.zeng@intel.com> >> >>Could you please add an explanation why this is necessary? Do we >>really need 5 (!) casts to perform a simple subtraction? >> >>> --- >>> MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c | 2 +- >>> 1 file changed, 1 insertion(+), 1 deletion(-) >>> >>> diff --git a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c >>b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c >>> index 77905a0..a47270a 100644 >>> --- a/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c >>> +++ b/MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c >>> @@ -4125,7 +4125,7 @@ ConvertNormalVarStorageToAuthVarStorage ( >>> // >>> AuthVarStorage->Format = NormalVarStorage->Format; >>> AuthVarStorage->State = NormalVarStorage->State; >>> - AuthVarStorage->Size = (UINT32) (UINTN) ((UINT8 *) AuthStartPtr - >>(UINT8 *) AuthVarStorage); >>> + AuthVarStorage->Size = (UINT32)((UINTN) (UINT8 *) AuthStartPtr - >>(UINTN) (UINT8 *) AuthVarStorage); >>> CopyGuid (&AuthVarStorage->Signature, >>&gEfiAuthenticatedVariableGuid); >>> ASSERT (AuthVarStorage->Size <= AuthVarStroageSize); >>> >>> -- >>> 2.8.0.windows.1 >>> >>> _______________________________________________ >>> edk2-devel mailing list >>> edk2-devel@lists.01.org >>> https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
© 2016 - 2025 Red Hat, Inc.