audk/MdeModulePkg/Universal/Variable/RuntimeDxe
Star Zeng 3d7ebd6434 MdeModulePkg Variable: Align TPL level for (Smm)EndOfDxe callback
VariableRuntimeDxe will have OnEndOfDxe() callback function at
TPL_NOTIFY level on EndOfDxe event when DXE variable solution is
used.
  Status = gBS->CreateEventEx (
                  EVT_NOTIFY_SIGNAL,
                  TPL_NOTIFY,
                  OnEndOfDxe,
                  NULL,
                  &gEfiEndOfDxeEventGroupGuid,
                  &EndOfDxeEvent
                  );

VariableSmm will have SmmEndOfDxeCallback() callback function at
TPL_CALLBACK level on SmmEndOfDxe event when SMM variable solution
is used.
SmmIplGuidedEventNotify()  -  PiSmmIpl.c TPL_CALLBACK on EndOfDxe
->
SmmEndOfDxeHandler()  -  PiSmmCore.c install SmmEndOfDxe protocol
->
SmmEndOfDxeCallback() - VariableSmm.c

The TPL level for (Smm)EndOfDxe callback between VariableRuntimeDxe
and VariableSmm is inconsistent, it will make the unified platform
code could not make sure its TPL_NOTIFY EndOfDxe callback function
(to use variable lock/check) executed before (Smm)EndOfDxe callback
function in variable driver. The variable lock/check will start to
protect after (Smm)EndOfDxe callback function in variable driver is
executed.

This patch is to algin the TPL level to TPL_CALLBACK for (Smm)EndOfDxe
callback between VariableRuntimeDxe and VariableSmm.

Cc: Chasel Chiu <chasel.chiu@intel.com>
Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Chasel Chiu <chasel.chiu@intel.com>
2018-03-30 14:14:25 +08:00
..
Measurement.c MdeModulePkg/Variable/RuntimeDxe: move SecureBootHook() decl to new header 2017-10-10 11:25:04 +02:00
PrivilegePolymorphic.h MdeModulePkg/Variable/RuntimeDxe: introduce MorLockInitAtEndOfDxe() hook 2017-10-10 11:25:21 +02:00
Reclaim.c
TcgMorLockDxe.c MdeModulePkg/Variable/RuntimeDxe: delete & lock MOR in the absence of SMM 2017-10-25 14:06:15 +02:00
TcgMorLockSmm.c MdeModulePkg: Deprecate EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS 2017-11-01 22:25:36 +08:00
VarCheck.c MdeModulePkg Variable: Consume the separated VarCheckLib 2015-08-25 03:01:56 +00:00
Variable.c MdeModulePkg Variable: Use boolean type value instead of expression 2017-12-27 17:40:41 +08:00
Variable.h MdeModulePkg: Deprecate EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS 2017-11-01 22:25:36 +08:00
VariableDxe.c MdeModulePkg Variable: Align TPL level for (Smm)EndOfDxe callback 2018-03-30 14:14:25 +08:00
VariableExLib.c
VariableRuntimeDxe.inf MdeModulePkg/Variable/RuntimeDxe: move SecureBootHook() decl to new header 2017-10-10 11:25:04 +02:00
VariableRuntimeDxe.uni MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00
VariableRuntimeDxeExtra.uni MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00
VariableSmm.c MdeModulePkg/Variable/RuntimeDxe: introduce MorLockInitAtEndOfDxe() hook 2017-10-10 11:25:21 +02:00
VariableSmm.inf MdeModulePkg/Variable/RuntimeDxe: delete and lock OS-created MOR variable 2017-10-10 11:25:28 +02:00
VariableSmm.uni MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00
VariableSmmExtra.uni MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00
VariableSmmRuntimeDxe.c MdeModulePkg/Variable/RuntimeDxe: move SecureBootHook() decl to new header 2017-10-10 11:25:04 +02:00
VariableSmmRuntimeDxe.inf MdeModulePkg/Variable/RuntimeDxe: move SecureBootHook() decl to new header 2017-10-10 11:25:04 +02:00
VariableSmmRuntimeDxe.uni MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00
VariableSmmRuntimeDxeExtra.uni MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00