On 11/08/18 18:09, Jeff Brasen wrote: > This function is exposed by the MemoryAllocationLib header. > An AllocateZeroPool() function has been added to fix modules depending on > this library and this function. > > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Jeff Brasen <jbra...@nvidia.com> > --- > .../PrePiMemoryAllocationLib/MemoryAllocationLib.c | 32 > ++++++++++++++++++++++ > 1 file changed, 32 insertions(+) > > diff --git > a/EmbeddedPkg/Library/PrePiMemoryAllocationLib/MemoryAllocationLib.c > b/EmbeddedPkg/Library/PrePiMemoryAllocationLib/MemoryAllocationLib.c > index 0e75e23..c39d140 100644 > --- a/EmbeddedPkg/Library/PrePiMemoryAllocationLib/MemoryAllocationLib.c > +++ b/EmbeddedPkg/Library/PrePiMemoryAllocationLib/MemoryAllocationLib.c > @@ -16,6 +16,7 @@ > #include <PiPei.h> > > #include <Library/BaseLib.h> > +#include <Library/BaseMemoryLib.h> > #include <Library/PrePiLib.h> > #include <Library/DebugLib.h> > > @@ -195,6 +196,37 @@ AllocatePool ( > } > > /** > + Allocates and zeros a buffer of type EfiBootServicesData. > + > + Allocates the number bytes specified by AllocationSize of type > EfiBootServicesData, clears the > + buffer with zeros, and returns a pointer to the allocated buffer. If > AllocationSize is 0, then a > + valid buffer of 0 size is returned. If there is not enough memory > remaining to satisfy the > + request, then NULL is returned. > + > + @param AllocationSize The number of bytes to allocate and zero. > + > + @return A pointer to the allocated buffer or NULL if allocation fails. > + > +**/ > +VOID * > +EFIAPI > +AllocateZeroPool ( > + IN UINTN AllocationSize > + ) > +{ > + VOID *Buffer; > + > + Buffer = AllocatePool (AllocationSize); > + if (Buffer == NULL) { > + return NULL; > + } > + > + SetMem (Buffer, AllocationSize, 0); > + > + return Buffer; > +} > + > +/** > Frees a buffer that was previously allocated with one of the pool > allocation functions in the > Memory Allocation Library. > >
Drive-by comment: can you use ZeroMem()? It's a tiny bit more idiomatic. Thanks Laszlo _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel