mirror of https://github.com/acidanthera/audk.git
MdeModulePkg PiSmmCore: Update FreePages to handle zero address and pages
https://bugzilla.tianocore.org/show_bug.cgi?id=278 Zero memory address or zero number pages are invalid to SmmFreePages(). Cc: Star Zeng <star.zeng@intel.com> Cc: Jiewen Yao <jiewen.yao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Star Zeng <star.zeng@intel.com>
This commit is contained in:
parent
d5aef955b9
commit
ddfae2640c
|
@ -861,7 +861,7 @@ InternalMergeNodes (
|
|||
@param[in] AddRegion If this memory is new added region.
|
||||
|
||||
@retval EFI_NOT_FOUND Could not find the entry that covers the range.
|
||||
@retval EFI_INVALID_PARAMETER Address not aligned.
|
||||
@retval EFI_INVALID_PARAMETER Address not aligned, Address is zero or NumberOfPages is zero.
|
||||
@return EFI_SUCCESS Pages successfully freed.
|
||||
|
||||
**/
|
||||
|
@ -875,7 +875,7 @@ SmmInternalFreePagesEx (
|
|||
LIST_ENTRY *Node;
|
||||
FREE_PAGE_LIST *Pages;
|
||||
|
||||
if ((Memory & EFI_PAGE_MASK) != 0) {
|
||||
if (((Memory & EFI_PAGE_MASK) != 0) || (Memory == 0) || (NumberOfPages == 0)) {
|
||||
return EFI_INVALID_PARAMETER;
|
||||
}
|
||||
|
||||
|
@ -933,7 +933,7 @@ SmmInternalFreePagesEx (
|
|||
@param[in] NumberOfPages The number of pages to free.
|
||||
|
||||
@retval EFI_NOT_FOUND Could not find the entry that covers the range.
|
||||
@retval EFI_INVALID_PARAMETER Address not aligned.
|
||||
@retval EFI_INVALID_PARAMETER Address not aligned, Address is zero or NumberOfPages is zero.
|
||||
@return EFI_SUCCESS Pages successfully freed.
|
||||
|
||||
**/
|
||||
|
@ -954,7 +954,7 @@ SmmInternalFreePages (
|
|||
@param NumberOfPages The number of pages to free.
|
||||
|
||||
@retval EFI_NOT_FOUND Could not find the entry that covers the range.
|
||||
@retval EFI_INVALID_PARAMETER Address not aligned.
|
||||
@retval EFI_INVALID_PARAMETER Address not aligned, Address is zero or NumberOfPages is zero.
|
||||
@return EFI_SUCCESS Pages successfully freed.
|
||||
|
||||
**/
|
||||
|
|
|
@ -312,7 +312,7 @@ SmmInternalAllocatePages (
|
|||
@param NumberOfPages The number of pages to free
|
||||
|
||||
@retval EFI_NOT_FOUND Could not find the entry that covers the range
|
||||
@retval EFI_INVALID_PARAMETER Address not aligned
|
||||
@retval EFI_INVALID_PARAMETER Address not aligned, Address is zero or NumberOfPages is zero.
|
||||
@return EFI_SUCCESS Pages successfully freed.
|
||||
|
||||
**/
|
||||
|
@ -330,7 +330,7 @@ SmmFreePages (
|
|||
@param NumberOfPages The number of pages to free
|
||||
|
||||
@retval EFI_NOT_FOUND Could not find the entry that covers the range
|
||||
@retval EFI_INVALID_PARAMETER Address not aligned
|
||||
@retval EFI_INVALID_PARAMETER Address not aligned, Address is zero or NumberOfPages is zero.
|
||||
@return EFI_SUCCESS Pages successfully freed.
|
||||
|
||||
**/
|
||||
|
|
Loading…
Reference in New Issue