VirtualBox

Changeset 22566 in vbox for trunk/src


Ignore:
Timestamp:
Aug 28, 2009 6:25:32 PM (16 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
51593
Message:

IPRT/thread/solaris: Backed out changes to RTThreadPreempt* made in r51399 and related buildfixes.

Location:
trunk/src/VBox/Runtime/r0drv/solaris
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/r0drv/solaris/thread-r0drv-solaris.c

    r22558 r22566  
    4141#include <iprt/err.h>
    4242#include <iprt/mp.h>
     43
    4344
    4445
     
    143144{
    144145    AssertPtr(pState);
    145     Assert(pState->uOldPil == UINT32_MAX);
     146    Assert(pState->u32Reserved == 0);
     147    pState->u32Reserved = 42;
    146148
    147149    kpreempt_disable();
    148 /// @todo check out splr and splx on S10!
    149 //    if (ASMIntAreEnabled())
    150         pState->uOldPil = splr(ipltospl(DISP_LEVEL));
    151 //    else
    152 //    {
    153 //        /* splr doesn't restore the interrupt flag on S10. */
    154 //        pState->uOldPil = getpil();
    155 //        if (pState->uOldPil < DISP_LEVEL)
    156 //            pState->uOldPil = splx(DISP_LEVEL);
    157 //    }
    158     Assert(pState->uOldPil != UINT32_MAX);
    159150    RT_ASSERT_PREEMPT_CPUID_DISABLE(pState);
    160151}
     
    164155{
    165156    AssertPtr(pState);
    166     Assert(pState->uOldPil != UINT32_MAX);
     157    Assert(pState->u32Reserved == 42);
     158    pState->u32Reserved = 0;
    167159    RT_ASSERT_PREEMPT_CPUID_RESTORE(pState);
    168160
    169161    kpreempt_enable();
    170     splx(pState->uOldPil);
    171 
    172     pState->uOldPil = UINT32_MAX;
    173162}
    174163
  • trunk/src/VBox/Runtime/r0drv/solaris/vbi/thread-r0drv-solaris.c

    r22565 r22566  
    4141#include <iprt/err.h>
    4242#include <iprt/mp.h>
     43
    4344
    4445
     
    115116{
    116117    AssertPtr(pState);
    117 //    Assert(pState->uOldPil == UINT32_MAX);
    118 
     118    Assert(pState->u32Reserved == 0);
     119    pState->u32Reserved = 42;
    119120    vbi_preempt_disable();
    120 /// @todo check out splr and splx on S10!
    121 //    if (ASMIntAreEnabled())
    122         //pState->uOldPil = splr(ipltospl(DISP_LEVEL));
    123 //        pState->uOldPil = splr(ipltospl(LOCK_LEVEL - 1));  //temporary
    124 //    else
    125 //    {
    126 //        /* splr doesn't restore the interrupt flag on S10. */
    127 //        pState->uOldPil = getpil();
    128 //        if (pState->uOldPil < DISP_LEVEL)
    129 //            pState->uOldPil = splx(DISP_LEVEL);
    130 //    }
    131 
    132 //    Assert(pState->uOldPil != UINT32_MAX);
    133121    RT_ASSERT_PREEMPT_CPUID_DISABLE(pState);
    134122}
     
    138126{
    139127    AssertPtr(pState);
    140 //    Assert(pState->uOldPil != UINT32_MAX);
     128    Assert(pState->u32Reserved == 42);
     129    pState->u32Reserved = 0;
    141130    RT_ASSERT_PREEMPT_CPUID_RESTORE(pState);
    142 
    143131    vbi_preempt_enable();
    144 //    splx(pState->uOldPil);
    145 
    146 //    pState->uOldPil = UINT32_MAX;
    147132}
    148133
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