On Mon, 6 Dec 2021 at 19:35, Kun Qin <kuqi...@gmail.com> wrote: > > Hi ArmPkg and MdeModulePkg maintainers, > > It has been a week since the patches were sent. Could you please review > the changes and let me know if there is any feedback? Any input is > appreciated. >
As far as I know, we are still in hard freeze for the upcoming stable tag. > > On 11/29/2021 16:39, Kun Qin via groups.io wrote: > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3709 > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3751 > > > > Currently, setups with variable policy operations used together with MM > > communicate from ArmPkg could fail with `EFI_INVALID_PARAMETER`. This was > > due to the errors from 2 following aspects: > > > > 1. For variable policy implementations in MdeModulePkg, the DXE runtime > > agent would communicate to MM to disable, register or query policies. > > However, during these operations, the MessageLength calculation is > > including MM communicate header. This could lead to MM agent read data > > across the given buffer boundary and/or trigger other errors. > > > > 2. On the other hand, current MM communicate routine from ArmPkg would > > fail the function if the input message length does not equal to input > > buffer size. > > > > As defined in PI specification, the `CommSize`, when as input, should > > stand for "The size of the data buffer being passed in", which would mean > > the maximal number of bytes `CommBuffer` can hold. In turn, the value of > > this input parameter can be used for MM handlers to determine whether the > > output data is too large to fit in this buffer. Enforcing the incoming > > buffer to hold exactly the number of used bytes mismatches with the PI > > spec description. > > > > This change fix MessageLength field calculation from variable policy and > > updated input argument inspections from MM communicate routine in ArmPkg > > to match PI spec descriptions. > > > > Patch v1 branch: https://github.com/kuqin12/edk2/tree/mm_communicate_check > > > > Cc: Jian J Wang <jian.j.w...@intel.com> > > Cc: Liming Gao <gaolim...@byosoft.com.cn> > > Cc: Hao A Wu <hao.a...@intel.com> > > Cc: Leif Lindholm <l...@nuviainc.com> > > Cc: Ard Biesheuvel <ardb+tianoc...@kernel.org> > > Cc: Bret Barkelew <bret.barke...@microsoft.com> > > Cc: Michael Kubacki <michael.kuba...@microsoft.com> > > > > Kun Qin (2): > > MdeModulePkg: VariableSmmRuntimeDxe: Fix Variable Policy Message > > Length > > ArmPkg: MmCommunicationDxe: Update MM communicate input arguments > > checks > > > > ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.c | 44 > > ++++++++++++-------- > > MdeModulePkg/Universal/Variable/RuntimeDxe/VariablePolicySmmDxe.c | 10 > > ++--- > > 2 files changed, 32 insertions(+), 22 deletions(-) > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#84420): https://edk2.groups.io/g/devel/message/84420 Mute This Topic: https://groups.io/mt/87392593/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-