Branch: refs/heads/master
Home: https://github.com/tianocore/edk2
Commit: ee67067f174012abae98b1c9fce332d2ce90b952
https://github.com/tianocore/edk2/commit/ee67067f174012abae98b1c9fce332d2ce90b952
Author: Kun Qin <[email protected]>
Date: 2022-01-27 (Thu, 27 Jan 2022)
Changed paths:
M MdeModulePkg/Universal/Variable/RuntimeDxe/VariablePolicySmmDxe.c
Log Message:
-----------
MdeModulePkg: VariableSmmRuntimeDxe: Fix Variable Policy Message Length
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3709
In EDKII implementation of variable policy, the DXE runtime agent would
communicate to MM to disable, register or query policies. However, these
operations populate the value of MessageLength that includes communicate
header to include MM communicate header, which mismatches with the
description of PI specification.
This fix will correct the MessageLength field calculation to exclude
the size of MM_COMMUNICATE_HEADER.
Cc: Jian J Wang <[email protected]>
Cc: Liming Gao <[email protected]>
Cc: Hao A Wu <[email protected]>
Cc: Bret Barkelew <[email protected]>
Cc: Michael Kubacki <[email protected]>
Signed-off-by: Kun Qin <[email protected]>
Reviewed-by: Liming Gao <[email protected]>
Commit: 5b39832e184f3d00b0b35f006706d4c7e9a54fae
https://github.com/tianocore/edk2/commit/5b39832e184f3d00b0b35f006706d4c7e9a54fae
Author: Kun Qin <[email protected]>
Date: 2022-01-27 (Thu, 27 Jan 2022)
Changed paths:
M MdePkg/Include/Protocol/MmCommunication2.h
Log Message:
-----------
MdePkg: MmCommunication2: Update MM communicate2 function description
Current MM communicate2 function definition described input arguments
`CommBufferPhysical`, `CommBufferVirtual` and `CommSize` as input only,
which mismatches with the "input and output type" as in PI specification.
This change updated function descriptions of MM communite2 definition to
match input argument types.
Cc: Michael D Kinney <[email protected]>
Cc: Liming Gao <[email protected]>
Cc: Zhiguang Liu <[email protected]>
Signed-off-by: Kun Qin <[email protected]>
Reviewed-by: Liming Gao <[email protected]>
Commit: ce37f459550f6e4c9bae27a9a6c39ba8eaf6749f
https://github.com/tianocore/edk2/commit/ce37f459550f6e4c9bae27a9a6c39ba8eaf6749f
Author: Kun Qin <[email protected]>
Date: 2022-01-27 (Thu, 27 Jan 2022)
Changed paths:
M ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.c
Log Message:
-----------
ArmPkg: MmCommunicationDxe: MM communicate function argument attributes
Current MM communicate2 function from ArmPkg described input arguments
`CommBufferPhysical`, `CommBufferVirtual` and `CommSize` as input only,
which mismatches with the "input and output type" as in PI specification.
This change updated function descriptions of MM communite2 to match input
argument types.
Cc: Leif Lindholm <[email protected]>
Cc: Ard Biesheuvel <[email protected]>
Cc: Bret Barkelew <[email protected]>
Cc: Michael Kubacki <[email protected]>
Cc: Sami Mujawar <[email protected]>
Signed-off-by: Kun Qin <[email protected]>
Reviewed-by: Sami Mujawar <[email protected]>
Commit: 541a077bd15f5730e93fcc6f79fb81021933bddb
https://github.com/tianocore/edk2/commit/541a077bd15f5730e93fcc6f79fb81021933bddb
Author: Kun Qin <[email protected]>
Date: 2022-01-27 (Thu, 27 Jan 2022)
Changed paths:
M ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.c
Log Message:
-----------
ArmPkg: MmCommunicationDxe: Update MM communicate `CommBuffer**` checks
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3751
Current MM communicate routine from ArmPkg would conduct few checks prior
to proceeding with SMC calls. However, the inspection step is different
from PI specification.
This patch updated MM communicate input argument inspection routine to
assure that return code `EFI_INVALID_PARAMETER` represents "the
`CommBuffer**` parameters do not refer to the same location in memory",
as described by `EFI_MM_COMMUNICATION2_PROTOCOL.Communicate()` section
in PI specification.
Cc: Leif Lindholm <[email protected]>
Cc: Ard Biesheuvel <[email protected]>
Cc: Bret Barkelew <[email protected]>
Cc: Michael Kubacki <[email protected]>
Cc: Sami Mujawar <[email protected]>
Signed-off-by: Kun Qin <[email protected]>
Reviewed-by: Sami Mujawar <[email protected]>
Commit: 1aa1ec457424fe03c976efda85e062461a44542c
https://github.com/tianocore/edk2/commit/1aa1ec457424fe03c976efda85e062461a44542c
Author: Kun Qin <[email protected]>
Date: 2022-01-27 (Thu, 27 Jan 2022)
Changed paths:
M ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.c
Log Message:
-----------
ArmPkg: MmCommunicationDxe: Update MM communicate `CommSize` check
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3751
Current MM communicate routine from ArmPkg would conduct few checks prior
to proceeding with SMC calls. However, the inspection step is different
from PI specification.
This patch updated MM communicate input argument inspection routine to
assure `CommSize` represents "the size of the data buffer being passed
in" instead of the size of the data being used from data buffer, as
described by section `EFI_MM_COMMUNICATION2_PROTOCOL.Communicate()` in PI
specification.
Cc: Leif Lindholm <[email protected]>
Cc: Ard Biesheuvel <[email protected]>
Cc: Bret Barkelew <[email protected]>
Cc: Michael Kubacki <[email protected]>
Cc: Sami Mujawar <[email protected]>
Signed-off-by: Kun Qin <[email protected]>
Reviewed-by: Sami Mujawar <[email protected]>
Commit: 8cc5590eab974ab34e2bfa1c9d6a7ef94c70ffae
https://github.com/tianocore/edk2/commit/8cc5590eab974ab34e2bfa1c9d6a7ef94c70ffae
Author: Kun Qin <[email protected]>
Date: 2022-01-27 (Thu, 27 Jan 2022)
Changed paths:
M ArmPkg/Drivers/MmCommunicationDxe/MmCommunication.c
Log Message:
-----------
ArmPkg: MmCommunicationDxe: Update MM communicate `MessageLength` check
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3751
Current MM communicate routine from ArmPkg would conduct few checks prior
to proceeding with SMC calls. However, the inspection step is different
from PI specification.
This patch updated MM communicate input argument inspection routine to
assure that "if the `MessageLength` is zero, or too large for the MM
implementation to manage, the MM implementation must update the
`MessageLength` to reflect the size of the `Data` buffer that it can
tolerate", as described by `EFI_MM_COMMUNICATION_PROTOCOL.Communicate()`
section in PI specification.
Cc: Leif Lindholm <[email protected]>
Cc: Ard Biesheuvel <[email protected]>
Cc: Bret Barkelew <[email protected]>
Cc: Michael Kubacki <[email protected]>
Cc: Sami Mujawar <[email protected]>
Signed-off-by: Kun Qin <[email protected]>
Reviewed-by: Sami Mujawar <[email protected]>
Compare: https://github.com/tianocore/edk2/compare/7e5c603cba08...8cc5590eab97
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits