On Mon, Mar 27, 2023 at 13:01:10 +0200, Ard Biesheuvel wrote: > UEFI v2.10 introduces a new flag to the memory attributes table to > inform the OS whether or not runtime services code regions were emitted > by the compiler with guard instructions for forward edge control flow > integrity enforcement. > > So update our definition accordingly. > > Link: > https://uefi.org/specs/UEFI/2.10/04_EFI_System_Table.html#efi-memory-attributes-table > Signed-off-by: Ard Biesheuvel <a...@kernel.org> > Reviewed-by: Michael D Kinney <michael.d.kin...@intel.com> > Acked-by: Michael Kubacki <michael.kuba...@microsoft.com> > --- > MdePkg/Include/Guid/MemoryAttributesTable.h | 8 ++++++-- > 1 file changed, 6 insertions(+), 2 deletions(-) > > diff --git a/MdePkg/Include/Guid/MemoryAttributesTable.h > b/MdePkg/Include/Guid/MemoryAttributesTable.h > index 82f83a67b96d38c5..238c14ff92dfed31 100644 > --- a/MdePkg/Include/Guid/MemoryAttributesTable.h > +++ b/MdePkg/Include/Guid/MemoryAttributesTable.h > @@ -17,11 +17,15 @@ typedef struct { > UINT32 Version; > UINT32 NumberOfEntries; > UINT32 DescriptorSize; > - UINT32 Reserved; > + UINT32 Flags;
Does this not cause a bisect breakage vs patch 17? / Leif > // EFI_MEMORY_DESCRIPTOR Entry[1]; > } EFI_MEMORY_ATTRIBUTES_TABLE; > > -#define EFI_MEMORY_ATTRIBUTES_TABLE_VERSION 0x00000001 > +#define EFI_MEMORY_ATTRIBUTES_TABLE_VERSION 0x00000002 > + > +#define EFI_MEMORY_ATTRIBUTES_FLAGS_RT_FORWARD_CONTROL_FLOW_GUARD 0x1 > +// BIT0 implies that Runtime code includes the forward control flow guard > +// instruction, such as X86 CET-IBT or ARM BTI. > > extern EFI_GUID gEfiMemoryAttributesTableGuid; > > -- > 2.39.2 > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#101955): https://edk2.groups.io/g/devel/message/101955 Mute This Topic: https://groups.io/mt/97879302/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/leave/9847357/21656/1706620634/xyzzy [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-