mirror of https://github.com/acidanthera/audk.git
MdeModulePkg/Variable: Check EFI_MEMORY_RUNTIME attribute before setting it
Set the EFI_MEMORY_RUNTIME attribute in FtwNotificationEvent() only if the attribute is not already present. This will ensure that the attributes set by the platform drivers (e.g Ovmf pflash) is not lost. Cc: Dong Eric <eric.dong@intel.com> Cc: Justen Jordan L <jordan.l.justen@intel.com> Cc: Zeng Star <star.zeng@intel.com> Cc: Laszlo Ersek <lersek@redhat.com> Contributed-under: TianoCore Contribution Agreement 1.1 Reviewed-by: Star Zeng <star.zeng@intel.com> Signed-off-by: Brijesh Singh <brijesh.singh@amd.com>
This commit is contained in:
parent
dd3907f221
commit
f88290964f
|
@ -412,13 +412,15 @@ FtwNotificationEvent (
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
DEBUG ((DEBUG_WARN, "Variable driver failed to get flash memory attribute.\n"));
|
DEBUG ((DEBUG_WARN, "Variable driver failed to get flash memory attribute.\n"));
|
||||||
} else {
|
} else {
|
||||||
Status = gDS->SetMemorySpaceAttributes (
|
if ((GcdDescriptor.Attributes & EFI_MEMORY_RUNTIME) == 0) {
|
||||||
BaseAddress,
|
Status = gDS->SetMemorySpaceAttributes (
|
||||||
Length,
|
BaseAddress,
|
||||||
GcdDescriptor.Attributes | EFI_MEMORY_RUNTIME
|
Length,
|
||||||
);
|
GcdDescriptor.Attributes | EFI_MEMORY_RUNTIME
|
||||||
if (EFI_ERROR (Status)) {
|
);
|
||||||
DEBUG ((DEBUG_WARN, "Variable driver failed to add EFI_MEMORY_RUNTIME attribute to Flash.\n"));
|
if (EFI_ERROR (Status)) {
|
||||||
|
DEBUG ((DEBUG_WARN, "Variable driver failed to add EFI_MEMORY_RUNTIME attribute to Flash.\n"));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue