EmbeddedPkg/PrePiMemoryAllocationLib: Added AllocateZeroPool()
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 <jbrasen@nvidia.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
This commit is contained in:
@ -16,6 +16,7 @@
|
|||||||
#include <PiPei.h>
|
#include <PiPei.h>
|
||||||
|
|
||||||
#include <Library/BaseLib.h>
|
#include <Library/BaseLib.h>
|
||||||
|
#include <Library/BaseMemoryLib.h>
|
||||||
#include <Library/PrePiLib.h>
|
#include <Library/PrePiLib.h>
|
||||||
#include <Library/DebugLib.h>
|
#include <Library/DebugLib.h>
|
||||||
|
|
||||||
@ -194,6 +195,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;
|
||||||
|
}
|
||||||
|
|
||||||
|
ZeroMem (Buffer, AllocationSize);
|
||||||
|
|
||||||
|
return Buffer;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Frees a buffer that was previously allocated with one of the pool allocation functions in the
|
Frees a buffer that was previously allocated with one of the pool allocation functions in the
|
||||||
Memory Allocation Library.
|
Memory Allocation Library.
|
||||||
|
Reference in New Issue
Block a user