Hi all,
I am trying to propose a change into PI spec and would like to gather some feedback in this forum.
Essentially, the current communicate header contains a UINTN field in place, which is causing programing
errors when trying to communicate the message between different operation mode (i.e. PEI in IA32
communicate into MM in x64). There are various implementations at large to compensate for this
size discrepancy through the edk2 codebase, thus fixing the existing communicate buffer definition
will be less feasible. Thus I think proposing a new structure and implement the corresponding header
parser will be a simpler approach, which also allows a bit more flexibility to inject new features/checks
into the communication channel.
The proposed change for the spec is detailed here:
https://github.com/kuqin12/edk2/blob/BZ3398-MmCommunicate-Length-v4/CodeFirst/BZ3430-SpecChange.md
And the code first change is listed here:
https://github.com/kuqin12/edk2/blob/BZ3398-MmCommunicate-Length-v4/
Could you please provide me with any feedback that you think might be helpful for future usage of MM
communicate? Any input is appreciated.
Regards,
Kun