Hi, I'm aware theres been implemented a PCD 
`gUefiCpuPkgTokenSpaceGuid.PcdCpuSmmRestrictedMemoryAccess` that blocks access 
to "any" type of non-SMRAM memory after SmmReadyToLock.

But I ran some tests and found out I can access some memory regions outside 
SMRAM, like address 0xFFFD0 for instance, and dereference a pointer to that 
address inside my Mm Handler without any problems, even though this is a 
non-SMRAM address and I have that PCD set to TRUE (Access to non-SMRAM memory 
is restricted).

However when I try to dereference a pointer to a memory region used by the OS I 
get an error saying `Access SMM communication forbidden address (0xC600000)!`

So I'm wondering:

1) Is it blocked or not?
2) In what context I *can* access non-SMRAM memory regions from inside my mm 
Handler?
3) Is there any way to read these memory regions used by the OS from inside the 
mm Handler other than setting PcdCpuSmmRestrictedMemoryAccess to FALSE?

Any kind of help would be appreciated. Thanks!


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#97024): https://edk2.groups.io/g/devel/message/97024
Mute This Topic: https://groups.io/mt/95490141/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to