Michael Kubacki and mergify[bot]
1436aea4d5
MdeModulePkg: Apply uncrustify changes
...
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3737
Apply uncrustify changes to .c/.h files in the MdeModulePkg package
Cc: Andrew Fish <afish@apple.com >
Cc: Leif Lindholm <leif@nuviainc.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn >
2021-12-07 17:24:28 +00:00
Michael Kubacki and mergify[bot]
0f127f3187
MdeModulePkg/ReportStatusCodeRouter: Update RSC Data on reallocation
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2670
The RSC router data buffer may be reallocated when the buffer is nearing
exhaustion (7/8 portion of the buffer used).
While several pointers are updated to point to the newly allocated buffer,
the RscData is not updated. This commit updates the RSC data pointer
to the same offset in the reallocated data buffer.
Cc: Hao A Wu <hao.a.wu@intel.com >
Cc: Jian J Wang <jian.j.wang@intel.com >
Cc: Kun Qin <Kun.Qin@microsoft.com >
Cc: Liming Gao <liming.gao@intel.com >
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Dandan Bi <dandan.bi@intel.com >
2020-04-21 02:20:51 +00:00
Michael Kubacki and mergify[bot]
05db94018b
MdeModulePkg/ReportStatusCodeRouter: Take HeaderSize into Consideration
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2669
Updates ReportDispatcher() to take the size in the HeaderSize field in
a EFI_STATUS_CODE_DATA element into account when walking the data buffer.
This size will cause the header size to differ from the compiled sizeof
header.
Cc: Hao A Wu <hao.a.wu@intel.com >
Cc: Jian J Wang <jian.j.wang@intel.com >
Cc: Kun Qin <Kun.Qin@microsoft.com >
Cc: Liming Gao <liming.gao@intel.com >
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Dandan Bi <dandan.bi@intel.com >
2020-04-21 02:20:51 +00:00
Michael Kubacki and mergify[bot]
1a258c7703
MdeModulePkg/ReportStatusCodeRouter: Revert end pointer on out of resources
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2665
ReportDispatcher() is called by a software module to report a status code.
The interface is generic and can be called frequently throughout the boot
under various conditions. A certain set of conditions can cause the
currently implemented algorithm for resource exhaustion to fail. A sample
scenario:
1. ReportStatusCode() is called at a TPL higher than one of the registered
status code listeners making the call to the listener deferred until
TPL is lowered.
2. Additional calls to ReportStatusCode() occur, so the data buffer
continues to expand.
3. A call to ReportStatusCode() is made from within a memory allocation
call (e.g. CoreAllocatePoolPages ()) which is protected from re-
entrancy with mPoolMemoryLock. This will cause the ReallocatePool()
call in ReportDispatcher() to fail. Because the end pointer was already
moved to account for the data size, the end pointer is now moved
beyond the buffer and invalid.
This commit saves the original end pointer value into a local variable
called "FailSafeEndPointer" which tracks a safe end pointer to revert to
in the case the allocated buffer size (CallbackEntry->EndPointer -
CallbackEntry->StatusCodeDataBuffer) is still not large enough for the
data.
Cc: Hao A Wu <hao.a.wu@intel.com >
Cc: Jian J Wang <jian.j.wang@intel.com >
Cc: Kun Qin <Kun.Qin@microsoft.com >
Cc: Liming Gao <liming.gao@intel.com >
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Dandan Bi <dandan.bi@intel.com >
2020-04-21 02:20:51 +00:00
Michael Kubacki and mergify[bot]
7a7bedce25
MdeModulePkg/ReportStatusCodeRouter: Clear RSC Data buffer if Data is NULL
...
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=1969
ReportDispatcher() may be invoked with a NULL Data argument. When TPL is
less than TPL_HIGH_LEVEL and Data is NULL, the EFI_STATUS_CODE_DATA
structure inside RscData should be cleared so listeners will not receive
data from a previous operation.
Cc: Hao A Wu <hao.a.wu@intel.com >
Cc: Jian J Wang <jian.j.wang@intel.com >
Cc: Kun Qin <Kun.Qin@microsoft.com >
Cc: Liming Gao <liming.gao@intel.com >
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com >
Reviewed-by: Dandan Bi <dandan.bi@intel.com >
2020-04-21 02:20:51 +00:00
Michael D Kinney
9d510e61fc
MdeModulePkg: Replace BSD License with BSD+Patent License
...
https://bugzilla.tianocore.org/show_bug.cgi?id=1373
Replace BSD 2-Clause License with BSD+Patent License. This change is
based on the following emails:
https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html
https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html
RFCs with detailed process for the license change:
V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html
V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html
V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com >
Reviewed-by: Hao Wu <hao.a.wu@intel.com >
Reviewed-by: Jian J Wang <jian.j.wang@intel.com >
2019-04-09 10:58:08 -07:00
Liming Gao
d1102dba72
MdeModulePkg: Clean up source files
...
1. Do not use tab characters
2. No trailing white space in one line
3. All files must end with CRLF
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Liming Gao <liming.gao@intel.com >
Reviewed-by: Star Zeng <star.zeng@intel.com >
2018-06-28 11:19:45 +08:00
li-elvin
04bbf1f3f0
When status code handler unregister itself, status code dispatch in status code router driver will have problem to get next handler. Fixed the issue in status code router.
...
Signed-off-by: li-elvin
Reviewed-by: lgao4
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12068 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-01 07:39:02 +00:00
li-elvin
4e03ff80a1
If RSC_HANDLER_CALLBACK_ENTRY is allocated as boot service memory, the status code handler cannot work in runtime (after exit boot service). It should be allocated in runtime memory.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11274 6f19259b-4bc3-4df7-8a09-765794883524
2011-01-26 07:57:13 +00:00
hhtian
e5eed7d364
Update the copyright notice format
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10418 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-24 09:33:45 +00:00
xli24
43e332071d
Refine type cast.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9574 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-17 02:42:22 +00:00
xli24
cfc2ba61e4
Fix the issue that callback function with TPL lower than TPL_HIGH_LEVEL cannot handle status code at TPL_HIGH_LEVEL.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9568 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-16 04:50:57 +00:00
xli24
25126a0530
Enable Report Status Code Router introduced in PI 1.2 for PEI and DXE.
...
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9388 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-03 02:39:10 +00:00