Commit Graph

41 Commits

Author SHA1 Message Date
Laszlo Ersek 08bcaf20b1 MdePkg/DebugLib.h: add ASSERT_RETURN_ERROR()
ASSERT_EFI_ERROR() cannot be used in BASE type modules because
- the replacement text calls EFI_ERROR(),
- EFI_ERROR() is defined in "MdePkg/Include/Uefi/UefiBaseType.h",
- the inclusion of "UefiBaseType.h" is not required for BASE type modules.

While

  ASSERT (!RETURN_ERROR (StatusParameter))

would be a functional statement in BASE type modules, it would be less
convenient and less informative: ASSERT_EFI_ERROR() prints the actual
StatusParameter.

Hence add ASSERT_RETURN_ERROR(), paralleling ASSERT_EFI_ERROR(). Copy the
original macro definition and update it as follows:
- replace EFI with RETURN,
- wrap overlong lines in the comment block and in the code,
- EFI_D_ERROR is deprecated, so employ DEBUG_ERROR instead.

Cc: Liming Gao <liming.gao@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=166
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> # RVCT
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2016-10-25 10:46:07 +02:00
Zhang Lubo 6859cc8b72 MdePkg:Correct the comment for the DEBUG_NET.
Generalize the comment for the DEBUG_NET
#define DEBUG_NET  0x00004000  // SNP Driver
to Network IO Driver.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Zhang Lubo <lubo.zhang@intel.com>
Cc: Hegde Nagaraj P <nagaraj-p.hegde@hpe.com>
Cc: Subramanian Sriram <sriram-s@hpe.com>
Cc: Fu Siyuan <siyuan.fu@intel.com>
Cc: Ye Ting <ting.ye@intel.com>
Reviewed-by: Sriram Subramanian <sriram-s@hpe.com>
2016-10-09 14:30:03 +08:00
Marvin H?user 90eda6fc27 MdePkg/DebugLib: Flag post-_ASSERT() as unreachable for analyzers.
When a variable is compared to NULL as part of an ASSERT() call, the
code implies that the variable may be NULL. Certain Static Analyzers,
such as the Clang Static Analyzer, then issue false warnings for any
untested access of that pointer, even though that defeats the
intention behind ASSERT(). This patch flags the position after
_ASSERT() as unreachable for Static Analyzers to indicate that if the
variable is NULL, execution cannot pass.
As the ANALYZER-prefixed version is used, the executables will not
have any code stripped during compilation.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Marvin Haeuser <Marvin.Haeuser@outlook.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
2016-06-22 09:37:12 +08:00
Laszlo Ersek 34c1508f28 MdePkg: DebugLib: more cleanup for log level comments in lib class header
The DEBUG_POOL and DEBUG_PAGE clarifications were suggested by Leif
Lindholm.

Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Leif Lindholm <leif.lindholm@linaro.org>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2016-03-02 06:47:22 +01:00
Leif Lindholm 48d97c8b58 MdePkg: fix comment typo in DebugLib.h
The definition of DEBUG_LOADFILE was incorrectly described as "UNDI
Driver". Correct this to align with MdePkg.dec.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
2016-03-01 09:56:09 +01:00
Liming Gao 79142ebfe6 MdePkg: Correct comment typo from ECB to EBC in DebugLib.h
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18019 6f19259b-4bc3-4df7-8a09-765794883524
2015-07-16 05:43:42 +00:00
Scott Duplichan d9a55c78e5 MdePkg: Fix build fail when DDK3790 tool chain is used
Modify the preprocessor check for variadic macro support. The existing
check assumes all Microsoft compilers with major version of 14 and greater
support variadic macros. This is almost correct. An exception is the X64
compiler from DDK3790. This compiler has version 14.00.40310.41, yet does
not support variadic macros. Both VS2005 compilers have version number
14.00.50727.762 and do support variadic macros. For simplicity, this change
suppresses the use of variadic macros for all Microsoft compilers with
version 14 or smaller. If the variadic macro support needs to be restored
for VS2005, that could be done using new logic invloving _MSC_FULL_VER.


Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Scott Duplichan <scott@notabs.org>
Reviewed-by: Liming Gao <liming.gao@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17155 6f19259b-4bc3-4df7-8a09-765794883524
2015-04-10 03:00:40 +00:00
Liming Gao 6e6f5e030b MdePkg: Fix WINDDK3790 build failure
WINDDK3790 doesn't support __VA_ARGS__ macro.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16820 6f19259b-4bc3-4df7-8a09-765794883524
2015-02-10 01:59:51 +00:00
Liming Gao 5ea9d0c352 MdePkg: Add new API DebugPrintLevelEnabled() in DebugLib
This API is applied in _DEBUG_PRINT() macro for build time size optimization.
DebugLib library instance should implement this API to return the constant value.
DEBUG_PRINT() will base on __VA_ARGS__ for build time size optimization.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16787 6f19259b-4bc3-4df7-8a09-765794883524
2015-02-06 06:33:29 +00:00
lgao4 9a8e70ce6c Add new DEBUG_VERBOSE print error level.
Signed-off-by: lgao4
Reviewed-by: hhtian

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12933 6f19259b-4bc3-4df7-8a09-765794883524
2012-01-16 05:45:48 +00:00
mdkinney 2891fc8b2d Update DebugLib to provide support for "err" command in the EFI Shell to adjust the filter mask for DEBUG() messages. The "err" command provide the ability to adjust this filter mask at a global level through an EFI Variable and at the module level through a the Debug Mask Protocol. In order to support the degree of flexibility, the DebugLib needs to use library to abstract the get/set operations to the filter mask.
1) Define new DebugPrintErrorLevelLib that produces an API that DebugPrint() APIs in DebugLib implementations can use to retrieve the current mask for filtering DebugPrint() statements.
2) Add a BASE type implementation of the DebugPrintErrorLevelLib that directly accessed PcdDebugPrintErrorLevel to provide backward compatibility with the current EDK II DebugLib behavior.
3) Update description of the DebugPrint() API in the DebugLib to describe the new dependency on the DebugPrintErrorLevelLib that replaces the prior dependency in the PcdDebugPrintErrorLevel PCD.
4) Update the comments in BaseDebugLibNull to match (3).
5) Update BaseDebugLibSerialPort to use DebugPrintErrorLevelLib instead of the PcdDebugPrintErrorLevel PCD.
6) Update UefiDebugLinConOut to use DebugPrintErrorLevelLib instead of the PcdDebugPrintErrorLevel PCD.
7) Update UefiDebugLibStdErr to use DebugPrintErrorLevelLib instead of the PcdDebugPrintErrorLevel PCD.



git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11365 6f19259b-4bc3-4df7-8a09-765794883524
2011-03-10 22:12:34 +00:00
mdkinney dad8dea7c8 Fix Copyright year to 2011
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11229 6f19259b-4bc3-4df7-8a09-765794883524
2011-01-06 02:47:38 +00:00
mdkinney 5a2e7dd296 Define bits for PcdDebugPrintErrorLevel to monitor Global Coherency Domain(GCD) and memory cache setting changes.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11228 6f19259b-4bc3-4df7-8a09-765794883524
2011-01-06 02:46:35 +00:00
mdkinney 3ae55b76d9 Update comments for PI 1.2 SMM support.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11110 6f19259b-4bc3-4df7-8a09-765794883524
2010-12-01 06:17:44 +00:00
hhtian 9df063a06a Update the copyright notice format
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10403 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-23 15:46:20 +00:00
myronporter af2dc6a70b Grammatical and disclaimer changes (does not follow internal C coding stds.)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10235 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-12 22:19:12 +00:00
erictian 5ee9264acc wrap ASSERT_LOCKED macro with MDEPKG_NDEBUG.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9907 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-02 03:21:46 +00:00
eric_tian c9ec70470d Introduce a MDEPKG_NDEBUG macro to provide a method which can be used to reduce code size when compiler optimization is disabled.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9560 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-14 06:26:27 +00:00
pkandel 1a2f870c9b Second set of changes based on a review of the code comments in the Include directory for typos, grammar issues, and language clarity.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8467 6f19259b-4bc3-4df7-8a09-765794883524
2009-06-04 16:16:15 +00:00
gikidy 2281e7a9c3 Synchronize the h files with c files.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6967 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-10 06:13:43 +00:00
mdkinney 22ce9dc5b9 Change _CR() to BASE_CR() to follow naming convention
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6886 6f19259b-4bc3-4df7-8a09-765794883524
2008-12-06 01:19:56 +00:00
gikidy 3e5c323866 Synchronize function comment in
MdePkg\Library\CpuLib.h, DebugLib.h,DevicePathLib.h, DxeServicesLib.h, DxeServicesTableLib.h, ExtractGuidedSectionLib.h, HobLib.h
with the c file instance of  this functions in MdePkg.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6727 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-26 03:26:37 +00:00
gikidy d80b2f71fc Synchronize the MdePkg\Include\Library\BaseMemoryLib.h,
CacheMaintenance.h,CpuLib.h,DebugLib.h,DevicePathLib.h with the MDE_Library_Spec.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6629 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-19 10:00:35 +00:00
qwang12 285010e7dc Update doxygen comment for VarArg list parameter. "..."'s description is added.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6623 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-19 03:29:46 +00:00
jji4 50a64e5b0b Synchronization of MDE Library Spec., Mde.dec, and corresponding head files in MdePkg\Include\Library.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6544 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-14 03:45:34 +00:00
qhuang8 c759eb45e2 At bit mask for PEI/DXE dispatch
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6414 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-06 11:44:39 +00:00
qwang12 3e4495f9b8 remove DEBUG_DEPEX as it does not pass design review yet.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6375 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-04 14:17:07 +00:00
qwang12 3e1e8492a7 Add in a new debug mask bit EFI_D_DEPEX. It is used to enable the debug message related to Dependency evaluation.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6362 6f19259b-4bc3-4df7-8a09-765794883524
2008-11-03 10:58:14 +00:00
eric_tian 584125bcba code review's result.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5633 6f19259b-4bc3-4df7-8a09-765794883524
2008-08-12 07:20:10 +00:00
lgao4 eceb3a4cb9 Code scrub for the Debug library, PostCode library, Print library, and ExtractGuidedSection library.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5478 6f19259b-4bc3-4df7-8a09-765794883524
2008-07-15 11:12:43 +00:00
yshang1 fb3df220f8 Import Library Class from original MDE package. Also I added the EFI_PEI_CORE_ENTRY_POINT definition in PiPeiCis.h.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2677 6f19259b-4bc3-4df7-8a09-765794883524
2007-06-19 10:55:24 +00:00
lhauch 586cd1f1f4 Moved the MdePkg to OldMdePkg so that new code in MdePkg does not break existing builds. Also updated the SPD and FPD files UiNames
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2616 6f19259b-4bc3-4df7-8a09-765794883524
2007-06-01 14:49:55 +00:00
qhuang8 f1ad92e867 Add alias EFI_D_XXX to provide backward compatibilities.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2386 6f19259b-4bc3-4df7-8a09-765794883524
2007-02-13 11:09:29 +00:00
xli24 582510249f Make MDE package pass intel IPF compiler with /W4 /WX switched on.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2312 6f19259b-4bc3-4df7-8a09-765794883524
2007-01-25 06:05:36 +00:00
qhuang8 cd14fe3dcf 1. PostCodeLib.
Rename BasePostCodeLib80 to BasePostCodeLibPort80. 
		Fix typos in macro POST_CODE() and POST_CODE_WITH_DESCRIPTION()
	2. DebugLib
		Change the parameter type of LineNumber of DebugAssert() from “INTN” to “UINTN” to follow MWG.
		Add type cast “(EFI_GUID *)” in macro ASSERT_PROTCOL_ALREADY_INSTALLED () to follow MWG.
	3. BasePeCoffLib/
		Add library function header for all the interfaces in MWG.
		Add missing ASSERT()s.
	4. PciLib
		Add ASSERT()s in PciRead/WriteBuffer() to check cross PCI function access.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@557 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-19 07:40:23 +00:00
qhuang8 8960cdebac BaseMemoryLib (BaseMemoryLibRepStr):
Fix a logic error in SetMem64 (); The correct stride should be 8 instead of 4.
	BasePrintLib:
	Fix Printf(“%\n”) passer error.
	Fix BufferSize = 0, 1 issue
	Fix some missing ASSERT ()s
	Move MAXIMUM_VALUE_CHARACTERS from PrintLibInternal.h to PrintLib.h
	ReportStatusCodeLib:
	Add CONST modifier to some interfaces
	Modify 
	DebugLib:
	Replace some Unicode in comments.
	PeiServicesTablePointerLib
	Add ASSERT()s
	PciLib:
	Remove unnecessary ASSERT()s in PciRead/WriteBuffer()


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@496 6f19259b-4bc3-4df7-8a09-765794883524
2006-06-13 06:31:11 +00:00
qhuang8 a3657e3e7a MemoryAllocationLib: For boundary case: “AllocationSize + OverAllocationSize >= 4G”
DxeMemoryAllocationLib: Change the behavior from returning NULL to ASSERT ()
PeiMemoryAllocationLib: Add ASSERT ()
I also add ASSERT () in Pei Service AllocatePool () to catch if allocation size > 64K
DebugLib:
Header file (DebugLib.h): Fix an issue in ASSERT_PROTOCOL_ALREADY_INSTALLED(Handle, Guid).  
In contrast with LocateProtocol (), the first & second parameter type of HandleProtocol () is EFI_HANDLE & EFI_GUID respectively.
UefiLib: 
For UnicodeStringDisplayLength (CONST CHAR8 *String), return 0 if String is NULL.
BasePrintLib: 
Add missing “EFIAPI” to UnicodeValueToString() and AsciiValueToString() and move their definitions from PrintLibInternal.c to PrintLib.c.
Fix the comments error(Maximum Length TIME”)


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@275 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-25 10:13:26 +00:00
lgao4 a3a65d3856 git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@202 6f19259b-4bc3-4df7-8a09-765794883524 2006-05-19 10:39:41 +00:00
vanjeff d3d867787c Finish bug at line 324:
gBS->LocateProtocol (Handle, Guid, &Instance) error

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@201 6f19259b-4bc3-4df7-8a09-765794883524
2006-05-19 09:47:53 +00:00
vanjeff 5e3d9e4ed5 Added CONST for some sting type to follow MWG-0.51. Tracker 26 and 28
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@62 6f19259b-4bc3-4df7-8a09-765794883524
2006-04-27 07:18:32 +00:00
bbahnsen 878ddf1fc3 Initial import.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3 6f19259b-4bc3-4df7-8a09-765794883524
2006-04-21 22:54:32 +00:00