OvmfPkg/MemEncryptSevLib: Address range encryption state interface
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3108 Update the MemEncryptSevLib library to include an interface that can report the encryption state on a range of memory. The values will represent the range as being unencrypted, encrypted, a mix of unencrypted and encrypted, and error (e.g. ranges that aren't mapped). Cc: Jordan Justen <jordan.l.justen@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Cc: Ard Biesheuvel <ard.biesheuvel@arm.com> Cc: Brijesh Singh <brijesh.singh@amd.com> Acked-by: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com> Message-Id: <0d98f4d42a2b67310c29bac7bcdcf1eda6835847.1610045305.git.thomas.lendacky@amd.com>
This commit is contained in:
committed by
mergify[bot]
parent
a746ca5b47
commit
c330af0246
@ -2,7 +2,7 @@
|
||||
|
||||
Secure Encrypted Virtualization (SEV) library helper function
|
||||
|
||||
Copyright (c) 2017, AMD Incorporated. All rights reserved.<BR>
|
||||
Copyright (c) 2017 - 2020, AMD Incorporated. All rights reserved.<BR>
|
||||
|
||||
SPDX-License-Identifier: BSD-2-Clause-Patent
|
||||
|
||||
@ -88,3 +88,33 @@ MemEncryptSevSetPageEncMask (
|
||||
Flush
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
Returns the encryption state of the specified virtual address range.
|
||||
|
||||
@param[in] Cr3BaseAddress Cr3 Base Address (if zero then use
|
||||
current CR3)
|
||||
@param[in] BaseAddress Base address to check
|
||||
@param[in] Length Length of virtual address range
|
||||
|
||||
@retval MemEncryptSevAddressRangeUnencrypted Address range is mapped
|
||||
unencrypted
|
||||
@retval MemEncryptSevAddressRangeEncrypted Address range is mapped
|
||||
encrypted
|
||||
@retval MemEncryptSevAddressRangeMixed Address range is mapped mixed
|
||||
@retval MemEncryptSevAddressRangeError Address range is not mapped
|
||||
**/
|
||||
MEM_ENCRYPT_SEV_ADDRESS_RANGE_STATE
|
||||
EFIAPI
|
||||
MemEncryptSevGetAddressRangeState (
|
||||
IN PHYSICAL_ADDRESS Cr3BaseAddress,
|
||||
IN PHYSICAL_ADDRESS BaseAddress,
|
||||
IN UINTN Length
|
||||
)
|
||||
{
|
||||
return InternalMemEncryptSevGetAddressRangeState (
|
||||
Cr3BaseAddress,
|
||||
BaseAddress,
|
||||
Length
|
||||
);
|
||||
}
|
||||
|
Reference in New Issue
Block a user