VirtualBox

Changeset 30112 in vbox for trunk/src/VBox/HostDrivers


Ignore:
Timestamp:
Jun 9, 2010 12:31:50 PM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
62507
Message:

iprt/asm.h,*: Added ASMAtomicWriteNullPtr and ASMAtomicUoWriteNullPtr to better deal with NULL being 0 in C++.

Location:
trunk/src/VBox/HostDrivers
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/HostDrivers/Support/SUPLib.cpp

    r30111 r30112  
    508508        if (g_pSUPGlobalInfoPage)
    509509        {
    510             ASMAtomicWritePtr((void * volatile *)&g_pSUPGlobalInfoPage, NULL);
    511             ASMAtomicWritePtr((void * volatile *)&g_pSUPGlobalInfoPageR0, NULL);
     510            ASMAtomicWriteNullPtr((void * volatile *)&g_pSUPGlobalInfoPage);
     511            ASMAtomicWriteNullPtr((void * volatile *)&g_pSUPGlobalInfoPageR0);
    512512            ASMAtomicWriteSize(&g_HCPhysSUPGlobalInfoPage, NIL_RTHCPHYS);
    513513            /* just a little safe guard against threads using the page. */
  • trunk/src/VBox/HostDrivers/Support/SUPSvcGrant.cpp

    r30111 r30112  
    975975    unsigned cSessions = 0;
    976976    for (PSUPSVCGRANTSESSION pCur = pThis->pSessionHead; pCur; pCur = pCur->pNext)
    977         ASMAtomicWritePtr(&pCur->pParent, NULL);
     977        ASMAtomicWriteNullPtr(&pCur->pParent);
    978978
    979979    RTCritSectLeave(&pThis->CritSect);
  • trunk/src/VBox/HostDrivers/VBoxNetFlt/darwin/VBoxNetFlt-darwin.cpp

    r30111 r30112  
    669669    int cPromisc = VALID_PTR(pIfNet) ? VBOX_GET_PCOUNT(pIfNet) : - 1;
    670670
    671     ASMAtomicUoWritePtr(&pThis->u.s.pIfNet, NULL);
    672     ASMAtomicUoWritePtr(&pThis->u.s.pIfFilter, NULL);
     671    ASMAtomicUoWriteNullPtr(&pThis->u.s.pIfNet);
     672    ASMAtomicUoWriteNullPtr(&pThis->u.s.pIfFilter);
    673673    ASMAtomicWriteBool(&pThis->u.s.fNeedSetPromiscuous, false);
    674674    pThis->u.s.fSetPromiscuous = false;
     
    11641164    pIfFilter = ASMAtomicUoReadPtrT(&pThis->u.s.pIfFilter, interface_filter_t);
    11651165    if (pIfFilter)
    1166         ASMAtomicUoWritePtr(&pThis->u.s.pIfFilter, NULL);
     1166        ASMAtomicUoWriteNullPtr(&pThis->u.s.pIfFilter);
    11671167    RTSpinlockReleaseNoInts(pThis->hSpinlock, &Tmp);
    11681168
  • trunk/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c

    r30111 r30112  
    651651    pPriv = qdisc_priv(pQdisc);
    652652    Assert(pPriv->pVBoxNetFlt == pThis);
    653     ASMAtomicWritePtr(&pPriv->pVBoxNetFlt, NULL);
     653    ASMAtomicWriteNullPtr(&pPriv->pVBoxNetFlt);
    654654
    655655    QDISC_LOG(("vboxNetFltLinuxQdiscRemove: refcnt=%d num_tx_queues=%d\n",
     
    19461946#endif /* VBOXNETFLT_WITH_QDISC */
    19471947        RTSpinlockAcquireNoInts(pThis->hSpinlock, &Tmp);
    1948         ASMAtomicUoWritePtr(&pThis->u.s.pDev, NULL);
     1948        ASMAtomicUoWriteNullPtr(&pThis->u.s.pDev);
    19491949        RTSpinlockReleaseNoInts(pThis->hSpinlock, &Tmp);
    19501950        dev_put(pDev);
     
    19731973    ASMAtomicWriteBool(&pThis->u.s.fRegistered, false);
    19741974    ASMAtomicWriteBool(&pThis->fDisconnectedFromHost, true);
    1975     ASMAtomicUoWritePtr(&pThis->u.s.pDev, NULL);
     1975    ASMAtomicUoWriteNullPtr(&pThis->u.s.pDev);
    19761976    RTSpinlockReleaseNoInts(pThis->hSpinlock, &Tmp);
    19771977
  • trunk/src/VBox/HostDrivers/VBoxNetFlt/solaris/VBoxNetFlt-solaris.c

    r30111 r30112  
    924924            RTTimerStop(pPromiscStream->pIp6Timer);
    925925            RTTimerDestroy(pPromiscStream->pIp6Timer);
    926             ASMAtomicUoWritePtr(&pPromiscStream->pIp6Timer, NULL);
     926            ASMAtomicUoWriteNullPtr(&pPromiscStream->pIp6Timer);
    927927        }
    928928#endif
     
    944944    switch (pStream->Type)
    945945    {
    946         case kIp4Stream:        ASMAtomicUoWritePtr(pStream->pThis->u.s.pvIp4Stream, NULL);     break;
    947         case kIp6Stream:        ASMAtomicUoWritePtr(pStream->pThis->u.s.pvIp6Stream, NULL);     break;
    948         case kArpStream:        ASMAtomicUoWritePtr(pStream->pThis->u.s.pvArpStream, NULL);     break;
    949         case kPromiscStream:    ASMAtomicUoWritePtr(pStream->pThis->u.s.pvPromiscStream, NULL); break;
     946        case kIp4Stream:        ASMAtomicUoWriteNullPtr(pStream->pThis->u.s.pvIp4Stream);     break;
     947        case kIp6Stream:        ASMAtomicUoWriteNullPtr(pStream->pThis->u.s.pvIp6Stream);     break;
     948        case kArpStream:        ASMAtomicUoWriteNullPtr(pStream->pThis->u.s.pvArpStream);     break;
     949        case kPromiscStream:    ASMAtomicUoWriteNullPtr(pStream->pThis->u.s.pvPromiscStream); break;
    950950        default:    /* Heh. */
    951951        {
     
    25782578        RTTimerStop(pPromiscStream->pIp6Timer);
    25792579        RTTimerDestroy(pPromiscStream->pIp6Timer);
    2580         ASMAtomicUoWritePtr(&pPromiscStream->pIp6Timer, NULL);
     2580        ASMAtomicUoWriteNullPtr(&pPromiscStream->pIp6Timer);
    25812581    }
    25822582#endif
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