Hi,

The SMM specification (Vol4. PI v1.4) says in the description of the SmiManage()
function:

"
If NULL is passed in HandlerType, then only those registered handler functions
which passed NULL as their HandlerType will be called. If NULL is passed in
HandlerType, then Context should be NULL, CommBuffer should point to an instance
of EFI_SMM_ENTRY_CONTEXT and CommBufferSize should point to the size of that
structure. Type EFI_SMM_ENTRY_CONTEXT is defined in “Related Definitions” below.
"

However, in MdeModulePkg/Core/PiSmmCore/PiSmmCore.c, there is an invocation of
this function as follows for handling an asynchronous SMI source:

"
  //
  // Process Asynchronous SMI sources
  //
  SmiManage (NULL, NULL, NULL, NULL);
"

Is this invocation not in violation of the specification. I guess the root SMI
handler is accessing the EFI_SMM_ENTRY_CONTEXT information directly from the
SMST? I cannot see how this information could be made available to the root
handler otherwise.

Can anyone please confirm/clarify this?

Thanks,
Achin

IMPORTANT NOTICE: The contents of this email and any attachments are 
confidential and may also be privileged. If you are not the intended recipient, 
please notify the sender immediately and do not disclose the contents to any 
other person, use it for any purpose, or store or copy the information in any 
medium. Thank you.

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to