VirtualBox

Changeset 25536 in vbox for trunk


Ignore:
Timestamp:
Dec 21, 2009 11:06:08 AM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
56209
Message:

iprt/assert.h: Added RTAssertMsg2Add[Weak][V] for dumping the lock deadlock chain and stacks. Added the missing internal/assert.h file to the linux and freebsd kernel source trees.

Location:
trunk
Files:
19 edited
3 copied

Legend:

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

    r25528 r25536  
    128128RTDECL(void)    RTAssertMsg2WeakV(const char *pszFormat, va_list va);
    129129
     130/**
     131 * Additional information which should be appended to the 2nd part of an
     132 * assertion message.
     133 *
     134 * @param   pszFormat   Printf like format string.
     135 * @param   ...         Arguments to that string.
     136 */
     137RTDECL(void)    RTAssertMsg2Add(const char *pszFormat, ...);
     138/**
     139 * Weak version of RTAssertMsgAdd2 that forwards to RTAssertMsg2AddWeakV.
     140 *
     141 * There is not need to override this, check out RTAssertMsg2AddWeakV instead!
     142 *
     143 * @copydoc RTAssertMsgAdd2
     144 */
     145RTDECL(void)    RTAssertMsg2AddWeak(const char *pszFormat, ...);
     146
     147/**
     148 * Additional information which should be appended to the 2nd part of an
     149 * assertion message.
     150 *
     151 * @param   pszFormat   Printf like format string.
     152 * @param   va          Arguments to that string.
     153 */
     154RTDECL(void)    RTAssertMsg2AddV(const char *pszFormat, va_list va);
     155/**
     156 * Weak version of RTAssertMsg2AddV that can be overridden locally in a module
     157 * to modify, redirect or otherwise mess with the assertion output.
     158 *
     159 * @copydoc RTAssertMsg2AddV
     160 */
     161RTDECL(void)    RTAssertMsg2AddWeakV(const char *pszFormat, va_list va);
     162
    130163#ifdef IN_RING0
    131164/**
     
    194227extern RTDATADECL(char)                     g_szRTAssertMsg1[1024];
    195228/** The last assert message, 2nd part. */
    196 extern RTDATADECL(char)                     g_szRTAssertMsg2[2048];
     229extern RTDATADECL(char)                     g_szRTAssertMsg2[4096];
    197230/** The last assert message, expression. */
    198231extern RTDATADECL(const char * volatile)    g_pszRTAssertExpr;
  • trunk/src/VBox/Additions/common/VBoxGuest/linux/Makefile

    r25532 r25536  
    105105        common/misc/RTAssertMsg1Weak.o \
    106106        common/misc/RTAssertMsg2.o \
     107        common/misc/RTAssertMsg2Add.o \
     108        common/misc/RTAssertMsg2AddWeak.o \
     109        common/misc/RTAssertMsg2AddWeakV.o \
    107110        common/misc/RTAssertMsg2Weak.o \
    108111        common/misc/RTAssertMsg2WeakV.o \
  • trunk/src/VBox/Additions/common/VBoxGuest/linux/files_vboxguest

    r25532 r25536  
    7575    ${PATH_ROOT}/src/VBox/Additions/common/VBoxGuestLib/VBoxGuestLog.h=>VBoxGuestLog.h \
    7676    ${PATH_ROOT}/src/VBox/Additions/common/VBoxGuestLib/VMMDev.cpp=>VMMDev.c \
     77    ${PATH_ROOT}/src/VBox/Runtime/include/internal/assert.h=>include/internal/assert.h \
    7778    ${PATH_ROOT}/src/VBox/Runtime/include/internal/initterm.h=>include/internal/initterm.h \
    7879    ${PATH_ROOT}/src/VBox/Runtime/include/internal/iprt.h=>include/internal/iprt.h \
     
    99100    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg1Weak.cpp=>common/misc/RTAssertMsg1Weak.c \
    100101    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2.cpp=>common/misc/RTAssertMsg2.c \
     102    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2Add.cpp=>common/misc/RTAssertMsg2Add.c \
     103    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2AddWeak.cpp=>common/misc/RTAssertMsg2AddWeak.c \
     104    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2AddWeakV.cpp=>common/misc/RTAssertMsg2AddWeakV.c \
    101105    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2Weak.cpp=>common/misc/RTAssertMsg2Weak.c \
    102106    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2WeakV.cpp=>common/misc/RTAssertMsg2WeakV.c \
  • trunk/src/VBox/HostDrivers/Support/freebsd/Makefile

    r25532 r25536  
    7575        RTAssertMsg1Weak.c \
    7676        RTAssertMsg2.c \
     77        RTAssertMsg2Add.c \
     78        RTAssertMsg2AddWeak.c \
     79        RTAssertMsg2AddWeakV.c \
    7780        RTAssertMsg2Weak.c \
    7881        RTAssertMsg2WeakV.c \
  • trunk/src/VBox/HostDrivers/Support/freebsd/files_vboxdrv

    r25532 r25536  
    9393    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg1Weak.cpp=>common/misc/RTAssertMsg1Weak.c \
    9494    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2.cpp=>common/misc/RTAssertMsg2.c \
     95    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2Add.cpp=>common/misc/RTAssertMsg2Add.c \
     96    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2AddWeak.cpp=>common/misc/RTAssertMsg2AddWeak.c \
     97    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2AddWeakV.cpp=>common/misc/RTAssertMsg2AddWeakV.c \
    9598    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2Weak.cpp=>common/misc/RTAssertMsg2Weak.c \
    9699    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2WeakV.cpp=>common/misc/RTAssertMsg2WeakV.c \
     
    121124    ${PATH_ROOT}/src/VBox/Runtime/common/table/avl_DoWithAll.cpp.h=>common/table/avl_DoWithAll.cpp.h \
    122125    ${PATH_ROOT}/src/VBox/Runtime/common/table/avl_Destroy.cpp.h=>common/table/avl_Destroy.cpp.h \
     126    ${PATH_ROOT}/src/VBox/Runtime/include/internal/assert.h=>include/internal/assert.h \
    123127    ${PATH_ROOT}/src/VBox/Runtime/include/internal/initterm.h=>include/internal/initterm.h \
    124128    ${PATH_ROOT}/src/VBox/Runtime/include/internal/iprt.h=>include/internal/iprt.h \
  • trunk/src/VBox/HostDrivers/Support/linux/Makefile

    r25532 r25536  
    110110        common/misc/RTAssertMsg1Weak.o \
    111111        common/misc/RTAssertMsg2.o \
     112        common/misc/RTAssertMsg2Add.o \
     113        common/misc/RTAssertMsg2AddWeak.o \
     114        common/misc/RTAssertMsg2AddWeakV.o \
    112115        common/misc/RTAssertMsg2Weak.o \
    113116        common/misc/RTAssertMsg2WeakV.o \
  • trunk/src/VBox/HostDrivers/Support/linux/files_vboxdrv

    r25532 r25536  
    9191    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg1Weak.cpp=>common/misc/RTAssertMsg1Weak.c \
    9292    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2.cpp=>common/misc/RTAssertMsg2.c \
     93    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2Add.cpp=>common/misc/RTAssertMsg2Add.c \
     94    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2AddWeak.cpp=>common/misc/RTAssertMsg2AddWeak.c \
     95    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2AddWeakV.cpp=>common/misc/RTAssertMsg2AddWeakV.c \
    9396    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2Weak.cpp=>common/misc/RTAssertMsg2Weak.c \
    9497    ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2WeakV.cpp=>common/misc/RTAssertMsg2WeakV.c \
     
    102105    ${PATH_ROOT}/src/VBox/Runtime/common/string/strprintf.cpp=>common/string/strprintf.c \
    103106    ${PATH_ROOT}/src/VBox/Runtime/common/string/strtonum.cpp=>common/string/strtonum.c \
     107    ${PATH_ROOT}/src/VBox/Runtime/include/internal/assert.h=>include/internal/assert.h \
    104108    ${PATH_ROOT}/src/VBox/Runtime/include/internal/initterm.h=>include/internal/initterm.h \
    105109    ${PATH_ROOT}/src/VBox/Runtime/include/internal/iprt.h=>include/internal/iprt.h \
  • trunk/src/VBox/HostDrivers/VBoxNetAdp/freebsd/files_vboxnetadp

    r23526 r25536  
    7171    ${PATH_ROOT}/src/VBox/HostDrivers/VBoxNetAdp/VBoxNetAdp.c=>VBoxNetAdp.c \
    7272    ${PATH_ROOT}/src/VBox/HostDrivers/VBoxNetAdp/VBoxNetAdpInternal.h=>VBoxNetAdpInternal.h \
    73     ${PATH_ROOT}/src/VBox/Runtime/include/internal/initterm.h=>include/internal/initterm.h \
    74     ${PATH_ROOT}/src/VBox/Runtime/include/internal/iprt.h=>include/internal/iprt.h \
    75     ${PATH_ROOT}/src/VBox/Runtime/include/internal/magics.h=>include/internal/magics.h \
    7673    ${PATH_ROOT}/src/VBox/Runtime/r0drv/freebsd/the-freebsd-kernel.h=>r0drv/freebsd/the-freebsd-kernel.h \
    7774    ${PATH_OUT}/version-generated.h=>version-generated.h \
  • trunk/src/VBox/HostDrivers/VBoxNetFlt/freebsd/files_vboxnetflt

    r23526 r25536  
    7676    ${PATH_ROOT}/src/VBox/HostDrivers/Support/SUPR0IdcClientInternal.h=>SUPR0IdcClientInternal.h \
    7777    ${PATH_ROOT}/src/VBox/HostDrivers/Support/freebsd/SUPR0IdcClient-freebsd.c=>SUPR0IdcClient-freebsd.c \
    78     ${PATH_ROOT}/src/VBox/Runtime/include/internal/initterm.h=>include/internal/initterm.h \
    79     ${PATH_ROOT}/src/VBox/Runtime/include/internal/iprt.h=>include/internal/iprt.h \
    80     ${PATH_ROOT}/src/VBox/Runtime/include/internal/magics.h=>include/internal/magics.h \
    8178    ${PATH_ROOT}/src/VBox/Runtime/r0drv/freebsd/the-freebsd-kernel.h=>r0drv/freebsd/the-freebsd-kernel.h \
    8279    ${PATH_OUT}/version-generated.h=>version-generated.h \
  • trunk/src/VBox/HostDrivers/VBoxNetFlt/linux/files_vboxnetflt

    r23473 r25536  
    7272    ${PATH_ROOT}/src/VBox/Runtime/common/math/gcc/udivdi3.c=>math/gcc/udivdi3.c \
    7373    ${PATH_ROOT}/src/VBox/Runtime/common/math/gcc/umoddi3.c=>math/gcc/umoddi3.c \
    74     ${PATH_ROOT}/src/VBox/Runtime/include/internal/initterm.h=>include/internal/initterm.h \
    75     ${PATH_ROOT}/src/VBox/Runtime/include/internal/iprt.h=>include/internal/iprt.h \
    76     ${PATH_ROOT}/src/VBox/Runtime/include/internal/magics.h=>include/internal/magics.h \
    7774    ${PATH_ROOT}/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h=>r0drv/linux/the-linux-kernel.h \
    7875    ${PATH_OUT}/version-generated.h=>version-generated.h \
  • trunk/src/VBox/Runtime/Makefile.kmk

    r25528 r25536  
    235235        common/log/logformat.cpp \
    236236        common/misc/RTAssertMsg1Weak.cpp \
     237        common/misc/RTAssertMsg2.cpp \
     238        common/misc/RTAssertMsg2Add.cpp \
     239        common/misc/RTAssertMsg2AddWeak.cpp \
     240        common/misc/RTAssertMsg2AddWeakV.cpp \
    237241        common/misc/RTAssertMsg2Weak.cpp \
    238242        common/misc/RTAssertMsg2WeakV.cpp \
    239         common/misc/RTAssertMsg2.cpp \
    240243        common/misc/assert.cpp \
    241244        common/misc/buildconfig.cpp \
     
    792795        common/log/logformat.cpp \
    793796        common/misc/RTAssertMsg1Weak.cpp \
     797        common/misc/RTAssertMsg2.cpp \
     798        common/misc/RTAssertMsg2Add.cpp \
     799        common/misc/RTAssertMsg2AddWeak.cpp \
     800        common/misc/RTAssertMsg2AddWeakV.cpp \
    794801        common/misc/RTAssertMsg2Weak.cpp \
    795802        common/misc/RTAssertMsg2WeakV.cpp \
    796         common/misc/RTAssertMsg2.cpp \
    797803        common/misc/assert.cpp \
    798804        common/misc/buildconfig.cpp \
     
    10881094        common/log/logformat.cpp \
    10891095        common/misc/RTAssertMsg1Weak.cpp \
     1096        common/misc/RTAssertMsg2.cpp \
     1097        common/misc/RTAssertMsg2Add.cpp \
     1098        common/misc/RTAssertMsg2AddWeak.cpp \
     1099        common/misc/RTAssertMsg2AddWeakV.cpp \
    10901100        common/misc/RTAssertMsg2Weak.cpp \
    10911101        common/misc/RTAssertMsg2WeakV.cpp \
    1092         common/misc/RTAssertMsg2.cpp \
    10931102        common/misc/buildconfig.cpp \
    10941103        common/misc/handletable.cpp \
     
    11961205        common/log/logformat.cpp \
    11971206        common/misc/RTAssertMsg1Weak.cpp \
     1207        common/misc/RTAssertMsg2.cpp \
     1208        common/misc/RTAssertMsg2Add.cpp \
     1209        common/misc/RTAssertMsg2AddWeak.cpp \
     1210        common/misc/RTAssertMsg2AddWeakV.cpp \
    11981211        common/misc/RTAssertMsg2Weak.cpp \
    11991212        common/misc/RTAssertMsg2WeakV.cpp \
    1200         common/misc/RTAssertMsg2.cpp \
    12011213        common/misc/assert.cpp \
    12021214        common/misc/buildconfig.cpp \
     
    15251537        common/log/logformat.cpp \
    15261538        common/misc/RTAssertMsg1Weak.cpp \
     1539        common/misc/RTAssertMsg2.cpp \
     1540        common/misc/RTAssertMsg2Add.cpp \
     1541        common/misc/RTAssertMsg2AddWeak.cpp \
     1542        common/misc/RTAssertMsg2AddWeakV.cpp \
    15271543        common/misc/RTAssertMsg2Weak.cpp \
    15281544        common/misc/RTAssertMsg2WeakV.cpp \
    1529         common/misc/RTAssertMsg2.cpp \
    15301545        common/misc/assert.cpp \
    15311546        common/misc/buildconfig.cpp \
  • trunk/src/VBox/Runtime/common/misc/RTAssertMsg2Add.cpp

    r25534 r25536  
    11/* $Id$ */
    22/** @file
    3  * IPRT - RTAssertMsg2.
     3 * IPRT - RTAssertMsg2Add.
    44 */
    55
    66/*
    7  * Copyright (C) 2008 Sun Microsystems, Inc.
     7 * Copyright (C) 2008-2009 Sun Microsystems, Inc.
    88 *
    99 * This file is part of VirtualBox Open Source Edition (OSE), as
     
    3939
    4040
    41 RTDECL(void) RTAssertMsg2(const char *pszFormat, ...)
     41RTDECL(void) RTAssertMsg2Add(const char *pszFormat, ...)
    4242{
    4343    va_list va;
    4444    va_start(va, pszFormat);
    45     RTAssertMsg2V(pszFormat, va);
     45    RTAssertMsg2AddV(pszFormat, va);
    4646    va_end(va);
    4747}
    48 RT_EXPORT_SYMBOL(RTAssertMsg2);
     48RT_EXPORT_SYMBOL(RTAssertMsg2Add);
    4949
  • trunk/src/VBox/Runtime/common/misc/RTAssertMsg2AddWeak.cpp

    r25534 r25536  
    11/* $Id$ */
    22/** @file
    3  * IPRT - RTAssertMsg2Weak.
     3 * IPRT - RTAssertMsg2AddWeak.
    44 */
    55
     
    3939
    4040
    41 RTDECL(void) RTAssertMsg2Weak(const char *pszFormat, ...)
     41RTDECL(void) RTAssertMsg2AddWeak(const char *pszFormat, ...)
    4242{
    4343    va_list va;
    4444    va_start(va, pszFormat);
    45     RTAssertMsg2WeakV(pszFormat, va);
     45    RTAssertMsg2AddWeakV(pszFormat, va);
    4646    va_end(va);
    4747}
    48 RT_EXPORT_SYMBOL(RTAssertMsg2Weak);
     48RT_EXPORT_SYMBOL(RTAssertMsg2AddWeak);
    4949
  • trunk/src/VBox/Runtime/common/misc/RTAssertMsg2AddWeakV.cpp

    r25534 r25536  
    11/* $Id$ */
    22/** @file
    3  * IPRT - RTAssertMsg2WeakV.
     3 * IPRT - RTAssertMsg2AddWeakV.
    44 */
    55
     
    3737
    3838
    39 RTDECL(void) RTAssertMsg2WeakV(const char *pszFormat, va_list va)
     39RTDECL(void) RTAssertMsg2AddWeakV(const char *pszFormat, va_list va)
    4040{
    41     RTAssertMsg2V(pszFormat, va);
     41    RTAssertMsg2AddV(pszFormat, va);
    4242}
    43 RT_EXPORT_SYMBOL(RTAssertMsg2WeakV);
     43RT_EXPORT_SYMBOL(RTAssertMsg2AddWeakV);
    4444
  • trunk/src/VBox/Runtime/common/misc/assert.cpp

    r25528 r25536  
    5353RT_EXPORT_SYMBOL(g_szRTAssertMsg1);
    5454/** The last assert message, 2nd part. */
    55 RTDATADECL(char)                    g_szRTAssertMsg2[2048];
     55RTDATADECL(char)                    g_szRTAssertMsg2[4096];
    5656RT_EXPORT_SYMBOL(g_szRTAssertMsg2);
     57/** The length of the g_szRTAssertMsg2 content.
     58 * @remarks Race.  */
     59static uint32_t volatile            g_cchRTAssertMsg2;
    5760/** The last assert message, expression. */
    5861RTDATADECL(const char * volatile)   g_pszRTAssertExpr;
     
    188191
    189192
    190 RTDECL(void) RTAssertMsg2V(const char *pszFormat, va_list va)
     193/**
     194 * Worker for RTAssertMsg2V and RTAssertMsg2AddV
     195 *
     196 * @param   fInitial            True if it's RTAssertMsg2V, otherwise false.
     197 * @param   pszFormat           The message format string.
     198 * @param   va                  The format arguments.
     199 */
     200static void rtAssertMsg2Worker(bool fInitial, const char *pszFormat, va_list va)
    191201{
    192202    va_list vaCopy;
     203    size_t  cch;
    193204
    194205    /*
    195206     * The global first.
    196207     */
    197     va_copy(vaCopy, va);
    198     RTStrPrintfV(g_szRTAssertMsg2, sizeof(g_szRTAssertMsg2), pszFormat, vaCopy);
    199     va_end(vaCopy);
     208    if (fInitial)
     209    {
     210        va_copy(vaCopy, va);
     211        cch = RTStrPrintfV(g_szRTAssertMsg2, sizeof(g_szRTAssertMsg2), pszFormat, vaCopy);
     212        ASMAtomicWriteU32(&g_cchRTAssertMsg2, (uint32_t)cch);
     213        va_end(vaCopy);
     214    }
     215    else
     216    {
     217        cch = ASMAtomicReadU32(&g_cchRTAssertMsg2);
     218        if (cch < sizeof(g_szRTAssertMsg2) - 4)
     219        {
     220            va_copy(vaCopy, va);
     221            cch += RTStrPrintfV(&g_szRTAssertMsg2[cch], sizeof(g_szRTAssertMsg2) - cch, pszFormat, vaCopy);
     222            ASMAtomicWriteU32(&g_cchRTAssertMsg2, (uint32_t)cch);
     223            va_end(vaCopy);
     224        }
     225    }
    200226
    201227    /*
     
    211237# endif
    212238        /** @todo fully integrate this with the logger... play safe a bit for now.  */
    213         rtR0AssertNativeMsg2V(pszFormat, va);
     239        rtR0AssertNativeMsg2V(fInitial, pszFormat, va);
    214240
    215241#else  /* !IN_RING0 */
     
    255281
    256282}
     283
     284
     285RTDECL(void) RTAssertMsg2V(const char *pszFormat, va_list va)
     286{
     287    rtAssertMsg2Worker(true /*fInitial*/, pszFormat, va);
     288}
    257289RT_EXPORT_SYMBOL(RTAssertMsg2V);
    258290
     291
     292RTDECL(void) RTAssertMsg2AddV(const char *pszFormat, va_list va)
     293{
     294    rtAssertMsg2Worker(false /*fInitial*/, pszFormat, va);
     295}
     296RT_EXPORT_SYMBOL(RTAssertMsg2AddV);
     297
  • trunk/src/VBox/Runtime/include/internal/assert.h

    r25528 r25536  
    5353 * facility is best fitting.
    5454 *
     55 * @param   fInitial    Whether it's the initial (true) or an additional (false)
     56 *                      message.
    5557 * @param   pszFormat   Printf like format string.
    5658 * @param   va          Arguments to that string.
    5759 */
    58 void rtR0AssertNativeMsg2V(const char *pszFormat, va_list va);
     60void rtR0AssertNativeMsg2V(bool fInitial, const char *pszFormat, va_list va);
    5961
    6062#endif
  • trunk/src/VBox/Runtime/r0drv/darwin/assert-r0drv-darwin.cpp

    r25528 r25536  
    5454
    5555
    56 void rtR0AssertNativeMsg2V(const char *pszFormat, va_list va)
     56void rtR0AssertNativeMsg2V(bool fInitial, const char *pszFormat, va_list va)
    5757{
    5858    char szMsg[256];
     
    6161    szMsg[sizeof(szMsg) - 1] = '\0';
    6262    printf("%s", szMsg);
     63
     64    NOREF(fInitial);
    6365}
    6466
  • trunk/src/VBox/Runtime/r0drv/freebsd/assert-r0drv-freebsd.c

    r25533 r25536  
    5151
    5252
    53 void rtR0AssertNativeMsg2V(const char *pszFormat, va_list va)
     53void rtR0AssertNativeMsg2V(bool fInitial, const char *pszFormat, va_list va)
    5454{
    5555    char szMsg[256];
     
    5858    szMsg[sizeof(szMsg) - 1] = '\0';
    5959    printf("%s", szMsg);
     60
     61    NOREF(fInitial);
    6062}
    6163
  • trunk/src/VBox/Runtime/r0drv/linux/assert-r0drv-linux.c

    r25530 r25536  
    5454
    5555
    56 void rtR0AssertNativeMsg2V(const char *pszFormat, va_list va)
     56void rtR0AssertNativeMsg2V(bool fInitial, const char *pszFormat, va_list va)
    5757{
    5858    char szMsg[256];
     
    6161    szMsg[sizeof(szMsg) - 1] = '\0';
    6262    printk("%s", szMsg);
     63
     64    NOREF(fInitial);
    6365}
    6466
  • trunk/src/VBox/Runtime/r0drv/nt/assert-r0drv-nt.cpp

    r25533 r25536  
    5151
    5252
    53 void rtR0AssertNativeMsg2V(const char *pszFormat, va_list va)
     53void rtR0AssertNativeMsg2V(bool fInitial, const char *pszFormat, va_list va)
    5454{
    5555    char szMsg[256];
     
    5858    szMsg[sizeof(szMsg) - 1] = '\0';
    5959    DbgPrint("%s", szMsg);
     60
     61    NOREF(fInitial);
    6062}
    6163
  • trunk/src/VBox/Runtime/r0drv/os2/assert-r0drv-os2.cpp

    r25533 r25536  
    7575
    7676
    77 void rtR0AssertNativeMsg2V(const char *pszFormat, va_list va)
     77void rtR0AssertNativeMsg2V(bool fInitial, const char *pszFormat, va_list va)
    7878{
    7979#if defined(DEBUG_bird)
     
    8888    cch += RTStrFormatV(rtR0Os2AssertOutputCB, &pch, NULL, NULL, pszFormat, va);
    8989    g_cchRTAssertMsg = cch;
     90
     91    NOREF(fInitial);
    9092}
    9193
  • trunk/src/VBox/Runtime/r0drv/solaris/assert-r0drv-solaris.c

    r25531 r25536  
    5454
    5555
    56 void rtR0AssertNativeMsg2V(const char *pszFormat, va_list va)
     56void rtR0AssertNativeMsg2V(bool fInitial, const char *pszFormat, va_list va)
    5757{
    5858    char szMsg[256];
     
    6161    szMsg[sizeof(szMsg) - 1] = '\0';
    6262    uprintf("%s", szMsg);
     63
     64    NOREF(fInitial);
    6365}
    6466
Note: See TracChangeset for help on using the changeset viewer.

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