VirtualBox

Changeset 25724 in vbox for trunk/src/VBox/Runtime/generic


Ignore:
Timestamp:
Jan 11, 2010 2:45:34 PM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
56467
Message:

iprt: Use RTMSINTERVAL for timeouts. Fixed missing timeout underflow checks in two RTFileAioCtxWait implementations.

Location:
trunk/src/VBox/Runtime/generic
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/generic/RTSemEventMultiWait-generic.cpp

    r25381 r25724  
    4343
    4444#undef RTSemEventMultiWait              /* undo debug mapping */
    45 RTDECL(int) RTSemEventMultiWait(RTSEMEVENTMULTI EventSem, unsigned cMillies)
     45RTDECL(int) RTSemEventMultiWait(RTSEMEVENTMULTI EventSem, RTMSINTERVAL cMillies)
    4646{
    4747    int rc;
     
    6262                if (u64Elapsed >= cMillies)
    6363                    return VERR_TIMEOUT;
    64                 rc = RTSemEventMultiWaitNoResume(EventSem, cMillies - (unsigned)u64Elapsed);
     64                rc = RTSemEventMultiWaitNoResume(EventSem, cMillies - (RTMSINTERVAL)u64Elapsed);
    6565            } while (rc == VERR_INTERRUPTED);
    6666        }
  • trunk/src/VBox/Runtime/generic/RTSemEventWait-generic.cpp

    r25381 r25724  
    4343
    4444#undef RTSemEventWait                   /* undo debug mapping */
    45 RTDECL(int) RTSemEventWait(RTSEMEVENT EventSem, unsigned cMillies)
     45RTDECL(int) RTSemEventWait(RTSEMEVENT EventSem, RTMSINTERVAL cMillies)
    4646{
    4747    int rc;
     
    6262                if (u64Elapsed >= cMillies)
    6363                    return VERR_TIMEOUT;
    64                 rc = RTSemEventWaitNoResume(EventSem, cMillies - (unsigned)u64Elapsed);
     64                rc = RTSemEventWaitNoResume(EventSem, cMillies - (RTMSINTERVAL)u64Elapsed);
    6565            } while (rc == VERR_INTERRUPTED);
    6666        }
  • trunk/src/VBox/Runtime/generic/RTSemMutexRequest-generic.cpp

    r25381 r25724  
    4343
    4444#undef RTSemMutexRequest                /* undo debug mapping */
    45 RTDECL(int) RTSemMutexRequest(RTSEMMUTEX Mutex, unsigned cMillies)
     45RTDECL(int) RTSemMutexRequest(RTSEMMUTEX Mutex, RTMSINTERVAL cMillies)
    4646{
    4747    int rc;
     
    6262                if (u64Elapsed >= cMillies)
    6363                    return VERR_TIMEOUT;
    64                 rc = RTSemMutexRequestNoResume(Mutex, cMillies - (unsigned)u64Elapsed);
     64                rc = RTSemMutexRequestNoResume(Mutex, cMillies - (RTMSINTERVAL)u64Elapsed);
    6565            } while (rc == VERR_INTERRUPTED);
    6666        }
  • trunk/src/VBox/Runtime/generic/RTSemMutexRequestDebug-generic.cpp

    r25381 r25724  
    4343
    4444
    45 RTDECL(int) RTSemMutexRequestDebug(RTSEMMUTEX Mutex, unsigned cMillies, RTHCUINTPTR uId, RT_SRC_POS_DECL)
     45RTDECL(int) RTSemMutexRequestDebug(RTSEMMUTEX Mutex, RTMSINTERVAL cMillies, RTHCUINTPTR uId, RT_SRC_POS_DECL)
    4646{
    4747    int rc;
     
    6262                if (u64Elapsed >= cMillies)
    6363                    return VERR_TIMEOUT;
    64                 rc = RTSemMutexRequestNoResumeDebug(Mutex, cMillies - (unsigned)u64Elapsed, uId, RT_SRC_POS_ARGS);
     64                rc = RTSemMutexRequestNoResumeDebug(Mutex, cMillies - (RTMSINTERVAL)u64Elapsed, uId, RT_SRC_POS_ARGS);
    6565            } while (rc == VERR_INTERRUPTED);
    6666        }
  • trunk/src/VBox/Runtime/generic/semrw-generic.cpp

    r25723 r25724  
    263263    AssertReturn(pThis->u32Magic == RTSEMRW_MAGIC, VERR_INVALID_HANDLE);
    264264
    265     unsigned        cMilliesInitial = cMillies;
     265    RTMSINTERVAL    cMilliesInitial = cMillies;
    266266    uint64_t        tsStart = 0;
    267267    if (cMillies != RT_INDEFINITE_WAIT && cMillies != 0)
     
    353353                tsDelta /= 1000000;
    354354                if ((uint64_t)tsDelta < cMilliesInitial)
    355                     cMilliesInitial = (unsigned)tsDelta;
     355                    cMilliesInitial = (RTMSINTERVAL)tsDelta;
    356356                else
    357357                    cMilliesInitial = 1;
     
    555555     * Validate handle.
    556556     */
    557     struct RTSEMRWINTERNAL *pThis = hRWSem;
     557    struct RTSEMRWINTERNAL *pThis   = hRWSem;
    558558    AssertPtrReturn(pThis, VERR_INVALID_HANDLE);
    559559    AssertReturn(pThis->u32Magic == RTSEMRW_MAGIC, VERR_INVALID_HANDLE);
    560560
    561     unsigned    cMilliesInitial = cMillies;
    562     uint64_t    tsStart = 0;
     561    RTMSINTERVAL    cMilliesInitial = cMillies;
     562    uint64_t        tsStart        = 0;
    563563    if (cMillies != RT_INDEFINITE_WAIT && cMillies != 0)
    564564        tsStart = RTTimeNanoTS();
     
    643643                tsDelta /= 1000000;
    644644                if ((uint64_t)tsDelta < cMilliesInitial)
    645                     cMilliesInitial = (unsigned)tsDelta;
     645                    cMilliesInitial = (RTMSINTERVAL)tsDelta;
    646646                else
    647647                    cMilliesInitial = 1;
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