VirtualBox

Changeset 55988 in vbox


Ignore:
Timestamp:
May 20, 2015 11:24:44 PM (9 years ago)
Author:
vboxsync
Message:

iprt/log.h,SUPDrv: Replaced the 'personal' logging groups with 6 more generic logging levels (7 thru 12) and a 'Warn' level. The 'Warn' level is enabled by 'group.e' together with level 1 logging. Modified the new RTLog[Rel][Get]DefaultInstanceEx functions to only take one 32-bit parameter to minimize call setup time and size. Major support driver version bump. LogAleksey=Log7, LogBird=Log8, LogSunlover=Log9, none of the other personal macros was used. Log*Warning got renamed to Log1*Warning so as to not confuse it with the LogWarn/LogRelWarn macros.

Location:
trunk
Files:
31 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/log.h

    r55980 r55988  
    390390/**
    391391 * Logger per group flags.
     392 *
     393 * @remarks We only use the lower 16 bits here.  We'll be combining it with the
     394 *          group number in a few places.
    392395 */
    393396typedef enum RTLOGGRPFLAGS
    394397{
    395398    /** Enabled. */
    396     RTLOGGRPFLAGS_ENABLED      = 0x00000001,
     399    RTLOGGRPFLAGS_ENABLED      = 0x0001,
    397400    /** Level 1 logging. */
    398     RTLOGGRPFLAGS_LEVEL_1      = 0x00000002,
     401    RTLOGGRPFLAGS_LEVEL_1      = 0x0002,
    399402    /** Level 2 logging. */
    400     RTLOGGRPFLAGS_LEVEL_2      = 0x00000004,
     403    RTLOGGRPFLAGS_LEVEL_2      = 0x0004,
    401404    /** Level 3 logging. */
    402     RTLOGGRPFLAGS_LEVEL_3      = 0x00000008,
     405    RTLOGGRPFLAGS_LEVEL_3      = 0x0008,
    403406    /** Level 4 logging. */
    404     RTLOGGRPFLAGS_LEVEL_4      = 0x00000010,
     407    RTLOGGRPFLAGS_LEVEL_4      = 0x0010,
    405408    /** Level 5 logging. */
    406     RTLOGGRPFLAGS_LEVEL_5      = 0x00000020,
     409    RTLOGGRPFLAGS_LEVEL_5      = 0x0020,
    407410    /** Level 6 logging. */
    408     RTLOGGRPFLAGS_LEVEL_6      = 0x00000040,
     411    RTLOGGRPFLAGS_LEVEL_6      = 0x0040,
     412    /** Level 7 logging. */
     413    RTLOGGRPFLAGS_LEVEL_7      = 0x0080,
     414    /** Level 8 logging. */
     415    RTLOGGRPFLAGS_LEVEL_8      = 0x0100,
     416    /** Level 9 logging. */
     417    RTLOGGRPFLAGS_LEVEL_9      = 0x0200,
     418    /** Level 10 logging. */
     419    RTLOGGRPFLAGS_LEVEL_10     = 0x0400,
     420    /** Level 11 logging. */
     421    RTLOGGRPFLAGS_LEVEL_11     = 0x0800,
     422    /** Level 12 logging. */
     423    RTLOGGRPFLAGS_LEVEL_12     = 0x1000,
    409424    /** Flow logging. */
    410     RTLOGGRPFLAGS_FLOW         = 0x00000080,
     425    RTLOGGRPFLAGS_FLOW         = 0x2000,
     426    /** Warnings logging. */
     427    RTLOGGRPFLAGS_WARN         = 0x4000,
     428
    411429    /** Restrict the number of log entries. */
    412     RTLOGGRPFLAGS_RESTRICT     = 0x00000100,
    413 
    414     /** Lelik logging. */
    415     RTLOGGRPFLAGS_LELIK        = 0x00010000,
    416     /** Michael logging. */
    417     RTLOGGRPFLAGS_MICHAEL      = 0x00020000,
    418     /** sunlover logging. */
    419     RTLOGGRPFLAGS_SUNLOVER     = 0x00040000,
    420     /** Achim logging. */
    421     RTLOGGRPFLAGS_ACHIM        = 0x00080000,
    422     /** Sander logging. */
    423     RTLOGGRPFLAGS_SANDER       = 0x00100000,
    424     /** Klaus logging. */
    425     RTLOGGRPFLAGS_KLAUS        = 0x00200000,
    426     /** Frank logging. */
    427     RTLOGGRPFLAGS_FRANK        = 0x00400000,
    428     /** bird logging. */
    429     RTLOGGRPFLAGS_BIRD         = 0x00800000,
    430     /** aleksey logging. */
    431     RTLOGGRPFLAGS_ALEKSEY      = 0x01000000,
    432     /** dj logging. */
    433     RTLOGGRPFLAGS_DJ           = 0x02000000,
    434     /** NoName logging. */
    435     RTLOGGRPFLAGS_NONAME       = 0x04000000
     430    RTLOGGRPFLAGS_RESTRICT     = 0x40000000,
     431    /** Blow up the type. */
     432    RTLOGGRPFLAGS_32BIT_HACK   = 0x7fffffff
    436433} RTLOGGRPFLAGS;
    437434
     
    511508
    512509
     510/** @name Macros for checking whether a log level is enabled.
     511 * @{ */
     512/** @def LogIsItEnabled
     513 * Checks whether the specified logging group is enabled or not.
     514 */
     515#ifdef LOG_ENABLED
     516# define LogIsItEnabled(a_fFlags, a_iGroup) ( RTLogDefaultInstanceEx(RT_MAKE_U32(a_fFlags, a_iGroup)) != NULL )
     517#else
     518# define LogIsItEnabled(a_fFlags, a_iGroup) (false)
     519#endif
     520
     521/** @def LogIsEnabled
     522 * Checks whether level 1 logging is enabled.
     523 */
     524#define LogIsEnabled()      LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP)
     525
     526/** @def LogIs2Enabled
     527 * Checks whether level 2 logging is enabled.
     528 */
     529#define LogIs2Enabled()     LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_2, LOG_GROUP)
     530
     531/** @def LogIs3Enabled
     532 * Checks whether level 3 logging is enabled.
     533 */
     534#define LogIs3Enabled()     LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_3, LOG_GROUP)
     535
     536/** @def LogIs4Enabled
     537 * Checks whether level 4 logging is enabled.
     538 */
     539#define LogIs4Enabled()     LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_4, LOG_GROUP)
     540
     541/** @def LogIs5Enabled
     542 * Checks whether level 5 logging is enabled.
     543 */
     544#define LogIs5Enabled()     LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_5, LOG_GROUP)
     545
     546/** @def LogIs6Enabled
     547 * Checks whether level 6 logging is enabled.
     548 */
     549#define LogIs6Enabled()     LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_6, LOG_GROUP)
     550
     551/** @def LogIs7Enabled
     552 * Checks whether level 7 logging is enabled.
     553 */
     554#define LogIs7Enabled()     LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_7, LOG_GROUP)
     555
     556/** @def LogIs8Enabled
     557 * Checks whether level 8 logging is enabled.
     558 */
     559#define LogIs8Enabled()     LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_8, LOG_GROUP)
     560
     561/** @def LogIs9Enabled
     562 * Checks whether level 9 logging is enabled.
     563 */
     564#define LogIs9Enabled()     LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_9, LOG_GROUP)
     565
     566/** @def LogIs10Enabled
     567 * Checks whether level 10 logging is enabled.
     568 */
     569#define LogIs10Enabled()    LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_10, LOG_GROUP)
     570
     571/** @def LogIs11Enabled
     572 * Checks whether level 11 logging is enabled.
     573 */
     574#define LogIs11Enabled()    LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_11, LOG_GROUP)
     575
     576/** @def LogIs12Enabled
     577 * Checks whether level 12 logging is enabled.
     578 */
     579#define LogIs12Enabled()    LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_12, LOG_GROUP)
     580
     581/** @def LogIsFlowEnabled
     582 * Checks whether execution flow logging is enabled.
     583 */
     584#define LogIsFlowEnabled()  LogIsItEnabled(RTLOGGRPFLAGS_FLOW, LOG_GROUP)
     585
     586/** @def LogIsWarnEnabled
     587 * Checks whether execution flow logging is enabled.
     588 */
     589#define LogIsWarnEnabled()  LogIsItEnabled(RTLOGGRPFLAGS_WARN, LOG_GROUP)
     590/** @} */
     591
     592
    513593/** @def LogIt
    514594 * Write to specific logger if group enabled.
     
    520600   do \
    521601   { \
    522         register PRTLOGGER LogIt_pLogger = RTLogDefaultInstanceEx(a_fFlags, a_iGroup); \
     602        register PRTLOGGER LogIt_pLogger = RTLogDefaultInstanceEx(RT_MAKE_U32(a_fFlags, a_iGroup)); \
    523603        if (RT_LIKELY(!LogIt_pLogger)) \
    524604        {   /* likely */ } \
     
    534614    do \
    535615    { \
    536         register PRTLOGGER LogIt_pLogger = RTLogDefaultInstanceEx(a_fFlags, a_iGroup); \
     616        register PRTLOGGER LogIt_pLogger = RTLogDefaultInstanceEx(RT_MAKE_U32(a_fFlags, a_iGroup)); \
    537617        if (RT_LIKELY(!LogIt_pLogger)) \
    538618        {   /* likely */ } \
     
    545625    do \
    546626    { \
    547         register PRTLOGGER LogIt_pLogger = RTLogDefaultInstanceEx(0, UINT32_MAX); \
     627        register PRTLOGGER LogIt_pLogger = RTLogDefaultInstanceEx(RT_MAKE_U32(0, UINT16_MAX)); \
    548628        if (LogIt_pLogger) \
    549629            LogIt_pLogger->pfnLogger fmtargs; \
     
    561641
    562642
     643/** @name Basic logging macros
     644 * @{ */
    563645/** @def Log
    564646 * Level 1 logging that works regardless of the group settings.
     
    596678#define Log6(a)         LogIt(RTLOGGRPFLAGS_LEVEL_6,  LOG_GROUP, a)
    597679
     680/** @def Log7
     681 * Level 7 logging.
     682 */
     683#define Log7(a)         LogIt(RTLOGGRPFLAGS_LEVEL_7,  LOG_GROUP, a)
     684
     685/** @def Log8
     686 * Level 8 logging.
     687 */
     688#define Log8(a)         LogIt(RTLOGGRPFLAGS_LEVEL_8,  LOG_GROUP, a)
     689
     690/** @def Log9
     691 * Level 9 logging.
     692 */
     693#define Log9(a)         LogIt(RTLOGGRPFLAGS_LEVEL_9,  LOG_GROUP, a)
     694
     695/** @def Log10
     696 * Level 10 logging.
     697 */
     698#define Log10(a)        LogIt(RTLOGGRPFLAGS_LEVEL_10, LOG_GROUP, a)
     699
     700/** @def Log11
     701 * Level 11 logging.
     702 */
     703#define Log11(a)        LogIt(RTLOGGRPFLAGS_LEVEL_11, LOG_GROUP, a)
     704
     705/** @def Log12
     706 * Level 12 logging.
     707 */
     708#define Log12(a)        LogIt(RTLOGGRPFLAGS_LEVEL_12,  LOG_GROUP, a)
     709
    598710/** @def LogFlow
    599711 * Logging of execution flow.
    600712 */
    601 #define LogFlow(a)      LogIt(RTLOGGRPFLAGS_FLOW,     LOG_GROUP, a)
    602 
    603 /** @def LogLelik
    604  *  lelik logging.
    605  */
    606 #define LogLelik(a)     LogIt(RTLOGGRPFLAGS_LELIK,    LOG_GROUP, a)
    607 
    608 
    609 /** @def LogMichael
    610  * michael logging.
    611  */
    612 #define LogMichael(a)   LogIt(RTLOGGRPFLAGS_MICHAEL,  LOG_GROUP, a)
    613 
    614 /** @def LogSunlover
    615  * sunlover logging.
    616  */
    617 #define LogSunlover(a)  LogIt(RTLOGGRPFLAGS_SUNLOVER, LOG_GROUP, a)
    618 
    619 /** @def LogAchim
    620  * Achim logging.
    621  */
    622 #define LogAchim(a)     LogIt(RTLOGGRPFLAGS_ACHIM,    LOG_GROUP, a)
    623 
    624 /** @def LogSander
    625  * Sander logging.
    626  */
    627 #define LogSander(a)    LogIt(RTLOGGRPFLAGS_SANDER,   LOG_GROUP, a)
    628 
    629 /** @def LogKlaus
    630  *  klaus logging.
    631  */
    632 #define LogKlaus(a)     LogIt(RTLOGGRPFLAGS_KLAUS,    LOG_GROUP, a)
    633 
    634 /** @def LogFrank
    635  *  frank logging.
    636  */
    637 #define LogFrank(a)     LogIt(RTLOGGRPFLAGS_FRANK,    LOG_GROUP, a)
    638 
    639 /** @def LogBird
    640  * bird logging.
    641  */
    642 #define LogBird(a)      LogIt(RTLOGGRPFLAGS_BIRD,     LOG_GROUP, a)
    643 
    644 /** @def LogAleksey
    645  * aleksey logging.
    646  */
    647 #define LogAleksey(a)   LogIt(RTLOGGRPFLAGS_ALEKSEY,  LOG_GROUP, a)
    648 
    649 /** @def LogDJ
    650  * dj logging.
    651  */
    652 #define LogDJ(a)        LogIt(RTLOGGRPFLAGS_DJ,  LOG_GROUP, a)
    653 
    654 /** @def LogNoName
    655  * NoName logging.
    656  */
    657 #define LogNoName(a)    LogIt(RTLOGGRPFLAGS_NONAME,   LOG_GROUP, a)
    658 
    659 /** @def LogWarning
    660  * The same as Log(), but prepents a <tt>"WARNING! "</tt> string to the message.
    661  *
    662  * @param   a   Custom log message in format <tt>("string\n" [, args])</tt>.
    663  */
    664 #if defined(LOG_USE_C99)
    665 # define LogWarning(a) \
    666     _LogIt(RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, "WARNING! %M", _LogRemoveParentheseis a )
    667 #else
    668 # define LogWarning(a) \
    669     do { Log(("WARNING! ")); Log(a); } while (0)
    670 #endif
    671 
    672 /** @def LogTrace
    673  * Macro to trace the execution flow: logs the file name, line number and
    674  * function name. Can be easily searched for in log files using the
    675  * ">>>>>" pattern (prepended to the beginning of each line).
    676  */
    677 #define LogTrace() \
    678     LogFlow((">>>>> %s (%d): " LOG_FN_FMT "\n", __FILE__, __LINE__, __PRETTY_FUNCTION__))
    679 
    680 /** @def LogTraceMsg
    681  * The same as LogTrace but logs a custom log message right after the trace line.
    682  *
    683  * @param   a   Custom log message in format <tt>("string\n" [, args])</tt>.
    684  */
    685 #ifdef LOG_USE_C99
    686 # define LogTraceMsg(a) \
    687     _LogIt(RTLOGGRPFLAGS_FLOW, LOG_GROUP, ">>>>> %s (%d): " LOG_FN_FMT ": %M", __FILE__, __LINE__, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    688 #else
    689 # define LogTraceMsg(a) \
    690     do {  LogFlow((">>>>> %s (%d): " LOG_FN_FMT ": ", __FILE__, __LINE__, __PRETTY_FUNCTION__)); LogFlow(a); } while (0)
    691 #endif
    692 
     713#define LogFlow(a)      LogIt(RTLOGGRPFLAGS_FLOW,      LOG_GROUP, a)
     714
     715/** @def LogWarn
     716 * Logging of warnings.
     717 */
     718#define LogWarn(a)      LogIt(RTLOGGRPFLAGS_WARN,      LOG_GROUP, a)
     719/** @} */
     720
     721
     722/** @name Logging macros prefixing the current function name.
     723 * @{ */
    693724/** @def LogFunc
    694725 * Level 1 logging inside C/C++ functions.
     
    700731 */
    701732#ifdef LOG_USE_C99
    702 # define LogFunc(a) \
    703     _LogIt(RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    704 #else
    705 # define LogFunc(a) \
    706     do { Log((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log(a); } while (0)
     733# define LogFunc(a)   _LogIt(RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     734#else
     735# define LogFunc(a)   do { Log((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log(a); } while (0)
    707736#endif
    708737
     
    716745 */
    717746#ifdef LOG_USE_C99
    718 # define Log2Func(a) \
    719     _LogIt(RTLOGGRPFLAGS_LEVEL_2, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    720 #else
    721 # define Log2Func(a) \
    722     do { Log2((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log2(a); } while (0)
     747# define Log2Func(a)  _LogIt(RTLOGGRPFLAGS_LEVEL_2, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     748#else
     749# define Log2Func(a)  do { Log2((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log2(a); } while (0)
    723750#endif
    724751
     
    732759 */
    733760#ifdef LOG_USE_C99
    734 # define Log3Func(a) \
    735     _LogIt(RTLOGGRPFLAGS_LEVEL_3, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    736 #else
    737 # define Log3Func(a) \
    738     do { Log3((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log3(a); } while (0)
     761# define Log3Func(a)  _LogIt(RTLOGGRPFLAGS_LEVEL_3, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     762#else
     763# define Log3Func(a)  do { Log3((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log3(a); } while (0)
    739764#endif
    740765
     
    748773 */
    749774#ifdef LOG_USE_C99
    750 # define Log4Func(a) \
    751     _LogIt(RTLOGGRPFLAGS_LEVEL_4, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    752 #else
    753 # define Log4Func(a) \
    754     do { Log4((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log4(a); } while (0)
     775# define Log4Func(a)  _LogIt(RTLOGGRPFLAGS_LEVEL_4, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     776#else
     777# define Log4Func(a)  do { Log4((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log4(a); } while (0)
    755778#endif
    756779
     
    764787 */
    765788#ifdef LOG_USE_C99
    766 # define Log5Func(a) \
    767     _LogIt(RTLOGGRPFLAGS_LEVEL_5, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    768 #else
    769 # define Log5Func(a) \
    770     do { Log5((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log5(a); } while (0)
     789# define Log5Func(a)  _LogIt(RTLOGGRPFLAGS_LEVEL_5, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     790#else
     791# define Log5Func(a)  do { Log5((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log5(a); } while (0)
    771792#endif
    772793
     
    780801 */
    781802#ifdef LOG_USE_C99
    782 # define Log6Func(a) \
    783     _LogIt(RTLOGGRPFLAGS_LEVEL_6, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    784 #else
    785 # define Log6Func(a) \
    786     do { Log6((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log6(a); } while (0)
    787 #endif
     803# define Log6Func(a)  _LogIt(RTLOGGRPFLAGS_LEVEL_6, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     804#else
     805# define Log6Func(a)  do { Log6((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log6(a); } while (0)
     806#endif
     807
     808/** @def Log7Func
     809 * Level 7 logging inside C/C++ functions.
     810 *
     811 * Prepends the given log message with the function name followed by a
     812 * semicolon and space.
     813 *
     814 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     815 */
     816#ifdef LOG_USE_C99
     817# define Log7Func(a)  _LogIt(RTLOGGRPFLAGS_LEVEL_7, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     818#else
     819# define Log7Func(a)  do { Log7((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log7(a); } while (0)
     820#endif
     821
     822/** @def Log8Func
     823 * Level 8 logging inside C/C++ functions.
     824 *
     825 * Prepends the given log message with the function name followed by a
     826 * semicolon and space.
     827 *
     828 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     829 */
     830#ifdef LOG_USE_C99
     831# define Log8Func(a)  _LogIt(RTLOGGRPFLAGS_LEVEL_8, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     832#else
     833# define Log8Func(a)  do { Log8((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log8(a); } while (0)
     834#endif
     835
     836/** @def Log9Func
     837 * Level 9 logging inside C/C++ functions.
     838 *
     839 * Prepends the given log message with the function name followed by a
     840 * semicolon and space.
     841 *
     842 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     843 */
     844#ifdef LOG_USE_C99
     845# define Log9Func(a)  _LogIt(RTLOGGRPFLAGS_LEVEL_9, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     846#else
     847# define Log9Func(a)  do { Log9((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log9(a); } while (0)
     848#endif
     849
     850/** @def Log10Func
     851 * Level 10 logging inside C/C++ functions.
     852 *
     853 * Prepends the given log message with the function name followed by a
     854 * semicolon and space.
     855 *
     856 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     857 */
     858#ifdef LOG_USE_C99
     859# define Log10Func(a) _LogIt(RTLOGGRPFLAGS_LEVEL_10, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     860#else
     861# define Log10Func(a) do { Log10((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log10(a); } while (0)
     862#endif
     863
     864/** @def Log11Func
     865 * Level 11 logging inside C/C++ functions.
     866 *
     867 * Prepends the given log message with the function name followed by a
     868 * semicolon and space.
     869 *
     870 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     871 */
     872#ifdef LOG_USE_C99
     873# define Log11Func(a) _LogIt(RTLOGGRPFLAGS_LEVEL_11, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     874#else
     875# define Log11Func(a) do { Log11((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log11(a); } while (0)
     876#endif
     877
     878/** @def Log12Func
     879 * Level 12 logging inside C/C++ functions.
     880 *
     881 * Prepends the given log message with the function name followed by a
     882 * semicolon and space.
     883 *
     884 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     885 */
     886#ifdef LOG_USE_C99
     887# define Log12Func(a) _LogIt(RTLOGGRPFLAGS_LEVEL_12, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     888#else
     889# define Log12Func(a) do { Log12((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); Log12(a); } while (0)
     890#endif
     891
     892/** @def LogFlowFunc
     893 * Macro to log the execution flow inside C/C++ functions.
     894 *
     895 * Prepends the given log message with the function name followed by
     896 * a semicolon and space.
     897 *
     898 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     899 */
     900#ifdef LOG_USE_C99
     901# define LogFlowFunc(a) \
     902    _LogIt(RTLOGGRPFLAGS_FLOW, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     903#else
     904# define LogFlowFunc(a) \
     905    do { LogFlow((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); LogFlow(a); } while (0)
     906#endif
     907
     908/** @def LogWarnFunc
     909 * Macro to log a warning inside C/C++ functions.
     910 *
     911 * Prepends the given log message with the function name followed by
     912 * a semicolon and space.
     913 *
     914 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     915 */
     916#ifdef LOG_USE_C99
     917# define LogWarnFunc(a) \
     918    _LogIt(RTLOGGRPFLAGS_WARN, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     919#else
     920# define LogWarnFunc(a) \
     921    do { LogFlow((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); LogFlow(a); } while (0)
     922#endif
     923/** @} */
     924
     925
     926/** @name Logging macros prefixing the this pointer value and method name.
     927 * @{ */
    788928
    789929/** @def LogThisFunc
    790  * The same as LogFunc but for class functions (methods): the resulting log
    791  * line is additionally prepended with a hex value of |this| pointer.
    792  *
     930 * Level 1 logging inside a C++ non-static method, with object pointer and
     931 * method name prefixed to the given message.
    793932 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
    794933 */
     
    797936    _LogIt(RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    798937#else
    799 # define LogThisFunc(a) \
    800     do { Log(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); Log(a); } while (0)
    801 #endif
    802 
    803 /** @def LogFlowFunc
    804  * Macro to log the execution flow inside C/C++ functions.
    805  *
    806  * Prepends the given log message with the function name followed by
    807  * a semicolon and space.
    808  *
    809  * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
    810  */
    811 #ifdef LOG_USE_C99
    812 # define LogFlowFunc(a) \
    813     _LogIt(RTLOGGRPFLAGS_FLOW, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    814 #else
    815 # define LogFlowFunc(a) \
    816     do { LogFlow((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); LogFlow(a); } while (0)
     938# define LogThisFunc(a) do { Log(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); Log(a); } while (0)
     939#endif
     940
     941/** @def Log2ThisFunc
     942 * Level 2 logging inside a C++ non-static method, with object pointer and
     943 * method name prefixed to the given message.
     944 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     945 */
     946#ifdef LOG_USE_C99
     947# define Log2ThisFunc(a) \
     948    _LogIt(RTLOGGRPFLAGS_LEVEL_2, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     949#else
     950# define Log2ThisFunc(a) do { Log2(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); Log2(a); } while (0)
     951#endif
     952
     953/** @def Log3ThisFunc
     954 * Level 3 logging inside a C++ non-static method, with object pointer and
     955 * method name prefixed to the given message.
     956 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     957 */
     958#ifdef LOG_USE_C99
     959# define Log3ThisFunc(a) \
     960    _LogIt(RTLOGGRPFLAGS_LEVEL_3, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     961#else
     962# define Log3ThisFunc(a) do { Log3(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); Log3(a); } while (0)
     963#endif
     964
     965/** @def Log4ThisFunc
     966 * Level 4 logging inside a C++ non-static method, with object pointer and
     967 * method name prefixed to the given message.
     968 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     969 */
     970#ifdef LOG_USE_C99
     971# define Log4ThisFunc(a) \
     972    _LogIt(RTLOGGRPFLAGS_LEVEL_4, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     973#else
     974# define Log4ThisFunc(a) do { Log4(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); Log4(a); } while (0)
     975#endif
     976
     977/** @def Log5ThisFunc
     978 * Level 5 logging inside a C++ non-static method, with object pointer and
     979 * method name prefixed to the given message.
     980 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     981 */
     982#ifdef LOG_USE_C99
     983# define Log5ThisFunc(a) \
     984    _LogIt(RTLOGGRPFLAGS_LEVEL_5, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     985#else
     986# define Log5ThisFunc(a) do { Log5(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); Log5(a); } while (0)
     987#endif
     988
     989/** @def Log6ThisFunc
     990 * Level 6 logging inside a C++ non-static method, with object pointer and
     991 * method name prefixed to the given message.
     992 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     993 */
     994#ifdef LOG_USE_C99
     995# define Log6ThisFunc(a) \
     996    _LogIt(RTLOGGRPFLAGS_LEVEL_6, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     997#else
     998# define Log6ThisFunc(a) do { Log6(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); Log6(a); } while (0)
     999#endif
     1000
     1001/** @def Log7ThisFunc
     1002 * Level 7 logging inside a C++ non-static method, with object pointer and
     1003 * method name prefixed to the given message.
     1004 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     1005 */
     1006#ifdef LOG_USE_C99
     1007# define Log7ThisFunc(a) \
     1008    _LogIt(RTLOGGRPFLAGS_LEVEL_7, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     1009#else
     1010# define Log7ThisFunc(a) do { Log7(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); Log7(a); } while (0)
     1011#endif
     1012
     1013/** @def Log8ThisFunc
     1014 * Level 8 logging inside a C++ non-static method, with object pointer and
     1015 * method name prefixed to the given message.
     1016 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     1017 */
     1018#ifdef LOG_USE_C99
     1019# define Log8ThisFunc(a) \
     1020    _LogIt(RTLOGGRPFLAGS_LEVEL_8, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     1021#else
     1022# define Log8ThisFunc(a) do { Log8(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); Log8(a); } while (0)
     1023#endif
     1024
     1025/** @def Log9ThisFunc
     1026 * Level 9 logging inside a C++ non-static method, with object pointer and
     1027 * method name prefixed to the given message.
     1028 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     1029 */
     1030#ifdef LOG_USE_C99
     1031# define Log9ThisFunc(a) \
     1032    _LogIt(RTLOGGRPFLAGS_LEVEL_9, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     1033#else
     1034# define Log9ThisFunc(a) do { Log9(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); Log9(a); } while (0)
     1035#endif
     1036
     1037/** @def Log10ThisFunc
     1038 * Level 10 logging inside a C++ non-static method, with object pointer and
     1039 * method name prefixed to the given message.
     1040 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     1041 */
     1042#ifdef LOG_USE_C99
     1043# define Log10ThisFunc(a) \
     1044    _LogIt(RTLOGGRPFLAGS_LEVEL_10, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     1045#else
     1046# define Log10ThisFunc(a) do { Log10(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); Log10(a); } while (0)
     1047#endif
     1048
     1049/** @def Log11ThisFunc
     1050 * Level 11 logging inside a C++ non-static method, with object pointer and
     1051 * method name prefixed to the given message.
     1052 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     1053 */
     1054#ifdef LOG_USE_C99
     1055# define Log11ThisFunc(a) \
     1056    _LogIt(RTLOGGRPFLAGS_LEVEL_11, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     1057#else
     1058# define Log11ThisFunc(a) do { Log11(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); Log11(a); } while (0)
     1059#endif
     1060
     1061/** @def Log12ThisFunc
     1062 * Level 12 logging inside a C++ non-static method, with object pointer and
     1063 * method name prefixed to the given message.
     1064 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     1065 */
     1066#ifdef LOG_USE_C99
     1067# define Log12ThisFunc(a) \
     1068    _LogIt(RTLOGGRPFLAGS_LEVEL_12, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     1069#else
     1070# define Log12ThisFunc(a) do { Log12(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); Log12(a); } while (0)
     1071#endif
     1072
     1073/** @def LogFlowThisFunc
     1074 * Flow level logging inside a C++ non-static method, with object pointer and
     1075 * method name prefixed to the given message.
     1076 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     1077 */
     1078#ifdef LOG_USE_C99
     1079# define LogFlowThisFunc(a) \
     1080    _LogIt(RTLOGGRPFLAGS_FLOW, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     1081#else
     1082# define LogFlowThisFunc(a) do { LogFlow(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); LogFlow(a); } while (0)
     1083#endif
     1084
     1085/** @def LogWarnThisFunc
     1086 * Warning level logging inside a C++ non-static method, with object pointer and
     1087 * method name prefixed to the given message.
     1088 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     1089 */
     1090#ifdef LOG_USE_C99
     1091# define LogWarnThisFunc(a) \
     1092    _LogIt(RTLOGGRPFLAGS_WARN, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     1093#else
     1094# define LogWarnThisFunc(a) do { LogWarn(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); LogWarn(a); } while (0)
     1095#endif
     1096/** @} */
     1097
     1098
     1099/** @name Misc Logging Macros
     1100 * @{ */
     1101
     1102/** @def LogWarning1
     1103 * The same as Log(), but prepents a <tt>"WARNING! "</tt> string to the message.
     1104 *
     1105 * @param   a   Custom log message in format <tt>("string\n" [, args])</tt>.
     1106 */
     1107#if defined(LOG_USE_C99)
     1108# define Log1Warning(a)     _LogIt(RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, "WARNING! %M", _LogRemoveParentheseis a )
     1109#else
     1110# define Log1Warning(a)     do { Log(("WARNING! ")); Log(a); } while (0)
    8171111#endif
    8181112
     
    8231117 */
    8241118#ifdef LOG_USE_C99
    825 # define LogWarningFunc(a) \
     1119# define Log1WarningFunc(a) \
    8261120    _LogIt(RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, LOG_FN_FMT ": WARNING! %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    8271121#else
    828 # define LogWarningFunc(a) \
     1122# define Log1WarningFunc(a) \
    8291123    do { Log((LOG_FN_FMT ": WARNING! ", __PRETTY_FUNCTION__)); Log(a); } while (0)
    830 #endif
    831 
    832 /** @def LogFlowThisFunc
    833  * The same as LogFlowFunc but for class functions (methods): the resulting log
    834  * line is additionally prepended with a hex value of |this| pointer.
    835  *
    836  * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
    837  */
    838 #ifdef LOG_USE_C99
    839 # define LogFlowThisFunc(a) \
    840     _LogIt(RTLOGGRPFLAGS_FLOW, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    841 #else
    842 # define LogFlowThisFunc(a) \
    843     do { LogFlow(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); LogFlow(a); } while (0)
    8441124#endif
    8451125
     
    8511131 */
    8521132#ifdef LOG_USE_C99
    853 # define LogWarningThisFunc(a) \
     1133# define Log1WarningThisFunc(a) \
    8541134    _LogIt(RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, "{%p} " LOG_FN_FMT ": WARNING! %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    8551135#else
    856 # define LogWarningThisFunc(a) \
     1136# define Log1WarningThisFunc(a) \
    8571137    do { Log(("{%p} " LOG_FN_FMT ": WARNING! ", this, __PRETTY_FUNCTION__)); Log(a); } while (0)
    8581138#endif
     1139
    8591140
    8601141/** Shortcut to |LogFlowFunc ("ENTER\n")|, marks the beginnig of the function. */
     
    8651146
    8661147/** Shortcut to |LogFlowFunc ("LEAVE: %Rrc\n")|, marks the end of the function. */
    867 #define LogFlowFuncLeaveRC(rc)      LogFlowFunc(("LEAVE: %Rrc\n", (rc)))
     1148#define LogFlowFuncLeaveRC(rc)  LogFlowFunc(("LEAVE: %Rrc\n", (rc)))
    8681149
    8691150/** Shortcut to |LogFlowThisFunc ("ENTER\n")|, marks the beginnig of the function. */
     
    8721153/** Shortcut to |LogFlowThisFunc ("LEAVE\n")|, marks the end of the function. */
    8731154#define LogFlowThisFuncLeave()  LogFlowThisFunc(("LEAVE\n"))
     1155
    8741156
    8751157/** @def LogObjRefCnt
     
    8801162 *              IUnknown subclass or simply define COM-style AddRef() and
    8811163 *              Release() methods)
    882  *
    883  * @note Use it only for temporary debugging. It leaves dummy code even if
    884  *       logging is disabled.
    8851164 */
    8861165#define LogObjRefCnt(pObj) \
    8871166    do { \
    888         int refc = (pObj)->AddRef(); \
    889         LogFlow((#pObj "{%p}.refCnt=%d\n", (pObj), refc - 1)); \
    890         (pObj)->Release(); \
     1167        if (LogIsFlowEnabled()) \
     1168        { \
     1169            int cRefsForLog = (pObj)->AddRef(); \
     1170            LogFlow((#pObj "{%p}.refCnt=%d\n", (pObj), cRefsForLog - 1)); \
     1171            (pObj)->Release(); \
     1172        } \
    8911173    } while (0)
    892 
    893 
    894 /** @def LogIsItEnabled
    895  * Checks whether the specified logging group is enabled or not.
    896  */
    897 #ifdef LOG_ENABLED
    898 # define LogIsItEnabled(a_fFlags, a_iGroup) \
    899     LogIsItEnabledInternal((unsigned)(a_iGroup), (unsigned)(a_fFlags))
    900 #else
    901 # define LogIsItEnabled(a_fFlags, a_iGroup) (false)
    902 #endif
    903 
    904 /** @def LogIsEnabled
    905  * Checks whether level 1 logging is enabled.
    906  */
    907 #define LogIsEnabled()      LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP)
    908 
    909 /** @def LogIs2Enabled
    910  * Checks whether level 2 logging is enabled.
    911  */
    912 #define LogIs2Enabled()     LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_2, LOG_GROUP)
    913 
    914 /** @def LogIs3Enabled
    915  * Checks whether level 3 logging is enabled.
    916  */
    917 #define LogIs3Enabled()     LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_3, LOG_GROUP)
    918 
    919 /** @def LogIs4Enabled
    920  * Checks whether level 4 logging is enabled.
    921  */
    922 #define LogIs4Enabled()     LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_4, LOG_GROUP)
    923 
    924 /** @def LogIs5Enabled
    925  * Checks whether level 5 logging is enabled.
    926  */
    927 #define LogIs5Enabled()     LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_5, LOG_GROUP)
    928 
    929 /** @def LogIs6Enabled
    930  * Checks whether level 6 logging is enabled.
    931  */
    932 #define LogIs6Enabled()     LogIsItEnabled(RTLOGGRPFLAGS_LEVEL_6, LOG_GROUP)
    933 
    934 /** @def LogIsFlowEnabled
    935  * Checks whether execution flow logging is enabled.
    936  */
    937 #define LogIsFlowEnabled()  LogIsItEnabled(RTLOGGRPFLAGS_FLOW, LOG_GROUP)
     1174/** @} */
     1175
    9381176
    9391177
     
    10031241# define RTLOG_REL_DISABLED
    10041242#endif
     1243
     1244/** @name Macros for checking whether a release log level is enabled.
     1245 * @{ */
     1246/** @def LogRelIsItEnabled
     1247 * Checks whether the specified release logging group is enabled or not.
     1248 */
     1249#define LogRelIsItEnabled(a_fFlags, a_iGroup) ( RTLogRelGetDefaultInstanceEx(RT_MAKE_U32(a_fFlags, a_iGroup)) != NULL )
     1250
     1251/** @def LogRelIsEnabled
     1252 * Checks whether level 1 release logging is enabled.
     1253 */
     1254#define LogRelIsEnabled()      LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP)
     1255
     1256/** @def LogRelIs2Enabled
     1257 * Checks whether level 2 release logging is enabled.
     1258 */
     1259#define LogRelIs2Enabled()     LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_2, LOG_GROUP)
     1260
     1261/** @def LogRelIs3Enabled
     1262 * Checks whether level 3 release logging is enabled.
     1263 */
     1264#define LogRelIs3Enabled()     LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_3, LOG_GROUP)
     1265
     1266/** @def LogRelIs4Enabled
     1267 * Checks whether level 4 release logging is enabled.
     1268 */
     1269#define LogRelIs4Enabled()     LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_4, LOG_GROUP)
     1270
     1271/** @def LogRelIs5Enabled
     1272 * Checks whether level 5 release logging is enabled.
     1273 */
     1274#define LogRelIs5Enabled()     LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_5, LOG_GROUP)
     1275
     1276/** @def LogRelIs6Enabled
     1277 * Checks whether level 6 release logging is enabled.
     1278 */
     1279#define LogRelIs6Enabled()     LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_6, LOG_GROUP)
     1280
     1281/** @def LogRelIs7Enabled
     1282 * Checks whether level 7 release logging is enabled.
     1283 */
     1284#define LogRelIs7Enabled()     LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_7, LOG_GROUP)
     1285
     1286/** @def LogRelIs8Enabled
     1287 * Checks whether level 8 release logging is enabled.
     1288 */
     1289#define LogRelIs8Enabled()     LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_8, LOG_GROUP)
     1290
     1291/** @def LogRelIs2Enabled
     1292 * Checks whether level 9 release logging is enabled.
     1293 */
     1294#define LogRelIs9Enabled()     LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_9, LOG_GROUP)
     1295
     1296/** @def LogRelIs10Enabled
     1297 * Checks whether level 10 release logging is enabled.
     1298 */
     1299#define LogRelIs10Enabled()    LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_10, LOG_GROUP)
     1300
     1301/** @def LogRelIs11Enabled
     1302 * Checks whether level 10 release logging is enabled.
     1303 */
     1304#define LogRelIs11Enabled()    LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_11, LOG_GROUP)
     1305
     1306/** @def LogRelIs12Enabled
     1307 * Checks whether level 12 release logging is enabled.
     1308 */
     1309#define LogRelIs12Enabled()    LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_12, LOG_GROUP)
     1310
     1311/** @def LogRelIsFlowEnabled
     1312 * Checks whether execution flow release logging is enabled.
     1313 */
     1314#define LogRelIsFlowEnabled()  LogRelIsItEnabled(RTLOGGRPFLAGS_FLOW, LOG_GROUP)
     1315
     1316/** @def LogRelIsWarnEnabled
     1317 * Checks whether warning level release logging is enabled.
     1318 */
     1319#define LogRelIsWarnEnabled()  LogRelIsItEnabled(RTLOGGRPFLAGS_FLOW, LOG_GROUP)
     1320/** @} */
    10051321
    10061322
     
    10211337    do \
    10221338    { \
    1023         PRTLOGGER LogRelIt_pLogger = RTLogRelGetDefaultInstanceEx(a_fFlags, a_iGroup); \
     1339        PRTLOGGER LogRelIt_pLogger = RTLogRelGetDefaultInstanceEx(RT_MAKE_U32(a_fFlags, a_iGroup)); \
    10241340        if (RT_LIKELY(!LogRelIt_pLogger)) \
    10251341        { /* likely */ } \
     
    10331349    do \
    10341350    { \
    1035         PRTLOGGER LogRelIt_pLogger = RTLogRelGetDefaultInstanceEx(a_fFlags, a_iGroup); \
     1351        PRTLOGGER LogRelIt_pLogger = RTLogRelGetDefaultInstanceEx(RT_MAKE_U32(a_fFlags, a_iGroup)); \
    10361352        if (LogRelIt_pLogger) \
    10371353            RTLogLoggerEx(LogRelIt_pLogger, a_fFlags, a_iGroup, __VA_ARGS__); \
     
    10431359    do \
    10441360    { \
    1045         PRTLOGGER LogRelIt_pLogger = RTLogRelGetDefaultInstanceEx(a_fFlags, a_iGroup); \
     1361        PRTLOGGER LogRelIt_pLogger = RTLogRelGetDefaultInstanceEx(RT_MAKE_U32(a_fFlags, a_iGroup)); \
    10461362        if (LogRelIt_pLogger) \
    10471363        { \
     
    10611377   do \
    10621378   { \
    1063        PRTLOGGER LogRelIt_pLogger = RTLogRelGetDefaultInstanceEx(a_fFlags, a_iGroup); \
     1379       PRTLOGGER LogRelIt_pLogger = RTLogRelGetDefaultInstanceEx(RT_MAKE_U32(a_fFlags, a_iGroup)); \
    10641380       if (LogRelIt_pLogger) \
    10651381       { \
     
    10711387   do \
    10721388   { \
    1073        PRTLOGGER LogRelIt_pLogger = RTLogRelGetDefaultInstanceEx(a_fFlags, a_iGroup); \
     1389       PRTLOGGER LogRelIt_pLogger = RTLogRelGetDefaultInstanceEx(RT_MAKE_U32(a_fFlags, a_iGroup)); \
    10741390       if (RT_LIKELY(!LogRelIt_pLogger)) \
    10751391       { /* likely */ } \
     
    10831399   do \
    10841400   { \
    1085        PRTLOGGER LogRelIt_pLogger = RTLogRelGetDefaultInstanceEx(a_fFlags, a_iGroup); \
     1401       PRTLOGGER LogRelIt_pLogger = RTLogRelGetDefaultInstanceEx(RT_MAKE_U32(a_fFlags, a_iGroup)); \
    10861402       if (LogRelIt_pLogger) \
    10871403       { \
     
    11091425
    11101426
     1427/** @name Basic release logging macros
     1428 * @{ */
    11111429/** @def LogRel
    1112  * Level 1 logging.
    1113  */
    1114 #define LogRel(a)          LogRelItLikely(RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, a)
     1430 * Level 1 release logging.
     1431 */
     1432#define LogRel(a)           LogRelItLikely(RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, a)
    11151433
    11161434/** @def LogRel2
    1117  * Level 2 logging.
    1118  */
    1119 #define LogRel2(a)         LogRelIt(RTLOGGRPFLAGS_LEVEL_2,  LOG_GROUP, a)
     1435 * Level 2 release logging.
     1436 */
     1437#define LogRel2(a)          LogRelIt(RTLOGGRPFLAGS_LEVEL_2,  LOG_GROUP, a)
    11201438
    11211439/** @def LogRel3
    1122  * Level 3 logging.
    1123  */
    1124 #define LogRel3(a)         LogRelIt(RTLOGGRPFLAGS_LEVEL_3,  LOG_GROUP, a)
     1440 * Level 3 release logging.
     1441 */
     1442#define LogRel3(a)          LogRelIt(RTLOGGRPFLAGS_LEVEL_3,  LOG_GROUP, a)
    11251443
    11261444/** @def LogRel4
    1127  * Level 4 logging.
    1128  */
    1129 #define LogRel4(a)         LogRelIt(RTLOGGRPFLAGS_LEVEL_4,  LOG_GROUP, a)
     1445 * Level 4 release logging.
     1446 */
     1447#define LogRel4(a)          LogRelIt(RTLOGGRPFLAGS_LEVEL_4,  LOG_GROUP, a)
    11301448
    11311449/** @def LogRel5
    1132  * Level 5 logging.
    1133  */
    1134 #define LogRel5(a)         LogRelIt(RTLOGGRPFLAGS_LEVEL_5,  LOG_GROUP, a)
     1450 * Level 5 release logging.
     1451 */
     1452#define LogRel5(a)          LogRelIt(RTLOGGRPFLAGS_LEVEL_5,  LOG_GROUP, a)
    11351453
    11361454/** @def LogRel6
    1137  * Level 6 logging.
    1138  */
    1139 #define LogRel6(a)         LogRelIt(RTLOGGRPFLAGS_LEVEL_6,  LOG_GROUP, a)
     1455 * Level 6 release logging.
     1456 */
     1457#define LogRel6(a)          LogRelIt(RTLOGGRPFLAGS_LEVEL_6,  LOG_GROUP, a)
     1458
     1459/** @def LogRel7
     1460 * Level 7 release logging.
     1461 */
     1462#define LogRel7(a)          LogRelIt(RTLOGGRPFLAGS_LEVEL_7,  LOG_GROUP, a)
     1463
     1464/** @def LogRel8
     1465 * Level 8 release logging.
     1466 */
     1467#define LogRel8(a)          LogRelIt(RTLOGGRPFLAGS_LEVEL_8,  LOG_GROUP, a)
     1468
     1469/** @def LogRel9
     1470 * Level 9 release logging.
     1471 */
     1472#define LogRel9(a)          LogRelIt(RTLOGGRPFLAGS_LEVEL_9,  LOG_GROUP, a)
     1473
     1474/** @def LogRel10
     1475 * Level 10 release logging.
     1476 */
     1477#define LogRel10(a)         LogRelIt(RTLOGGRPFLAGS_LEVEL_10, LOG_GROUP, a)
     1478
     1479/** @def LogRel11
     1480 * Level 11 release logging.
     1481 */
     1482#define LogRel11(a)         LogRelIt(RTLOGGRPFLAGS_LEVEL_11, LOG_GROUP, a)
     1483
     1484/** @def LogRel12
     1485 * Level 12 release logging.
     1486 */
     1487#define LogRel12(a)         LogRelIt(RTLOGGRPFLAGS_LEVEL_12, LOG_GROUP, a)
    11401488
    11411489/** @def LogRelFlow
    11421490 * Logging of execution flow.
    11431491 */
    1144 #define LogRelFlow(a)      LogRelIt(RTLOGGRPFLAGS_FLOW,     LOG_GROUP, a)
     1492#define LogRelFlow(a)       LogRelIt(RTLOGGRPFLAGS_FLOW,     LOG_GROUP, a)
     1493
     1494/** @def LogRelWarn
     1495 * Warning level release logging.
     1496 */
     1497#define LogRelWarn(a)       LogRelIt(RTLOGGRPFLAGS_WARN,     LOG_GROUP, a)
     1498/** @} */
     1499
     1500
     1501
     1502/** @name Basic release logging macros with local max
     1503 * @{ */
     1504/** @def LogRelMax
     1505 * Level 1 release logging with a max number of log entries.
     1506 */
     1507#define LogRelMax(a_cMax, a)        LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, a)
     1508
     1509/** @def LogRelMax2
     1510 * Level 2 release logging with a max number of log entries.
     1511 */
     1512#define LogRelMax2(a_cMax, a)       LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_2,  LOG_GROUP, a)
     1513
     1514/** @def LogRelMax3
     1515 * Level 3 release logging with a max number of log entries.
     1516 */
     1517#define LogRelMax3(a_cMax, a)       LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_3,  LOG_GROUP, a)
     1518
     1519/** @def LogRelMax4
     1520 * Level 4 release logging with a max number of log entries.
     1521 */
     1522#define LogRelMax4(a_cMax, a)       LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_4,  LOG_GROUP, a)
     1523
     1524/** @def LogRelMax5
     1525 * Level 5 release logging with a max number of log entries.
     1526 */
     1527#define LogRelMax5(a_cMax, a)       LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_5,  LOG_GROUP, a)
     1528
     1529/** @def LogRelMax6
     1530 * Level 6 release logging with a max number of log entries.
     1531 */
     1532#define LogRelMax6(a_cMax, a)       LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_6,  LOG_GROUP, a)
     1533
     1534/** @def LogRelMax7
     1535 * Level 7 release logging with a max number of log entries.
     1536 */
     1537#define LogRelMax7(a_cMax, a)       LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_7,  LOG_GROUP, a)
     1538
     1539/** @def LogRelMax8
     1540 * Level 8 release logging with a max number of log entries.
     1541 */
     1542#define LogRelMax8(a_cMax, a)       LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_8,  LOG_GROUP, a)
     1543
     1544/** @def LogRelMax9
     1545 * Level 9 release logging with a max number of log entries.
     1546 */
     1547#define LogRelMax9(a_cMax, a)       LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_9,  LOG_GROUP, a)
     1548
     1549/** @def LogRelMax10
     1550 * Level 10 release logging with a max number of log entries.
     1551 */
     1552#define LogRelMax10(a_cMax, a)      LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_10, LOG_GROUP, a)
     1553
     1554/** @def LogRelMax11
     1555 * Level 11 release logging with a max number of log entries.
     1556 */
     1557#define LogRelMax11(a_cMax, a)      LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_11, LOG_GROUP, a)
     1558
     1559/** @def LogRelMax12
     1560 * Level 12 release logging with a max number of log entries.
     1561 */
     1562#define LogRelMax12(a_cMax, a)      LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_12, LOG_GROUP, a)
     1563
     1564/** @def LogRelFlow
     1565 * Logging of execution flow with a max number of log entries.
     1566 */
     1567#define LogRelMaxFlow(a_cMax, a)    LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_FLOW,     LOG_GROUP, a)
     1568/** @} */
     1569
     1570
     1571/** @name Release logging macros prefixing the current function name.
     1572 * @{ */
    11451573
    11461574/** @def LogRelFunc
     
    11521580    _LogRelItLikely(RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, LOG_FN_FMT ": %M", RT_GCC_EXTENSION __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    11531581#else
    1154 # define LogRelFunc(a) \
    1155     do { LogRel((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); LogRel(a); } while (0)
    1156 #endif
     1582# define LogRelFunc(a)      do { LogRel((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); LogRel(a); } while (0)
     1583#endif
     1584
     1585/** @def LogRelFlowFunc
     1586 * Release logging.  Macro to log the execution flow inside C/C++ functions.
     1587 *
     1588 * Prepends the given log message with the function name followed by
     1589 * a semicolon and space.
     1590 *
     1591 * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
     1592 */
     1593#ifdef LOG_USE_C99
     1594# define LogRelFlowFunc(a)  _LogRelIt(RTLOGGRPFLAGS_FLOW, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     1595#else
     1596# define LogRelFlowFunc(a)  do { LogRelFlow((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); LogRelFlow(a); } while (0)
     1597#endif
     1598
     1599/** @def LogRelMaxFunc
     1600 * Release logging.  Prepends the given log message with the function name
     1601 * followed by a semicolon and space.
     1602 */
     1603#ifdef LOG_USE_C99
     1604# define LogRelMaxFunc(a_cMax, a) \
     1605    _LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     1606#else
     1607# define LogRelMaxFunc(a_cMax, a) \
     1608    do { LogRelMax(a_cMax, (LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); LogRelMax(a_cMax, a); } while (0)
     1609#endif
     1610
     1611/** @def LogRelMaxFlowFunc
     1612 * Release logging.  Macro to log the execution flow inside C/C++ functions.
     1613 *
     1614 * Prepends the given log message with the function name followed by
     1615 * a semicolon and space.
     1616 *
     1617 * @param   a_cMax  Max number of times this should hit the log.
     1618 * @param   a       Log message in format <tt>("string\n" [, args])</tt>.
     1619 */
     1620#ifdef LOG_USE_C99
     1621# define LogRelMaxFlowFunc(a_cMax, a) \
     1622    _LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_FLOW, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     1623#else
     1624# define LogRelMaxFlowFunc(a_cMax, a) \
     1625    do { LogRelMaxFlow(a_cMax, (LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); LogRelFlow(a_cMax, a); } while (0)
     1626#endif
     1627
     1628/** @} */
     1629
     1630
     1631/** @name Release Logging macros prefixing the this pointer value and method name.
     1632 * @{ */
    11571633
    11581634/** @def LogRelThisFunc
     
    11661642# define LogRelThisFunc(a) \
    11671643    do { LogRel(("{%p} " LOG_FN_FMT ": ", this, __PRETTY_FUNCTION__)); LogRel(a); } while (0)
    1168 #endif
    1169 
    1170 /** @def LogRelFlowFunc
    1171  * Release logging.  Macro to log the execution flow inside C/C++ functions.
    1172  *
    1173  * Prepends the given log message with the function name followed by
    1174  * a semicolon and space.
    1175  *
    1176  * @param   a   Log message in format <tt>("string\n" [, args])</tt>.
    1177  */
    1178 #ifdef LOG_USE_C99
    1179 # define LogRelFlowFunc(a) \
    1180     _LogRelIt(RTLOGGRPFLAGS_FLOW, LOG_GROUP, LOG_FN_FMT ": %M", __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    1181 #else
    1182 # define LogRelFlowFunc(a) \
    1183     do { LogRelFlow((LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); LogRelFlow(a); } while (0)
    1184 #endif
    1185 
    1186 /** @def LogRelLelik
    1187  *  lelik logging.
    1188  */
    1189 #define LogRelLelik(a)              LogRelIt(RTLOGGRPFLAGS_LELIK,    LOG_GROUP, a)
    1190 
    1191 /** @def LogRelMichael
    1192  * michael logging.
    1193  */
    1194 #define LogRelMichael(a)            LogRelIt(RTLOGGRPFLAGS_MICHAEL,  LOG_GROUP, a)
    1195 
    1196 /** @def LogRelSunlover
    1197  * sunlover logging.
    1198  */
    1199 #define LogRelSunlover(a)           LogRelIt(RTLOGGRPFLAGS_SUNLOVER, LOG_GROUP, a)
    1200 
    1201 /** @def LogRelAchim
    1202  * Achim logging.
    1203  */
    1204 #define LogRelAchim(a)              LogRelIt(RTLOGGRPFLAGS_ACHIM,    LOG_GROUP, a)
    1205 
    1206 /** @def LogRelSander
    1207  * Sander logging.
    1208  */
    1209 #define LogRelSander(a)             LogRelIt(RTLOGGRPFLAGS_SANDER,   LOG_GROUP, a)
    1210 
    1211 /** @def LogRelKlaus
    1212  *  klaus logging.
    1213  */
    1214 #define LogRelKlaus(a)              LogRelIt(RTLOGGRPFLAGS_KLAUS,    LOG_GROUP, a)
    1215 
    1216 /** @def LogRelFrank
    1217  *  frank logging.
    1218  */
    1219 #define LogRelFrank(a)              LogRelIt(RTLOGGRPFLAGS_FRANK,    LOG_GROUP, a)
    1220 
    1221 /** @def LogRelBird
    1222  * bird logging.
    1223  */
    1224 #define LogRelBird(a)               LogRelIt(RTLOGGRPFLAGS_BIRD,     LOG_GROUP, a)
    1225 
    1226 /** @def LogRelNoName
    1227  * NoName logging.
    1228  */
    1229 #define LogRelNoName(a)             LogRelIt(RTLOGGRPFLAGS_NONAME,   LOG_GROUP, a)
    1230 
    1231 
    1232 /** @def LogRelMax
    1233  * Level 1 logging.
    1234  */
    1235 #define LogRelMax(a_cMax, a)        LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, a)
    1236 
    1237 /** @def LogRelMax2
    1238  * Level 2 logging.
    1239  */
    1240 #define LogRelMax2(a_cMax, a)       LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_2,  LOG_GROUP, a)
    1241 
    1242 /** @def LogRelMax3
    1243  * Level 3 logging.
    1244  */
    1245 #define LogRelMax3(a_cMax, a)       LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_3,  LOG_GROUP, a)
    1246 
    1247 /** @def LogRelMax4
    1248  * Level 4 logging.
    1249  */
    1250 #define LogRelMax4(a_cMax, a)       LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_4,  LOG_GROUP, a)
    1251 
    1252 /** @def LogRelMax5
    1253  * Level 5 logging.
    1254  */
    1255 #define LogRelMax5(a_cMax, a)       LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_5,  LOG_GROUP, a)
    1256 
    1257 /** @def LogRelMax6
    1258  * Level 6 logging.
    1259  */
    1260 #define LogRelMax6(a_cMax, a)       LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_6,  LOG_GROUP, a)
    1261 
    1262 /** @def LogRelFlow
    1263  * Logging of execution flow.
    1264  */
    1265 #define LogRelMaxFlow(a_cMax, a)    LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_FLOW,     LOG_GROUP, a)
    1266 
    1267 /** @def LogRelMaxFunc
    1268  * Release logging.  Prepends the given log message with the function name
    1269  * followed by a semicolon and space.
    1270  */
    1271 #ifdef LOG_USE_C99
    1272 # define LogRelMaxFunc(a_cMax, a) \
    1273     _LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, LOG_FN_FMT ": %M", \
    1274                  __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    1275 # define LogFuncMax(a_cMax, a) \
    1276     _LogItMax(a_cMax, RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, LOG_FN_FMT ": %M", \
    1277               __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    1278 #else
    1279 # define LogRelMaxFunc(a_cMax, a) \
    1280     do { LogRelMax(a_cMax, (LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); LogRelMax(a_cMax, a); } while (0)
    12811644#endif
    12821645
     
    12891652#ifdef LOG_USE_C99
    12901653# define LogRelMaxThisFunc(a_cMax, a) \
    1291     _LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", \
    1292                  this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
     1654    _LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP, "{%p} " LOG_FN_FMT ": %M", this, __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    12931655#else
    12941656# define LogRelMaxThisFunc(a_cMax, a) \
     
    12961658#endif
    12971659
    1298 /** @def LogRelMaxFlowFunc
    1299  * Release logging.  Macro to log the execution flow inside C/C++ functions.
    1300  *
    1301  * Prepends the given log message with the function name followed by
    1302  * a semicolon and space.
    1303  *
    1304  * @param   a_cMax  Max number of times this should hit the log.
    1305  * @param   a       Log message in format <tt>("string\n" [, args])</tt>.
    1306  */
    1307 #ifdef LOG_USE_C99
    1308 # define LogRelMaxFlowFunc(a_cMax, a) \
    1309     _LogRelMaxIt(a_cMax, RTLOGGRPFLAGS_FLOW, LOG_GROUP, LOG_FN_FMT ": %M", \
    1310                  __PRETTY_FUNCTION__, _LogRemoveParentheseis a )
    1311 #else
    1312 # define LogRelMaxFlowFunc(a_cMax, a) \
    1313     do { LogRelMaxFlow(a_cMax, (LOG_FN_FMT ": ", __PRETTY_FUNCTION__)); LogRelFlow(a_cMax, a); } while (0)
    1314 #endif
    1315 
    1316 
    1317 /** @def LogRelIsItEnabled
    1318  * Checks whether the specified logging group is enabled or not.
    1319  */
    1320 #define LogRelIsItEnabled(a_fFlags, a_iGroup) \
    1321     ( RTLogRelGetDefaultInstanceEx((uint32_t)(a_fFlags), (uint32_t)(a_iGroup)) != NULL )
    1322 
    1323 /** @def LogRelIsEnabled
    1324  * Checks whether level 1 logging is enabled.
    1325  */
    1326 #define LogRelIsEnabled()      LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_1, LOG_GROUP)
    1327 
    1328 /** @def LogRelIs2Enabled
    1329  * Checks whether level 2 logging is enabled.
    1330  */
    1331 #define LogRelIs2Enabled()     LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_2, LOG_GROUP)
    1332 
    1333 /** @def LogRelIs3Enabled
    1334  * Checks whether level 3 logging is enabled.
    1335  */
    1336 #define LogRelIs3Enabled()     LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_3, LOG_GROUP)
    1337 
    1338 /** @def LogRelIs4Enabled
    1339  * Checks whether level 4 logging is enabled.
    1340  */
    1341 #define LogRelIs4Enabled()     LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_4, LOG_GROUP)
    1342 
    1343 /** @def LogRelIs5Enabled
    1344  * Checks whether level 5 logging is enabled.
    1345  */
    1346 #define LogRelIs5Enabled()     LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_5, LOG_GROUP)
    1347 
    1348 /** @def LogRelIs6Enabled
    1349  * Checks whether level 6 logging is enabled.
    1350  */
    1351 #define LogRelIs6Enabled()     LogRelIsItEnabled(RTLOGGRPFLAGS_LEVEL_6, LOG_GROUP)
    1352 
    1353 /** @def LogRelIsFlowEnabled
    1354  * Checks whether execution flow logging is enabled.
    1355  */
    1356 #define LogRelIsFlowEnabled()  LogRelIsItEnabled(RTLOGGRPFLAGS_FLOW, LOG_GROUP)
     1660/** @} */
    13571661
    13581662
     
    13781682 *
    13791683 * @returns Pointer to default release logger instance if availble, otherwise NULL.
    1380  * @param   fFlags      The logging group flags required.
    1381  * @param   iGroup      The group.
    1382  */
    1383 RTDECL(PRTLOGGER) RTLogRelGetDefaultInstanceEx(uint32_t fFlags, uint32_t iGroup);
     1684 * @param   fFlagsAndGroup  The flags in the lower 16 bits, the group number in
     1685 *                          the high 16 bits.
     1686 */
     1687RTDECL(PRTLOGGER) RTLogRelGetDefaultInstanceEx(uint32_t fFlagsAndGroup);
    13841688
    13851689/**
     
    15681872 * @returns Pointer to default logger instance, if group has the specified
    15691873 *          flags enabled.  Otherwise NULL is returned.
    1570  * @param   fFlags      The logging group flags required.
    1571  * @param   iGroup      The group.
    1572  */
    1573 RTDECL(PRTLOGGER)   RTLogDefaultInstanceEx(uint32_t fFlags, uint32_t iGroup);
     1874 * @param   fFlagsAndGroup  The flags in the lower 16 bits, the group number in
     1875 *                          the high 16 bits.
     1876 */
     1877RTDECL(PRTLOGGER)   RTLogDefaultInstanceEx(uint32_t fFlagsAndGroup);
    15741878
    15751879/**
     
    15851889 * @returns Pointer to default logger instance, if group has the specified
    15861890 *          flags enabled.  Otherwise NULL is returned.
    1587  * @param   fFlags      The logging group flags required.
    1588  * @param   iGroup      The group.
    1589  */
    1590 RTDECL(PRTLOGGER)   RTLogGetDefaultInstanceEx(uint32_t fFlags, uint32_t iGroup);
     1891 * @param   fFlagsAndGroup  The flags in the lower 16 bits, the group number in
     1892 *                          the high 16 bits.
     1893 */
     1894RTDECL(PRTLOGGER)   RTLogGetDefaultInstanceEx(uint32_t fFlagsAndGroup);
    15911895
    15921896#ifndef IN_RC
     
    16131917RTDECL(int)         RTLogSetDefaultInstanceThread(PRTLOGGER pLogger, uintptr_t uKey);
    16141918#endif /* IN_RING0 */
    1615 
    1616 
    1617 #ifdef LOG_ENABLED
    1618 /** Internal worker function.
    1619  * Don't call directly, use the LogIsItEnabled macro!
    1620  */
    1621 DECLINLINE(bool)    LogIsItEnabledInternal(unsigned iGroup, unsigned fFlags)
    1622 {
    1623     register PRTLOGGER pLogger = RTLogDefaultInstance();
    1624     if (   pLogger
    1625         && !(pLogger->fFlags & RTLOGFLAGS_DISABLED))
    1626     {
    1627         register unsigned fGrpFlags = pLogger->afGroups[(unsigned)iGroup < pLogger->cGroups ? (unsigned)iGroup : 0];
    1628         if ((fGrpFlags & (fFlags | RTLOGGRPFLAGS_ENABLED)) == (fFlags | RTLOGGRPFLAGS_ENABLED))
    1629             return true;
    1630     }
    1631     return false;
    1632 }
    1633 #endif
    16341919
    16351920
  • trunk/src/VBox/Additions/common/VBoxGuest/VBoxGuest-haiku-stubs.c

    r55980 r55988  
    331331    return g_VBoxGuest->_RTLogDefaultInstance();
    332332}
    333 RTDECL(PRTLOGGER) RTLogDefaultInstanceEx(uint32_t fFlags, uint32_t iGroup)
    334 {
    335     return g_VBoxGuest->_RTLogDefaultInstanceEx(fFlags, iGroup);
     333RTDECL(PRTLOGGER) RTLogDefaultInstanceEx(uint32_t fFlagsAndGroup)
     334{
     335    return g_VBoxGuest->_RTLogDefaultInstanceEx(fFlagsAndGroup);
    336336}
    337337RTDECL(PRTLOGGER) RTLogRelGetDefaultInstance(void)
  • trunk/src/VBox/Additions/common/VBoxGuest/VBoxGuest-haiku.h

    r55980 r55988  
    180180    void (*_RTMemTmpFree)(void *pv);
    181181    PRTLOGGER(*_RTLogDefaultInstance)(void);
    182     PRTLOGGER(*_RTLogDefaultInstanceEx)(uint32_t fFlags, uint32_t iGroup);
     182    PRTLOGGER(*_RTLogDefaultInstanceEx)(uint32_t fFlagsAndGroup);
    183183    PRTLOGGER(*_RTLogRelGetDefaultInstance)(void);
    184     PRTLOGGER(*_RTLogRelGetDefaultInstanceEx)(uint32_t fFlags, uint32_t iGroup);
     184    PRTLOGGER(*_RTLogRelGetDefaultInstanceEx)(uint32_t fFlagsAndGroup);
    185185    int (*_RTErrConvertToErrno)(int iErr);
    186186    int (*_VbgdCommonIoCtl)(unsigned iFunction, PVBOXGUESTDEVEXT pDevExt, PVBOXGUESTSESSION pSession,
  • trunk/src/VBox/Additions/common/VBoxGuestLib/VBoxGuestR3LibRuntimeXF86.cpp

    r55981 r55988  
    6565}
    6666
    67 RTDECL(PRTLOGGER) RTLogDefaultInstanceEx(uint32_t fFlags, uint32_t iGroup)
     67RTDECL(PRTLOGGER) RTLogDefaultInstanceEx(uint32_t fFlagsAndGroup)
    6868{
    69     NOREF(fFlags); NOREF(iGroup);
     69    NOREF(fFlagsAndGroup);
    7070    return NULL;
    7171}
     
    7676}
    7777
    78 RTDECL(PRTLOGGER) RTLogRelGetDefaultInstanceEx(uint32_t fFlags, uint32_t iGroup)
     78RTDECL(PRTLOGGER) RTLogRelGetDefaultInstanceEx(uint32_t fFlagsAndGroup)
    7979{
    80     NOREF(fFlags); NOREF(iGroup);
     80    NOREF(fFlagsAndGroup);
    8181    return NULL;
    8282}
  • trunk/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp

    r55977 r55988  
    23432343                    default:
    23442344                    {
    2345                         LogBird(("VBoxSDL: Unknown SDL event %d (pre)\n", event.type));
     2345                        Log8(("VBoxSDL: Unknown SDL event %d (pre)\n", event.type));
    23462346                        break;
    23472347                    }
     
    29052905            default:
    29062906            {
    2907                 LogBird(("unknown SDL event %d\n", event.type));
     2907                Log8(("unknown SDL event %d\n", event.type));
    29082908                break;
    29092909            }
  • trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp

    r55915 r55988  
    32203220            if (!ok)
    32213221            {
    3222                 LogWarningFunc (("Couldn't switch to desktop=%08X\n",
    3223                                  desktop));
     3222                Log1WarningFunc(("Couldn't switch to desktop=%08X\n", desktop));
    32243223                result = false;
    32253224            }
     
    32283227        else
    32293228        {
    3230             LogWarningFunc (("Couldn't find a desktop ID for aWId=%08X\n",
    3231                              aWId));
     3229            Log1WarningFunc(("Couldn't find a desktop ID for aWId=%08X\n", aWId));
    32323230            result = false;
    32333231        }
     
    32493247
    32503248    if (!result)
    3251         LogWarningFunc (("Couldn't activate aWId=%08X\n", aWId));
     3249        Log1WarningFunc(("Couldn't activate aWId=%08X\n", aWId));
    32523250
    32533251    return result;
  • trunk/src/VBox/HostDrivers/Support/SUPDrv.cpp

    r55980 r55988  
    233233    { "RTLogLoggerExV",                         (void *)RTLogLoggerExV },
    234234    { "RTLogPrintfV",                           (void *)RTLogPrintfV },
    235     { "RTLogRelDefaultInstance",                (void *)RTLogRelGetDefaultInstance },
    236235    { "RTLogRelGetDefaultInstance",             (void *)RTLogRelGetDefaultInstance },
    237236    { "RTLogRelGetDefaultInstanceEx",           (void *)RTLogRelGetDefaultInstanceEx },
  • trunk/src/VBox/HostDrivers/Support/SUPDrvIOC.h

    r55980 r55988  
    213213 *
    214214 * @todo Pending work on next major version change:
    215  *          - Remove RTLogRelDefaultInstance export from SUPDrv.cpp.
    216  */
    217 #define SUPDRV_IOC_VERSION                              0x00220001
     215 *          - nothing.
     216 */
     217#define SUPDRV_IOC_VERSION                              0x00230000
    218218
    219219/** SUP_IOCTL_COOKIE. */
  • trunk/src/VBox/HostDrivers/Support/SUPLib.cpp

    r55980 r55988  
    279279        strcpy(CookieReq.u.In.szMagic, SUPCOOKIE_MAGIC);
    280280        CookieReq.u.In.u32ReqVersion = SUPDRV_IOC_VERSION;
    281         const uint32_t uMinVersion = (SUPDRV_IOC_VERSION & 0xffff0000) == 0x00200000
    282                                    ? 0x00200001
     281        const uint32_t uMinVersion = (SUPDRV_IOC_VERSION & 0xffff0000) == 0x00230000
     282                                   ? 0x00230000
    283283                                   : SUPDRV_IOC_VERSION & 0xffff0000;
    284284        CookieReq.u.In.u32MinVersion = uMinVersion;
  • trunk/src/VBox/Main/src-all/SharedFolderImpl.cpp

    r55401 r55988  
    364364                                       vrc);
    365365
    366     LogWarningThisFunc(("m.lastAccessError=\"%s\"\n", m->strLastAccessError.c_str()));
     366    Log1WarningThisFunc(("m.lastAccessError=\"%s\"\n", m->strLastAccessError.c_str()));
    367367
    368368    *aAccessible = FALSE;
  • trunk/src/VBox/Main/src-all/VirtualBoxBase.cpp

    r55958 r55988  
    324324             *  set the exception (nobody will be able to read it).
    325325             */
    326             LogWarningFunc(("Will not set an exception because nsIExceptionService is not available "
    327                             "(NS_ERROR_UNEXPECTED). XPCOM is being shutdown?\n"));
     326            Log1WarningFunc(("Will not set an exception because nsIExceptionService is not available (NS_ERROR_UNEXPECTED). XPCOM is being shutdown?\n"));
    328327            rc = NS_OK;
    329328        }
     
    491490             *  set the exception (nobody will be able to read it).
    492491             */
    493             LogWarningFunc(("Will not set an exception because nsIExceptionService is not available "
    494                             "(NS_ERROR_UNEXPECTED). XPCOM is being shutdown?\n"));
     492            Log1WarningFunc(("Will not set an exception because nsIExceptionService is not available (NS_ERROR_UNEXPECTED). XPCOM is being shutdown?\n"));
    495493            rc = NS_OK;
    496494        }
  • trunk/src/VBox/Main/src-client/ConsoleImpl.cpp

    r55941 r55988  
    86578657    else
    86588658    {
    8659         LogWarningThisFunc(("Failed to create proxy device for '%s' {%RTuuid} (%Rrc)\n",
    8660                             Address.c_str(), uuid.raw(), vrc));
     8659        Log1WarningThisFunc(("Failed to create proxy device for '%s' {%RTuuid} (%Rrc)\n", Address.c_str(), uuid.raw(), vrc));
    86618660
    86628661        switch (vrc)
     
    93309329        if (cbDevList < e->oNext)
    93319330        {
    9332             LogWarningThisFunc(("cbDevList %d > oNext %d\n",
    9333                                  cbDevList, e->oNext));
     9331            Log1WarningThisFunc(("cbDevList %d > oNext %d\n", cbDevList, e->oNext));
    93349332            break;
    93359333        }
  • trunk/src/VBox/Main/src-client/ConsoleVRDPServer.cpp

    r54828 r55988  
    364364                                                  ComSafeArrayIn(BYTE,inShape))
    365365{
    366     LogSunlover(("VRDPConsoleListener::OnMousePointerShapeChange: %d, %d, %lux%lu, @%lu,%lu\n",
    367                  visible, alpha, width, height, xHot, yHot));
     366    Log9(("VRDPConsoleListener::OnMousePointerShapeChange: %d, %d, %lux%lu, @%lu,%lu\n",
     367          visible, alpha, width, height, xHot, yHot));
    368368
    369369    com::SafeArray <BYTE> aShape(ComSafeArrayInArg(inShape));
  • trunk/src/VBox/Main/src-client/DisplayImplLegacy.cpp

    r52769 r55988  
    5555    DISPLAYFBINFO *pInfo = pInfos;
    5656    unsigned uScreenId;
    57     LogSunlover(("mapCoordsToScreen: %d,%d %dx%d\n", *px, *py, *pw, *ph));
     57    Log9(("mapCoordsToScreen: %d,%d %dx%d\n", *px, *py, *pw, *ph));
    5858    for (uScreenId = 0; uScreenId < cInfos; uScreenId++, pInfo++)
    5959    {
    60         LogSunlover(("    [%d] %d,%d %dx%d\n", uScreenId, pInfo->xOrigin, pInfo->yOrigin, pInfo->w, pInfo->h));
     60        Log9(("    [%d] %d,%d %dx%d\n", uScreenId, pInfo->xOrigin, pInfo->yOrigin, pInfo->w, pInfo->h));
    6161        if (   (pInfo->xOrigin <= *px && *px < pInfo->xOrigin + (int)pInfo->w)
    6262            && (pInfo->yOrigin <= *py && *py < pInfo->yOrigin + (int)pInfo->h))
     
    6565            *px -= pInfo->xOrigin;
    6666            *py -= pInfo->yOrigin;
    67             LogSunlover(("    -> %d,%d", *px, *py));
     67            Log9(("    -> %d,%d", *px, *py));
    6868            break;
    6969        }
     
    7474        uScreenId = 0;
    7575    }
    76     LogSunlover((" scr %d\n", uScreenId));
     76    Log9((" scr %d\n", uScreenId));
    7777    return uScreenId;
    7878}
     
    105105static void vbvaRgnDirtyRect(VBVADIRTYREGION *prgn, unsigned uScreenId, VBVACMDHDR *phdr)
    106106{
    107     LogSunlover(("x = %d, y = %d, w = %d, h = %d\n",
    108                  phdr->x, phdr->y, phdr->w, phdr->h));
     107    Log9(("x = %d, y = %d, w = %d, h = %d\n", phdr->x, phdr->y, phdr->w, phdr->h));
    109108
    110109    /*
    111110     * Here update rectangles are accumulated to form an update area.
    112      * @todo
     111     */
     112    /** @todo
    113113     * Now the simplest method is used which builds one rectangle that
    114114     * includes all update areas. A bit more advanced method can be
  • trunk/src/VBox/Main/src-client/HGCM.cpp

    r55401 r55988  
    13321332    if (!pClient)
    13331333    {
    1334         LogWarningFunc(("Could not allocate HGCMClient!!!\n"));
     1334        Log1WarningFunc(("Could not allocate HGCMClient!!!\n"));
    13351335        return VERR_NO_MEMORY;
    13361336    }
  • trunk/src/VBox/Main/src-client/SessionImpl.cpp

    r55800 r55988  
    547547    else
    548548    {
    549         LogWarningThisFunc(("UNEXPECTED uninitialization!\n"));
     549        Log1WarningThisFunc(("UNEXPECTED uninitialization!\n"));
    550550        rc = autoCaller.rc();
    551551    }
  • trunk/src/VBox/Main/src-client/VMMDevInterface.cpp

    r54023 r55988  
    372372    if (display)
    373373    {
    374         LogSunlover(("MAIN::VMMDevInterface::iface_VideoAccelEnable: %d, %p\n", fEnable, pVbvaMemory));
     374        Log9(("MAIN::VMMDevInterface::iface_VideoAccelEnable: %d, %p\n", fEnable, pVbvaMemory));
    375375        return display->VideoAccelEnableVMMDev(fEnable, pVbvaMemory);
    376376    }
     
    387387    if (display)
    388388    {
    389         LogSunlover(("MAIN::VMMDevInterface::iface_VideoAccelFlush\n"));
     389        Log9(("MAIN::VMMDevInterface::iface_VideoAccelFlush\n"));
    390390        display->VideoAccelFlushVMMDev();
    391391    }
     
    606606                                           uint32_t *pu32ClientID)
    607607{
    608     LogSunlover(("Enter\n"));
     608    Log9(("Enter\n"));
    609609
    610610    PDRVMAINVMMDEV pDrv = RT_FROM_MEMBER(pInterface, DRVMAINVMMDEV, HGCMConnector);
     
    625625static DECLCALLBACK(int) iface_hgcmDisconnect(PPDMIHGCMCONNECTOR pInterface, PVBOXHGCMCMD pCmd, uint32_t u32ClientID)
    626626{
    627     LogSunlover(("Enter\n"));
     627    Log9(("Enter\n"));
    628628
    629629    PDRVMAINVMMDEV pDrv = RT_FROM_MEMBER(pInterface, DRVMAINVMMDEV, HGCMConnector);
     
    638638                                        uint32_t u32Function, uint32_t cParms, PVBOXHGCMSVCPARM paParms)
    639639{
    640     LogSunlover(("Enter\n"));
     640    Log9(("Enter\n"));
    641641
    642642    PDRVMAINVMMDEV pDrv = RT_FROM_MEMBER(pInterface, DRVMAINVMMDEV, HGCMConnector);
     
    657657static DECLCALLBACK(int) iface_hgcmSave(PPDMDRVINS pDrvIns, PSSMHANDLE pSSM)
    658658{
    659     LogSunlover(("Enter\n"));
     659    Log9(("Enter\n"));
    660660    return HGCMHostSaveState(pSSM);
    661661}
  • trunk/src/VBox/Main/src-server/ApplianceImplImport.cpp

    r54985 r55988  
    31833183                    {
    31843184                        /* possible case if a disk image belongs to other virtual system (OVF package with multiple VMs inside) */
    3185                         LogWarning(("OVA/OVF import: Disk image %s was missed during import of VM %s\n",
    3186                                     oit->first.c_str(), vmNameEntry->strOvf.c_str()));
     3185                        Log1Warning(("OVA/OVF import: Disk image %s was missed during import of VM %s\n",
     3186                                     oit->first.c_str(), vmNameEntry->strOvf.c_str()));
    31873187                        NOREF(vmNameEntry);
    31883188                        ++oit;
     
    34053405            if(cImportedDisks < avsdeHDs.size())
    34063406            {
    3407                 LogWarning(("Not all disk images were imported for VM %s. Check OVF description file.",
    3408                             vmNameEntry->strOvf.c_str()));
     3407                Log1Warning(("Not all disk images were imported for VM %s. Check OVF description file.",
     3408                             vmNameEntry->strOvf.c_str()));
    34093409            }
    34103410
     
    36893689            {
    36903690                /* possible case if a disk image belongs to other virtual system (OVF package with multiple VMs inside) */
    3691                 LogWarning(("OVA/OVF import: Disk image %s was missed during import of VM %s\n",
    3692                             oit->first.c_str(), vmNameEntry->strOvf.c_str()));
     3691                Log1Warning(("OVA/OVF import: Disk image %s was missed during import of VM %s\n",
     3692                             oit->first.c_str(), vmNameEntry->strOvf.c_str()));
    36933693                NOREF(vmNameEntry);
    36943694                ++oit;
     
    39343934    if(cImportedDisks < avsdeHDs.size())
    39353935    {
    3936         LogWarning(("Not all disk images were imported for VM %s. Check OVF description file.",
    3937                     vmNameEntry->strOvf.c_str()));
     3936        Log1Warning(("Not all disk images were imported for VM %s. Check OVF description file.",
     3937                     vmNameEntry->strOvf.c_str()));
    39383938    }
    39393939
  • trunk/src/VBox/Main/src-server/MachineImpl.cpp

    r55854 r55988  
    761761        /* fetch the current error info */
    762762        mData->mAccessError = com::ErrorInfo();
    763         LogWarning(("Machine {%RTuuid} is inaccessible! [%ls]\n",
    764                     mData->mUuid.raw(),
    765                     mData->mAccessError.getText().raw()));
     763        Log1Warning(("Machine {%RTuuid} is inaccessible! [%ls]\n", mData->mUuid.raw(), mData->mAccessError.getText().raw()));
    766764
    767765        /* rollback all changes */
     
    838836         * still valid). We'll call it ourselves below.
    839837         */
    840         LogWarningThisFunc(("Session machine is not NULL (%p), the direct session is still open!\n",
    841                             (SessionMachine*)mData->mSession.mMachine));
     838        Log1WarningThisFunc(("Session machine is not NULL (%p), the direct session is still open!\n",
     839                             (SessionMachine*)mData->mSession.mMachine));
    842840
    843841        if (Global::IsOnlineOrTransient(mData->mMachineState))
    844842        {
    845             LogWarningThisFunc(("Setting state to Aborted!\n"));
     843            Log1WarningThisFunc(("Setting state to Aborted!\n"));
    846844            /* set machine state using SessionMachine reimplementation */
    847845            static_cast<Machine*>(mData->mSession.mMachine)->i_setMachineState(MachineState_Aborted);
     
    874872    if (mData->flModifications)
    875873    {
    876         LogWarningThisFunc(("Discarding unsaved settings changes!\n"));
     874        Log1WarningThisFunc(("Discarding unsaved settings changes!\n"));
    877875        i_rollback(false /* aNotify */);
    878876    }
     
    49744972            const char *sep = error.isEmpty() ? "" : ": ";
    49754973            CBSTR err = error.raw();
    4976             LogWarningFunc(("Someone vetoed! Change refused%s%ls\n",
    4977                             sep, err));
     4974            Log1WarningFunc(("Someone vetoed! Change refused%s%ls\n", sep, err));
    49784975            return setError(E_ACCESSDENIED,
    49794976                            tr("Could not set extra data because someone refused the requested change of '%s' to '%s'%s%ls"),
     
    1219412191    mCollectorGuest = new pm::CollectorGuest(aMachine, pid);
    1219512192    aCollector->registerGuest(mCollectorGuest);
    12196     LogAleksey(("{%p} " LOG_FN_FMT ": mCollectorGuest=%p\n",
    12197                 this, __PRETTY_FUNCTION__, mCollectorGuest));
     12193    Log7(("{%p} " LOG_FN_FMT ": mCollectorGuest=%p\n", this, __PRETTY_FUNCTION__, mCollectorGuest));
    1219812194
    1219912195    /* Create sub metrics */
     
    1254612542    i_unregisterMetrics(mParent->i_performanceCollector(), mPeer);
    1254712543    /* The guest must be unregistered after its metrics (@bugref{5949}). */
    12548     LogAleksey(("{%p} " LOG_FN_FMT ": mCollectorGuest=%p\n",
    12549                 this, __PRETTY_FUNCTION__, mCollectorGuest));
     12544    Log7(("{%p} " LOG_FN_FMT ": mCollectorGuest=%p\n", this, __PRETTY_FUNCTION__, mCollectorGuest));
    1255012545    if (mCollectorGuest)
    1255112546    {
     
    1255812553    if (aReason == Uninit::Abnormal)
    1255912554    {
    12560         LogWarningThisFunc(("ABNORMAL client termination! (wasBusy=%d)\n",
    12561                              Global::IsOnlineOrTransient(lastState)));
     12555        Log1WarningThisFunc(("ABNORMAL client termination! (wasBusy=%d)\n", Global::IsOnlineOrTransient(lastState)));
    1256212556
    1256312557        /* reset the state to Aborted */
     
    1256912563    if (mData->flModifications)
    1257012564    {
    12571         LogWarningThisFunc(("Discarding unsaved settings changes!\n"));
     12565        Log1WarningThisFunc(("Discarding unsaved settings changes!\n"));
    1257212566        i_rollback(false /* aNotify */);
    1257312567    }
     
    1259712591            LogFlowThisFunc(("  remoteControl->Uninitialize() returned %08X\n", rc));
    1259812592            if (FAILED(rc))
    12599                 LogWarningThisFunc(("Forgot to close the remote session?\n"));
     12593                Log1WarningThisFunc(("Forgot to close the remote session?\n"));
    1260012594            ++it;
    1260112595        }
     
    1264312637
    1264412638    if ((aReason == Uninit::Unexpected))
    12645         LogWarningThisFunc(("Unexpected SessionMachine uninitialization!\n"));
     12639        Log1WarningThisFunc(("Unexpected SessionMachine uninitialization!\n"));
    1264612640
    1264712641    if (aReason != Uninit::Normal)
  • trunk/src/VBox/Main/src-server/MediumImpl.cpp

    r55872 r55988  
    64446444    {
    64456445        m->strLastAccessError = lastAccessError;
    6446         LogWarningFunc(("'%s' is not accessible (error='%s', rc=%Rhrc, vrc=%Rrc)\n",
    6447                         location.c_str(), m->strLastAccessError.c_str(),
    6448                         rc, vrc));
     6446        Log1WarningFunc(("'%s' is not accessible (error='%s', rc=%Rhrc, vrc=%Rrc)\n",
     6447                         location.c_str(), m->strLastAccessError.c_str(), rc, vrc));
    64496448    }
    64506449
  • trunk/src/VBox/Main/src-server/Performance.cpp

    r55769 r55988  
    115115    for (RTCPUID iCpu = 0; iCpu < RTCPUSET_MAX_CPUS; iCpu++)
    116116    {
    117         LogAleksey(("{%p} " LOG_FN_FMT ": Checking if CPU %d is member of online set...\n",
    118                     this, __PRETTY_FUNCTION__, (int)iCpu));
     117        Log7(("{%p} " LOG_FN_FMT ": Checking if CPU %d is member of online set...\n", this, __PRETTY_FUNCTION__, (int)iCpu));
    119118        if (RTCpuSetIsMemberByIndex(&OnlineSet, iCpu))
    120119        {
    121             LogAleksey(("{%p} " LOG_FN_FMT ": Getting frequency for CPU %d...\n",
    122                         this, __PRETTY_FUNCTION__, (int)iCpu));
     120            Log7(("{%p} " LOG_FN_FMT ": Getting frequency for CPU %d...\n", this, __PRETTY_FUNCTION__, (int)iCpu));
    123121            uint32_t uMHz = RTMpGetCurFrequency(RTMpCpuIdFromSetIndex(iCpu));
    124122            if (uMHz != 0)
    125123            {
    126                 LogAleksey(("{%p} " LOG_FN_FMT ": CPU %d %u MHz\n",
    127                             this, __PRETTY_FUNCTION__, (int)iCpu, uMHz));
     124                Log7(("{%p} " LOG_FN_FMT ": CPU %d %u MHz\n", this, __PRETTY_FUNCTION__, (int)iCpu, uMHz));
    128125                u64TotalMHz += uMHz;
    129126                cCpus++;
     
    197194    NOREF(aFunction);
    198195    NOREF(aText);
    199     LogAleksey(("{%p} " LOG_FN_FMT ": CGRQEnable(mask=0x%x) %s\n",
    200                 aObject, aFunction, mMask, aText));
     196    Log7(("{%p} " LOG_FN_FMT ": CGRQEnable(mask=0x%x) %s\n", aObject, aFunction, mMask, aText));
    201197}
    202198
     
    212208    NOREF(aFunction);
    213209    NOREF(aText);
    214     LogAleksey(("{%p} " LOG_FN_FMT ": CGRQDisable(mask=0x%x) %s\n",
    215                 aObject, aFunction, mMask, aText));
     210    Log7(("{%p} " LOG_FN_FMT ": CGRQDisable(mask=0x%x) %s\n", aObject, aFunction, mMask, aText));
    216211}
    217212
     
    226221    NOREF(aFunction);
    227222    NOREF(aText);
    228     LogAleksey(("{%p} " LOG_FN_FMT ": CGRQAbort %s\n",
    229                 aObject, aFunction, aText));
     223    Log7(("{%p} " LOG_FN_FMT ": CGRQAbort %s\n", aObject, aFunction, aText));
    230224}
    231225
     
    266260        /* enable statistics collection; this is a remote call (!) */
    267261        ret = directControl->EnableVMMStatistics(mCollectVMMStats);
    268         LogAleksey(("{%p} " LOG_FN_FMT ": %sable VMM stats (%s)\n",
    269                     this, __PRETTY_FUNCTION__, mCollectVMMStats?"En":"Dis",
    270                     SUCCEEDED(ret)?"success":"failed"));
     262        Log7(("{%p} " LOG_FN_FMT ": %sable VMM stats (%s)\n",
     263              this, __PRETTY_FUNCTION__, mCollectVMMStats ? "En" : "Dis", SUCCEEDED(ret) ? "success" : "failed"));
    271264    }
    272265
     
    319312        {
    320313            ret = mGuest->COMSETTER(StatisticsUpdateInterval)(1 /* 1 sec */);
    321             LogAleksey(("{%p} " LOG_FN_FMT ": Set guest statistics update interval to 1 sec (%s)\n",
    322                         this, __PRETTY_FUNCTION__, SUCCEEDED(ret)?"success":"failed"));
     314            Log7(("{%p} " LOG_FN_FMT ": Set guest statistics update interval to 1 sec (%s)\n",
     315                  this, __PRETTY_FUNCTION__, SUCCEEDED(ret) ? "success" : "failed"));
    323316        }
    324317    }
     
    343336        HRESULT ret = mGuest->COMSETTER(StatisticsUpdateInterval)(0 /* off */);
    344337        NOREF(ret);
    345         LogAleksey(("{%p} " LOG_FN_FMT ": Set guest statistics update interval to 0 sec (%s)\n",
    346                     this, __PRETTY_FUNCTION__, SUCCEEDED(ret)?"success":"failed"));
     338        Log7(("{%p} " LOG_FN_FMT ": Set guest statistics update interval to 0 sec (%s)\n",
     339              this, __PRETTY_FUNCTION__, SUCCEEDED(ret) ? "success" : "failed"));
    347340        invalidate(VMSTATS_ALL);
    348341    }
     
    359352    }
    360353
    361     LogAleksey(("{%p} " LOG_FN_FMT ": Attempted enqueue guest request when mManager is null\n",
    362                 this, __PRETTY_FUNCTION__));
     354    Log7(("{%p} " LOG_FN_FMT ": Attempted enqueue guest request when mManager is null\n", this, __PRETTY_FUNCTION__));
    363355    return E_POINTER;
    364356}
     
    410402                            "CGMgr");
    411403    NOREF(rc);
    412     LogAleksey(("{%p} " LOG_FN_FMT ": RTThreadCreate returned %u (mThread=%p)\n",
    413                 this, __PRETTY_FUNCTION__, rc));
     404    Log7(("{%p} " LOG_FN_FMT ": RTThreadCreate returned %u (mThread=%p)\n", this, __PRETTY_FUNCTION__, rc));
    414405}
    415406
     
    422413    {
    423414        /* We wait only if we were able to put the abort request to a queue */
    424         LogAleksey(("{%p} " LOG_FN_FMT ": Waiting for CGM request processing thread to stop...\n",
    425                     this, __PRETTY_FUNCTION__));
     415        Log7(("{%p} " LOG_FN_FMT ": Waiting for CGM request processing thread to stop...\n", this, __PRETTY_FUNCTION__));
    426416        rc = RTThreadWait(mThread, 1000 /* 1 sec */, &rcThread);
    427         LogAleksey(("{%p} " LOG_FN_FMT ": RTThreadWait returned %u (thread exit code: %u)\n",
    428                     this, __PRETTY_FUNCTION__, rc, rcThread));
     417        Log7(("{%p} " LOG_FN_FMT ": RTThreadWait returned %u (thread exit code: %u)\n", this, __PRETTY_FUNCTION__, rc, rcThread));
    429418    }
    430419}
     
    440429    if (!mVMMStatsProvider)
    441430        mVMMStatsProvider = pGuest;
    442     LogAleksey(("{%p} " LOG_FN_FMT ": Registered guest=%p provider=%p\n",
    443                 this, __PRETTY_FUNCTION__, pGuest, mVMMStatsProvider));
     431    Log7(("{%p} " LOG_FN_FMT ": Registered guest=%p provider=%p\n", this, __PRETTY_FUNCTION__, pGuest, mVMMStatsProvider));
    444432}
    445433
     
    448436    int rc = S_OK;
    449437
    450     LogAleksey(("{%p} " LOG_FN_FMT ": About to unregister guest=%p provider=%p\n",
    451                 this, __PRETTY_FUNCTION__, pGuest, mVMMStatsProvider));
     438    Log7(("{%p} " LOG_FN_FMT ": About to unregister guest=%p provider=%p\n", this, __PRETTY_FUNCTION__, pGuest, mVMMStatsProvider));
    452439    //mGuests.remove(pGuest); => destroyUnregistered()
    453440    pGuest->unregister();
     
    498485        }
    499486    }
    500     LogAleksey(("{%p} " LOG_FN_FMT ": LEAVE new provider=%p\n",
    501                 this, __PRETTY_FUNCTION__, mVMMStatsProvider));
     487    Log7(("{%p} " LOG_FN_FMT ": LEAVE new provider=%p\n", this, __PRETTY_FUNCTION__, mVMMStatsProvider));
    502488}
    503489
     
    511497            delete *it;
    512498            it = mGuests.erase(it);
    513             LogAleksey(("{%p} " LOG_FN_FMT ": Number of guests after erasing unregistered is %d\n",
    514                         this, __PRETTY_FUNCTION__, mGuests.size()));
     499            Log7(("{%p} " LOG_FN_FMT ": Number of guests after erasing unregistered is %d\n",
     500                  this, __PRETTY_FUNCTION__, mGuests.size()));
    515501        }
    516502        else
     
    537523         * and is barely noticable by humans.
    538524         */
    539         LogAleksey(("{%p} " LOG_FN_FMT ": Suspecting %s is stalled. Waiting for .5 sec...\n",
    540                     this, __PRETTY_FUNCTION__,
    541                     aRequest->getGuest()->getVMName().c_str()));
     525        Log7(("{%p} " LOG_FN_FMT ": Suspecting %s is stalled. Waiting for .5 sec...\n",
     526              this, __PRETTY_FUNCTION__, aRequest->getGuest()->getVMName().c_str()));
    542527        RTThreadSleep(500 /* ms */);
    543528        if (aRequest->getGuest() == mGuestBeingCalled) {
    544             LogAleksey(("{%p} " LOG_FN_FMT ": Request processing stalled for %s\n",
    545                         this, __PRETTY_FUNCTION__,
    546                         aRequest->getGuest()->getVMName().c_str()));
     529            Log7(("{%p} " LOG_FN_FMT ": Request processing stalled for %s\n",
     530                  this, __PRETTY_FUNCTION__, aRequest->getGuest()->getVMName().c_str()));
    547531            /* Request execution got stalled for this guest -- report an error */
    548532            return E_FAIL;
     
    561545    HRESULT rc = S_OK;
    562546
    563     LogAleksey(("{%p} " LOG_FN_FMT ": Starting request processing loop...\n",
    564                 mgr, __PRETTY_FUNCTION__));
     547    Log7(("{%p} " LOG_FN_FMT ": Starting request processing loop...\n", mgr, __PRETTY_FUNCTION__));
    565548    while ((pReq = mgr->mQueue.pop()) != NULL)
    566549    {
     
    575558            break;
    576559        if (FAILED(rc))
    577             LogAleksey(("{%p} " LOG_FN_FMT ": request::execute returned %u\n",
    578                         mgr, __PRETTY_FUNCTION__, rc));
    579     }
    580     LogAleksey(("{%p} " LOG_FN_FMT ": Exiting request processing loop... rc=%u\n",
    581                         mgr, __PRETTY_FUNCTION__, rc));
     560            Log7(("{%p} " LOG_FN_FMT ": request::execute returned %u\n", mgr, __PRETTY_FUNCTION__, rc));
     561    }
     562    Log7(("{%p} " LOG_FN_FMT ": Exiting request processing loop... rc=%u\n", mgr, __PRETTY_FUNCTION__, rc));
    582563
    583564    return VINF_SUCCESS;
     
    968949    if (provider)
    969950    {
    970         LogAleksey(("{%p} " LOG_FN_FMT ": provider=%p enabled=%s valid=%s...\n",
    971                     this, __PRETTY_FUNCTION__, provider, provider->isEnabled()?"y":"n",
    972                     provider->isValid(VMSTATS_VMM_RAM)?"y":"n"));
     951        Log7(("{%p} " LOG_FN_FMT ": provider=%p enabled=%RTbool valid=%RTbool...\n",
     952              this, __PRETTY_FUNCTION__, provider, provider->isEnabled(), provider->isValid(VMSTATS_VMM_RAM) ));
    973953        if (provider->isValid(VMSTATS_VMM_RAM))
    974954        {
     
    993973        mSharedCurrent    = 0;
    994974    }
    995     LogAleksey(("{%p} " LOG_FN_FMT ": mAllocCurrent=%u mFreeCurrent=%u mBalloonedCurrent=%u mSharedCurrent=%u\n",
    996                 this, __PRETTY_FUNCTION__,
    997                 mAllocCurrent, mFreeCurrent, mBalloonedCurrent, mSharedCurrent));
     975    Log7(("{%p} " LOG_FN_FMT ": mAllocCurrent=%u mFreeCurrent=%u mBalloonedCurrent=%u mSharedCurrent=%u\n",
     976          this, __PRETTY_FUNCTION__, mAllocCurrent, mFreeCurrent, mBalloonedCurrent, mSharedCurrent));
    998977    mAllocVMM->put(mAllocCurrent);
    999978    mFreeVMM->put(mFreeCurrent);
     
    15321511    ElementList::const_iterator it;
    15331512
    1534     //LogAleksey(("Filter::match(%p, %s)\n", static_cast<const IUnknown*> (object), name.c_str()));
     1513    //Log7(("Filter::match(%p, %s)\n", static_cast<const IUnknown*> (object), name.c_str()));
    15351514    for (it = mElements.begin(); it != mElements.end(); ++it)
    15361515    {
    1537         //LogAleksey(("...matching against(%p, %s)\n", static_cast<const IUnknown*> ((*it).first), (*it).second.c_str()));
     1516        //Log7(("...matching against(%p, %s)\n", static_cast<const IUnknown*> ((*it).first), (*it).second.c_str()));
    15381517        if ((*it).first.isNull() || (*it).first == object)
    15391518        {
     
    15461525        }
    15471526    }
    1548     //LogAleksey(("...no matches!\n"));
     1527    //Log7(("...no matches!\n"));
    15491528    return false;
    15501529}
  • trunk/src/VBox/Main/src-server/PerformanceImpl.cpp

    r55769 r55988  
    582582
    583583    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
    584     LogAleksey(("{%p} " LOG_FN_FMT ": obj=%p name=%s\n", this, __PRETTY_FUNCTION__,
    585                 (void *)baseMetric->getObject(), baseMetric->getName()));
     584    Log7(("{%p} " LOG_FN_FMT ": obj=%p name=%s\n", this, __PRETTY_FUNCTION__,
     585          (void *)baseMetric->getObject(), baseMetric->getName()));
    586586    m.baseMetrics.push_back (baseMetric);
    587587    //LogFlowThisFuncLeave();
     
    595595
    596596    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
    597     LogAleksey(("{%p} " LOG_FN_FMT ": obj=%p name=%s\n", this, __PRETTY_FUNCTION__,
    598                 (void *)metric->getObject(), metric->getName()));
     597    Log7(("{%p} " LOG_FN_FMT ": obj=%p name=%s\n", this, __PRETTY_FUNCTION__, (void *)metric->getObject(), metric->getName()));
    599598    m.metrics.push_back (metric);
    600599    //LogFlowThisFuncLeave();
     
    618617            ++n;
    619618        }
    620     LogAleksey(("{%p} " LOG_FN_FMT ": obj=%p, name=%s, marked %d metrics\n",
    621                 this, __PRETTY_FUNCTION__, (void *)aObject, name.c_str(), n));
     619    Log7(("{%p} " LOG_FN_FMT ": obj=%p, name=%s, marked %d metrics\n",
     620          this, __PRETTY_FUNCTION__, (void *)aObject, name.c_str(), n));
    622621    //LogFlowThisFuncLeave();
    623622}
     
    632631
    633632    AutoWriteLock alock(this COMMA_LOCKVAL_SRC_POS);
    634     LogAleksey(("{%p} " LOG_FN_FMT ": obj=%p, name=%s\n", this,
    635                 __PRETTY_FUNCTION__, (void *)aObject, name.c_str()));
     633    Log7(("{%p} " LOG_FN_FMT ": obj=%p, name=%s\n", this, __PRETTY_FUNCTION__, (void *)aObject, name.c_str()));
    636634    MetricList::iterator it;
    637635    for (it = m.metrics.begin(); it != m.metrics.end();)
     
    756754     * Those should be destroyed now.
    757755     */
    758     LogAleksey(("{%p} " LOG_FN_FMT ": before remove_if: toBeCollected.size()=%d\n", this, __PRETTY_FUNCTION__,
    759                 toBeCollected.size()));
     756    Log7(("{%p} " LOG_FN_FMT ": before remove_if: toBeCollected.size()=%d\n", this, __PRETTY_FUNCTION__, toBeCollected.size()));
    760757    toBeCollected.remove_if(std::mem_fun(&pm::BaseMetric::isUnregistered));
    761     LogAleksey(("{%p} " LOG_FN_FMT ": after remove_if: toBeCollected.size()=%d\n", this, __PRETTY_FUNCTION__,
    762                 toBeCollected.size()));
    763     LogAleksey(("{%p} " LOG_FN_FMT ": before remove_if: m.baseMetrics.size()=%d\n", this, __PRETTY_FUNCTION__,
    764                 m.baseMetrics.size()));
     758    Log7(("{%p} " LOG_FN_FMT ": after remove_if: toBeCollected.size()=%d\n", this, __PRETTY_FUNCTION__, toBeCollected.size()));
     759    Log7(("{%p} " LOG_FN_FMT ": before remove_if: m.baseMetrics.size()=%d\n", this, __PRETTY_FUNCTION__, m.baseMetrics.size()));
    765760    for (it = m.baseMetrics.begin(); it != m.baseMetrics.end();)
    766761        if ((*it)->isUnregistered())
     
    771766        else
    772767            ++it;
    773     LogAleksey(("{%p} " LOG_FN_FMT ": after remove_if: m.baseMetrics.size()=%d\n", this, __PRETTY_FUNCTION__,
    774                 m.baseMetrics.size()));
     768    Log7(("{%p} " LOG_FN_FMT ": after remove_if: m.baseMetrics.size()=%d\n", this, __PRETTY_FUNCTION__, m.baseMetrics.size()));
    775769    /*
    776770     * Now when we have destroyed all base metrics that could
  • trunk/src/VBox/Main/src-server/VirtualBoxImpl.cpp

    r55839 r55988  
    803803            int vrc = RTThreadWait(m->threadAsyncEvent, 60000, NULL);
    804804            if (RT_FAILURE(vrc))
    805                 LogWarningFunc(("RTThreadWait(%RTthrd) -> %Rrc\n",
    806                                 m->threadAsyncEvent, vrc));
     805                Log1WarningFunc(("RTThreadWait(%RTthrd) -> %Rrc\n", m->threadAsyncEvent, vrc));
    807806        }
    808807        else
     
    20062005            const char *sep = error.isEmpty() ? "" : ": ";
    20072006            CBSTR err = error.raw();
    2008             LogWarningFunc(("Someone vetoed! Change refused%s%ls\n",
    2009                             sep, err));
     2007            Log1WarningFunc(("Someone vetoed! Change refused%s%ls\n", sep, err));
    20102008            return setError(E_ACCESSDENIED,
    20112009                            tr("Could not set extra data because someone refused the requested change of '%s' to '%s'%s%ls"),
     
    23042302    {
    23052303        if (getObjectState().getState() != ObjectState::Ready)
    2306             LogWarningFunc(("VirtualBox has been uninitialized (state=%d), the event is discarded!\n",
    2307                             getObjectState().getState()));
     2304            Log1WarningFunc(("VirtualBox has been uninitialized (state=%d), the event is discarded!\n",
     2305                             getObjectState().getState()));
    23082306            // return S_OK
    23092307        else if (    (m->pAsyncEventQ)
     
    48204818    if (!autoCaller.isOk())
    48214819    {
    4822         LogWarningFunc(("VirtualBox has been uninitialized (state=%d), the callback event is discarded!\n",
    4823                         mVirtualBox->getObjectState().getState()));
     4820        Log1WarningFunc(("VirtualBox has been uninitialized (state=%d), the callback event is discarded!\n",
     4821                         mVirtualBox->getObjectState().getState()));
    48244822        /* We don't need mVirtualBox any more, so release it */
    48254823        mVirtualBox = NULL;
  • trunk/src/VBox/Main/src-server/darwin/PerformanceDarwin.cpp

    r46328 r55988  
    130130static int getProcessInfo(RTPROCESS process, struct proc_taskinfo *tinfo)
    131131{
    132     LogAleksey(("getProcessInfo() getting info for %d", process));
     132    Log7(("getProcessInfo() getting info for %d", process));
    133133    int nb = proc_pidinfo(process, PROC_PIDTASKINFO, 0,  tinfo, sizeof(*tinfo));
    134134    if (nb <= 0)
  • trunk/src/VBox/NetworkServices/NetLib/VBoxNetBaseService.cpp

    r55365 r55988  
    473473                rc = RTThreadWait(m->m_hThrRecv, 60000, NULL);
    474474                if (RT_FAILURE(rc))
    475                     LogWarningFunc(("RTThreadWait(%RTthrd) -> %Rrc\n", m->m_hThrRecv, rc));
     475                    Log1WarningFunc(("RTThreadWait(%RTthrd) -> %Rrc\n", m->m_hThrRecv, rc));
    476476            }
    477477            else
  • trunk/src/VBox/Runtime/VBox/logbackdoor-redirect.cpp

    r55980 r55988  
    4444
    4545/* All release logging goes to the backdoor logger anyway. */
    46 RTDECL(PRTLOGGER) RTLogRelGetDefaultInstanceEx(uint32_t fFlags, uint32_t iGroup)
     46RTDECL(PRTLOGGER) RTLogRelGetDefaultInstanceEx(uint32_t fFlagsAndGroup)
    4747{
    4848    return NULL;
     
    5858
    5959/* All logging goes to the backdoor logger anyway. */
    60 RTDECL(PRTLOGGER) RTLogDefaultInstanceEx(uint32_t fFlags, uint32_t iGroup)
     60RTDECL(PRTLOGGER) RTLogDefaultInstanceEx(uint32_t fFlagsAndGroup)
    6161{
    6262    return NULL;
  • trunk/src/VBox/Runtime/common/log/log.cpp

    r55980 r55988  
    17881788            { "eo",         RTLOGGRPFLAGS_ENABLED },
    17891789            { "enabledonly",RTLOGGRPFLAGS_ENABLED },
    1790             { "e",          RTLOGGRPFLAGS_ENABLED | RTLOGGRPFLAGS_LEVEL_1 },
    1791             { "enabled",    RTLOGGRPFLAGS_ENABLED | RTLOGGRPFLAGS_LEVEL_1 },
     1790            { "e",          RTLOGGRPFLAGS_ENABLED | RTLOGGRPFLAGS_LEVEL_1 | RTLOGGRPFLAGS_WARN },
     1791            { "enabled",    RTLOGGRPFLAGS_ENABLED | RTLOGGRPFLAGS_LEVEL_1 | RTLOGGRPFLAGS_WARN },
    17921792            { "l1",         RTLOGGRPFLAGS_LEVEL_1 },
    17931793            { "level1",     RTLOGGRPFLAGS_LEVEL_1 },
     
    18031803            { "l6",         RTLOGGRPFLAGS_LEVEL_6 },
    18041804            { "level6",     RTLOGGRPFLAGS_LEVEL_6 },
     1805            { "l7",         RTLOGGRPFLAGS_LEVEL_7 },
     1806            { "level7",     RTLOGGRPFLAGS_LEVEL_7 },
     1807            { "l8",         RTLOGGRPFLAGS_LEVEL_8 },
     1808            { "level8",     RTLOGGRPFLAGS_LEVEL_8 },
     1809            { "l9",         RTLOGGRPFLAGS_LEVEL_9 },
     1810            { "level9",     RTLOGGRPFLAGS_LEVEL_9 },
     1811            { "l10",        RTLOGGRPFLAGS_LEVEL_10 },
     1812            { "level10",    RTLOGGRPFLAGS_LEVEL_10 },
     1813            { "l11",        RTLOGGRPFLAGS_LEVEL_11 },
     1814            { "level11",    RTLOGGRPFLAGS_LEVEL_11 },
     1815            { "l12",        RTLOGGRPFLAGS_LEVEL_12 },
     1816            { "level12",    RTLOGGRPFLAGS_LEVEL_12 },
    18051817            { "f",          RTLOGGRPFLAGS_FLOW },
    18061818            { "flow",       RTLOGGRPFLAGS_FLOW },
     1819            { "w",          RTLOGGRPFLAGS_WARN },
     1820            { "warn",       RTLOGGRPFLAGS_WARN },
     1821            { "warning",    RTLOGGRPFLAGS_WARN },
    18071822            { "restrict",   RTLOGGRPFLAGS_RESTRICT },
    18081823
    1809             { "lelik",      RTLOGGRPFLAGS_LELIK },
    1810             { "michael",    RTLOGGRPFLAGS_MICHAEL },
    1811             { "sunlover",   RTLOGGRPFLAGS_SUNLOVER },
    1812             { "achim",      RTLOGGRPFLAGS_ACHIM },
    1813             { "achimha",    RTLOGGRPFLAGS_ACHIM },
    1814             { "s",          RTLOGGRPFLAGS_SANDER },
    1815             { "sander",     RTLOGGRPFLAGS_SANDER },
    1816             { "sandervl",   RTLOGGRPFLAGS_SANDER },
    1817             { "klaus",      RTLOGGRPFLAGS_KLAUS },
    1818             { "frank",      RTLOGGRPFLAGS_FRANK },
    1819             { "b",          RTLOGGRPFLAGS_BIRD },
    1820             { "bird",       RTLOGGRPFLAGS_BIRD },
    1821             { "aleksey",    RTLOGGRPFLAGS_ALEKSEY },
    1822             { "dj",         RTLOGGRPFLAGS_DJ },
    1823             { "n",          RTLOGGRPFLAGS_NONAME },
    1824             { "noname",     RTLOGGRPFLAGS_NONAME }
    18251824        };
    18261825        unsigned    i;
     
    26152614
    26162615
    2617 RTDECL(PRTLOGGER)   RTLogDefaultInstanceEx(uint32_t fFlags, uint32_t iGroup)
     2616RTDECL(PRTLOGGER)   RTLogDefaultInstanceEx(uint32_t fFlagsAndGroup)
    26182617{
    26192618    PRTLOGGER pLogger = rtLogDefaultInstanceCommon();
     
    26222621        if (pLogger->fFlags & RTLOGFLAGS_DISABLED)
    26232622            pLogger = NULL;
    2624         else if (   iGroup != UINT32_MAX
     2623        else
     2624        {
     2625            uint16_t const fFlags = RT_LO_U16(fFlagsAndGroup);
     2626            uint16_t const iGroup = RT_HI_U16(fFlagsAndGroup);
     2627            if (   iGroup != UINT16_MAX
    26252628                 && (   (pLogger->afGroups[iGroup < pLogger->cGroups ? iGroup : 0] & (fFlags | RTLOGGRPFLAGS_ENABLED))
    26262629                     != (fFlags | RTLOGGRPFLAGS_ENABLED)))
    26272630            pLogger = NULL;
     2631        }
    26282632    }
    26292633    return pLogger;
     
    26662670
    26672671
    2668 RTDECL(PRTLOGGER) RTLogGetDefaultInstanceEx(uint32_t fFlags, uint32_t iGroup)
     2672RTDECL(PRTLOGGER) RTLogGetDefaultInstanceEx(uint32_t fFlagsAndGroup)
    26692673{
    26702674    PRTLOGGER pLogger = rtLogGetDefaultInstanceCommon();
     
    26732677        if (pLogger->fFlags & RTLOGFLAGS_DISABLED)
    26742678            pLogger = NULL;
    2675         else if (   iGroup != UINT32_MAX
     2679        else
     2680        {
     2681            uint16_t const fFlags = RT_LO_U16(fFlagsAndGroup);
     2682            uint16_t const iGroup = RT_HI_U16(fFlagsAndGroup);
     2683            if (   iGroup != UINT16_MAX
    26762684                 && (   (pLogger->afGroups[iGroup < pLogger->cGroups ? iGroup : 0] & (fFlags | RTLOGGRPFLAGS_ENABLED))
    26772685                     != (fFlags | RTLOGGRPFLAGS_ENABLED)))
    26782686            pLogger = NULL;
     2687        }
    26792688    }
    26802689    return pLogger;
     
    37583767                        case RTLOGGRPFLAGS_LEVEL_5:     pszGroup = "level 5" ;  cch = sizeof("level 5" ) - 1; break;
    37593768                        case RTLOGGRPFLAGS_LEVEL_6:     pszGroup = "level 6" ;  cch = sizeof("level 6" ) - 1; break;
     3769                        case RTLOGGRPFLAGS_LEVEL_7:     pszGroup = "level 7" ;  cch = sizeof("level 7" ) - 1; break;
     3770                        case RTLOGGRPFLAGS_LEVEL_8:     pszGroup = "level 8" ;  cch = sizeof("level 8" ) - 1; break;
     3771                        case RTLOGGRPFLAGS_LEVEL_9:     pszGroup = "level 9" ;  cch = sizeof("level 9" ) - 1; break;
     3772                        case RTLOGGRPFLAGS_LEVEL_10:    pszGroup = "level 10";  cch = sizeof("level 10") - 1; break;
     3773                        case RTLOGGRPFLAGS_LEVEL_11:    pszGroup = "level 11";  cch = sizeof("level 11") - 1; break;
     3774                        case RTLOGGRPFLAGS_LEVEL_12:    pszGroup = "level 12";  cch = sizeof("level 12") - 1; break;
    37603775                        case RTLOGGRPFLAGS_FLOW:        pszGroup = "flow"    ;  cch = sizeof("flow"    ) - 1; break;
    3761 
    3762                         /* personal groups */
    3763                         case RTLOGGRPFLAGS_LELIK:       pszGroup = "lelik"   ;  cch = sizeof("lelik"   ) - 1; break;
    3764                         case RTLOGGRPFLAGS_MICHAEL:     pszGroup = "Michael" ;  cch = sizeof("Michael" ) - 1; break;
    3765                         case RTLOGGRPFLAGS_SUNLOVER:    pszGroup = "sunlover";  cch = sizeof("sunlover") - 1; break;
    3766                         case RTLOGGRPFLAGS_ACHIM:       pszGroup = "Achim"   ;  cch = sizeof("Achim"   ) - 1; break;
    3767                         case RTLOGGRPFLAGS_SANDER:      pszGroup = "Sander"  ;  cch = sizeof("Sander"  ) - 1; break;
    3768                         case RTLOGGRPFLAGS_KLAUS:       pszGroup = "Klaus"   ;  cch = sizeof("Klaus"   ) - 1; break;
    3769                         case RTLOGGRPFLAGS_FRANK:       pszGroup = "Frank"   ;  cch = sizeof("Frank"   ) - 1; break;
    3770                         case RTLOGGRPFLAGS_BIRD:        pszGroup = "bird"    ;  cch = sizeof("bird"    ) - 1; break;
    3771                         case RTLOGGRPFLAGS_NONAME:      pszGroup = "noname"  ;  cch = sizeof("noname"  ) - 1; break;
     3776                        case RTLOGGRPFLAGS_WARN:        pszGroup = "warn"    ;  cch = sizeof("warn"    ) - 1; break;
    37723777                        default:                        pszGroup = "????????";  cch = sizeof("????????") - 1; break;
    37733778                    }
  • trunk/src/VBox/Runtime/common/log/logrel.cpp

    r55980 r55988  
    8181
    8282
    83 RTDECL(PRTLOGGER)   RTLogRelGetDefaultInstanceEx(uint32_t fFlags, uint32_t iGroup)
     83RTDECL(PRTLOGGER)   RTLogRelGetDefaultInstanceEx(uint32_t fFlagsAndGroup)
    8484{
    8585#ifdef IN_RC
     
    9292        if (pLogger->fFlags & RTLOGFLAGS_DISABLED)
    9393            pLogger = NULL;
    94         else if (   iGroup != UINT32_MAX
     94        else
     95        {
     96            uint16_t const fFlags = RT_LO_U16(fFlagsAndGroup);
     97            uint16_t const iGroup = RT_HI_U16(fFlagsAndGroup);
     98            if (   iGroup != UINT16_MAX
    9599                 && (   (pLogger->afGroups[iGroup < pLogger->cGroups ? iGroup : 0] & (fFlags | RTLOGGRPFLAGS_ENABLED))
    96100                     != (fFlags | RTLOGGRPFLAGS_ENABLED)))
    97101            pLogger = NULL;
     102        }
    98103    }
    99104    return pLogger;
  • trunk/src/VBox/VMM/VMMAll/PDMAllCritSect.cpp

    r50000 r55988  
    615615        if (hEventToSignal != NIL_RTSEMEVENT)
    616616        {
    617             LogBird(("Signalling %#x\n", hEventToSignal));
     617            Log8(("Signalling %#x\n", hEventToSignal));
    618618            int rc = RTSemEventSignal(hEventToSignal);
    619619            AssertRC(rc);
  • trunk/src/VBox/VMM/VMMAll/PGMAllBth.h

    r55979 r55988  
    631631                          ? &pVCpu->pgm.s.CTX_SUFF(pStats)->StatRZTrap0eTime2DirtyAndAccessed
    632632                          : &pVCpu->pgm.s.CTX_SUFF(pStats)->StatRZTrap0eTime2GuestTrap; });
    633             LogBird(("Trap0eHandler: returns VINF_SUCCESS\n"));
     633            Log8(("Trap0eHandler: returns VINF_SUCCESS\n"));
    634634            return VINF_SUCCESS;
    635635        }
  • trunk/src/recompiler/VBoxREMWrapper.cpp

    r55980 r55988  
    10861086static const REMPARMDESC g_aArgsRTLogGetDefaultInstanceEx[] =
    10871087{
    1088     { REMPARMDESC_FLAGS_INT,        sizeof(uint32_t),           NULL },
    10891088    { REMPARMDESC_FLAGS_INT,        sizeof(uint32_t),           NULL }
    10901089};
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette