On 1 March 2016 at 15:59, Laszlo Ersek <[email protected]> wrote: > On 03/01/16 15:18, Leif Lindholm wrote: >> On Tue, Mar 01, 2016 at 02:10:37PM +0000, Ryan Harkin wrote: >>> On 1 March 2016 at 10:11, Leif Lindholm <[email protected]> wrote: >>>> On Tue, Mar 01, 2016 at 11:00:45AM +0100, Ard Biesheuvel wrote: >>>>> On 1 March 2016 at 10:58, Laszlo Ersek <[email protected]> wrote: >>>>>> Public branch: >>>>>> <https://github.com/lersek/edk2/commits/debugh_comment_fix>. >>>>>> >>>>>> Cc: Ard Biesheuvel <[email protected]> >>>>>> Cc: Jordan Justen <[email protected]> >>>>>> Cc: Leif Lindholm <[email protected]> >>>>>> Cc: Liming Gao <[email protected]> >>>>>> Cc: Michael Kinney <[email protected]> >>>>>> >>>>> >>>>> Looks ok to me >>>>> >>>>> For where you need it: >>>>> Reviewed-by: Ard Biesheuvel <[email protected]> >>>> >>>> Apart from 2/6 (which can be dropped), ditto: >>>> Reviewed-by: Leif Lindholm <[email protected]> >>>> >>> >>> To go against the grain, what's the reason for having this info >>> duplicated across multiple files as comments? >>> >>> Without knowing the reason for it's being, I'd find the delete key >>> more useful in this scenario. >> >> Mainly that it is very handy to have this information nearby rather >> than having to cross-reference against a random when you're looking to >> set individual bits in a diagnostics facilities variable... >> >> Certainly this particular snippet would be an excellent candidate to >> reduce down to being in a single .dsc with your configuration file >> consolidation plans. But until then, I think the handiness motivates >> the duplication. > > Sorry, another point that I forgot to add in my last email. > > Fixed PCDs can be controlled on the driver level in the DSC file. I use > that feature quite liberally in my everyday development tree. I set the > log mask to verbose generally, but tone it down for a handful of > drivers. This would not be covered by a single DSC include file I think > -- being able to look at the bit meanings in the individual DSCs (where > the drivers are listed) remains a plus. > > Example: > > MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf { > <PcdsFixedAtBuild> > gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8000004F > } > > NvmExpressDxe logs all BlockIo read & write calls on the EFI_D_VERBOSE > level. Which is fully valid if someone is developing or debugging > NvmExpressDxe, but for my everyday work, it's quite exceptional. > However, in general, I like to enable DEBUG_VERBOSE, so at the top > level, I set PcdDebugPrintErrorLevel to 0x8040004F. > > Same for the DXE core: it logs debug info related to the Properties > Table and the Memory Attributes Table on the DEBUG_VERBOSE log level. > That log level selection is fully appropriate (and the debug messages > are appreciated), it's just that most of the time I would't like to look > at that specific output: > > MdeModulePkg/Core/Dxe/DxeMain.inf { > <LibraryClasses> > > NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf > DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf > <PcdsFixedAtBuild> > gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x8000004F > } > > I obsess about accurate log level (log mask) arguments for DEBUG() calls > because said accuracy helps with whole-sale log filtering. But, beyond > that, I find the driver-level settability really flexible -- which is > why I liberally produce verbose debug output in my patches, without > remorse. :) > > BTW the report file generated with the build utility's "--report-file" > option is invaluable for seeing where a particular PCD value comes from, > for a particular module. > > Thanks! > Laszlo >
OK, you both seem convinced about it, I'll happily leave you to it! >> >> / >> Leif >> >>>>>> Laszlo Ersek (6): >>>>>> MdePkg: DebugLib: more cleanup for log level comments in lib class >>>>>> header >>>>>> ArmPlatformPkg/ArmVExpressPkg: sync log level comments to DebugLib.h >>>>>> ArmVirtPkg: sync log level comments to DebugLib.h >>>>>> BeagleBoardPkg: sync log level comments to DebugLib.h >>>>>> Omap35xxPkg: sync log level comments to DebugLib.h >>>>>> OvmfPkg: copy log level comments from DebugLib.h >>>>>> >>>>>> ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc | 14 +++++++------ >>>>>> ArmVirtPkg/ArmVirt.dsc.inc | 8 +++---- >>>>>> BeagleBoardPkg/BeagleBoardPkg.dsc | 16 ++++++++------ >>>>>> Omap35xxPkg/Omap35xxPkg.dsc | 16 ++++++++------ >>>>>> OvmfPkg/OvmfPkgIa32.dsc | 22 >>>>>> ++++++++++++++++++++ >>>>>> OvmfPkg/OvmfPkgIa32X64.dsc | 22 >>>>>> ++++++++++++++++++++ >>>>>> OvmfPkg/OvmfPkgX64.dsc | 22 >>>>>> ++++++++++++++++++++ >>>>>> MdePkg/Include/Library/DebugLib.h | 9 ++++---- >>>>>> 8 files changed, 103 insertions(+), 26 deletions(-) >>>>>> >>>>>> -- >>>>>> 1.8.3.1 >>>>>> >>>> _______________________________________________ >>>> edk2-devel mailing list >>>> [email protected] >>>> https://lists.01.org/mailman/listinfo/edk2-devel > _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

