VirtualBox

Changeset 30772 in vbox


Ignore:
Timestamp:
Jul 10, 2010 4:58:28 AM (15 years ago)
Author:
vboxsync
Message:

VMMDevTesting/test1: Report the results to the host via a RTTest* like framework.

Location:
trunk
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/VMMDevTesting.h

    r30736 r30772  
    4242/** The number of I/O ports reserved for testing. */
    4343#define VMMDEV_TESTING_IOPORT_COUNT     0x0010
    44 /** The NOP I/O port - 124 RW. */
     44/** The NOP I/O port - 1,2,4 RW. */
    4545#define VMMDEV_TESTING_IOPORT_NOP       (VMMDEV_TESTING_IOPORT_BASE + 0)
    4646/** The low nanosecond timestamp - 4 RO.  */
     
    4848/** The high nanosecond timestamp - 4 RO.  Read this after the low one!  */
    4949#define VMMDEV_TESTING_IOPORT_TS_HIGH   (VMMDEV_TESTING_IOPORT_BASE + 2)
     50/** Command register usually used for preparing the data register - 4 WO. */
     51#define VMMDEV_TESTING_IOPORT_CMD       (VMMDEV_TESTING_IOPORT_BASE + 3)
     52/** Data register which use depends on the current command - 1s, 4 WO. */
     53#define VMMDEV_TESTING_IOPORT_DATA      (VMMDEV_TESTING_IOPORT_BASE + 4)
     54
     55/** @name Commands.
     56 * @{ */
     57/** Initialize test, sending name (zero terminated string). (RTTestCreate) */
     58#define VMMDEV_TESTING_CMD_INIT         UINT32_C(0xcab1e000)
     59/** Test done, no data. (RTTestSummaryAndDestroy) */
     60#define VMMDEV_TESTING_CMD_TERM         UINT32_C(0xcab1e001)
     61/** Start a new sub-test, sending name (zero terminated string). (RTTestSub) */
     62#define VMMDEV_TESTING_CMD_SUB_NEW      UINT32_C(0xcab1e002)
     63/** Sub-test is done, sending 32-bit error count for it. (RTTestDone) */
     64#define VMMDEV_TESTING_CMD_SUB_DONE     UINT32_C(0xcab1e003)
     65/** Report a failure, sending reason (zero terminated string). (RTTestFailed) */
     66#define VMMDEV_TESTING_CMD_FAILED       UINT32_C(0xcab1e004)
     67/** Report a value, sending the 64-bit value (2x4), the 32-bit unit (4), and
     68 * finally the name (zero terminated string).  (RTTestValue) */
     69#define VMMDEV_TESTING_CMD_VALUE        UINT32_C(0xcab1e005)
     70/** @} */
     71
     72/** @name Value units
     73 * @{ */
     74#define VMMDEV_TESTING_UNIT_PCT                 UINT8_C(0x01)   /**< Percentage. */
     75#define VMMDEV_TESTING_UNIT_BYTES               UINT8_C(0x02)   /**< Bytes. */
     76#define VMMDEV_TESTING_UNIT_BYTES_PER_SEC       UINT8_C(0x03)   /**< Bytes per second. */
     77#define VMMDEV_TESTING_UNIT_KILOBYTES           UINT8_C(0x04)   /**< Kilobytes. */
     78#define VMMDEV_TESTING_UNIT_KILOBYTES_PER_SEC   UINT8_C(0x05)   /**< Kilobytes per second. */
     79#define VMMDEV_TESTING_UNIT_MEGABYTES           UINT8_C(0x06)   /**< Megabytes. */
     80#define VMMDEV_TESTING_UNIT_MEGABYTES_PER_SEC   UINT8_C(0x07)   /**< Megabytes per second. */
     81#define VMMDEV_TESTING_UNIT_PACKETS             UINT8_C(0x08)   /**< Packets. */
     82#define VMMDEV_TESTING_UNIT_PACKETS_PER_SEC     UINT8_C(0x09)   /**< Packets per second. */
     83#define VMMDEV_TESTING_UNIT_FRAMES              UINT8_C(0x0a)   /**< Frames. */
     84#define VMMDEV_TESTING_UNIT_FRAMES_PER_SEC      UINT8_C(0x0b)   /**< Frames per second. */
     85#define VMMDEV_TESTING_UNIT_OCCURRENCES         UINT8_C(0x0c)   /**< Occurrences. */
     86#define VMMDEV_TESTING_UNIT_OCCURRENCES_PER_SEC UINT8_C(0x0d)   /**< Occurrences per second. */
     87#define VMMDEV_TESTING_UNIT_CALLS               UINT8_C(0x0e)   /**< Calls. */
     88#define VMMDEV_TESTING_UNIT_CALLS_PER_SEC       UINT8_C(0x0f)   /**< Calls per second. */
     89#define VMMDEV_TESTING_UNIT_ROUND_TRIP          UINT8_C(0x10)   /**< Round trips. */
     90#define VMMDEV_TESTING_UNIT_SECS                UINT8_C(0x11)   /**< Seconds. */
     91#define VMMDEV_TESTING_UNIT_MS                  UINT8_C(0x12)   /**< Milliseconds. */
     92#define VMMDEV_TESTING_UNIT_NS                  UINT8_C(0x13)   /**< Nanoseconds. */
     93#define VMMDEV_TESTING_UNIT_NS_PER_CALL         UINT8_C(0x14)   /**< Nanoseconds per call. */
     94#define VMMDEV_TESTING_UNIT_NS_PER_FRAME        UINT8_C(0x15)   /**< Nanoseconds per frame. */
     95#define VMMDEV_TESTING_UNIT_NS_PER_OCCURRENCE   UINT8_C(0x16)   /**< Nanoseconds per occurrence. */
     96#define VMMDEV_TESTING_UNIT_NS_PER_PACKET       UINT8_C(0x17)   /**< Nanoseconds per frame. */
     97#define VMMDEV_TESTING_UNIT_NS_PER_ROUND_TRIP   UINT8_C(0x18)   /**< Nanoseconds per round trip. */
     98#define VMMDEV_TESTING_UNIT_INSTRS              UINT8_C(0x19)   /**< Instructions. */
     99#define VMMDEV_TESTING_UNIT_INSTRS_PER_SEC      UINT8_C(0x1a)   /**< Instructions per second. */
     100/** @}  */
     101
    50102
    51103/** What the NOP accesses returns. */
  • trunk/include/VBox/VMMDevTesting.mac

    r30736 r30772  
    1212%define VMMDEV_TESTING_IOPORT_TS_LOW    (VMMDEV_TESTING_IOPORT_BASE + 1)
    1313%define VMMDEV_TESTING_IOPORT_TS_HIGH   (VMMDEV_TESTING_IOPORT_BASE + 2)
     14%define VMMDEV_TESTING_IOPORT_CMD       (VMMDEV_TESTING_IOPORT_BASE + 3)
     15%define VMMDEV_TESTING_IOPORT_DATA      (VMMDEV_TESTING_IOPORT_BASE + 4)
     16%define VMMDEV_TESTING_CMD_INIT         0xcab1e000
     17%define VMMDEV_TESTING_CMD_TERM         0xcab1e001
     18%define VMMDEV_TESTING_CMD_SUB_NEW      0xcab1e002
     19%define VMMDEV_TESTING_CMD_SUB_DONE     0xcab1e003
     20%define VMMDEV_TESTING_CMD_FAILED       0xcab1e004
     21%define VMMDEV_TESTING_CMD_VALUE        0xcab1e005
     22%define VMMDEV_TESTING_UNIT_PCT                 0x01
     23%define VMMDEV_TESTING_UNIT_BYTES               0x02
     24%define VMMDEV_TESTING_UNIT_BYTES_PER_SEC       0x03
     25%define VMMDEV_TESTING_UNIT_KILOBYTES           0x04
     26%define VMMDEV_TESTING_UNIT_KILOBYTES_PER_SEC   0x05
     27%define VMMDEV_TESTING_UNIT_MEGABYTES           0x06
     28%define VMMDEV_TESTING_UNIT_MEGABYTES_PER_SEC   0x07
     29%define VMMDEV_TESTING_UNIT_PACKETS             0x08
     30%define VMMDEV_TESTING_UNIT_PACKETS_PER_SEC     0x09
     31%define VMMDEV_TESTING_UNIT_FRAMES              0x0a
     32%define VMMDEV_TESTING_UNIT_FRAMES_PER_SEC      0x0b
     33%define VMMDEV_TESTING_UNIT_OCCURRENCES         0x0c
     34%define VMMDEV_TESTING_UNIT_OCCURRENCES_PER_SEC 0x0d
     35%define VMMDEV_TESTING_UNIT_CALLS               0x0e
     36%define VMMDEV_TESTING_UNIT_CALLS_PER_SEC       0x0f
     37%define VMMDEV_TESTING_UNIT_ROUND_TRIP          0x10
     38%define VMMDEV_TESTING_UNIT_SECS                0x11
     39%define VMMDEV_TESTING_UNIT_MS                  0x12
     40%define VMMDEV_TESTING_UNIT_NS                  0x13
     41%define VMMDEV_TESTING_UNIT_NS_PER_CALL         0x14
     42%define VMMDEV_TESTING_UNIT_NS_PER_FRAME        0x15
     43%define VMMDEV_TESTING_UNIT_NS_PER_OCCURRENCE   0x16
     44%define VMMDEV_TESTING_UNIT_NS_PER_PACKET       0x17
     45%define VMMDEV_TESTING_UNIT_NS_PER_ROUND_TRIP   0x18
     46%define VMMDEV_TESTING_UNIT_INSTRS              0x19
     47%define VMMDEV_TESTING_UNIT_INSTRS_PER_SEC      0x1a
    1448%define VMMDEV_TESTING_NOP_RET          0x64726962
    1549%endif
  • trunk/include/VBox/various.sed

    r30736 r30772  
    4848s/UINT32_C([[:space:]]*\(0[xX][0-9a-fA-F][0-9a-fA-F]*\)[[:space:]]*)/\1/
    4949s/UINT32_C([[:space:]]*\([0-9][0-9]*\)[[:space:]]*)/\1/
     50s/UINT16_C([[:space:]]*\(0[xX][0-9a-fA-F][0-9a-fA-F]*\)[[:space:]]*)/\1/
     51s/UINT16_C([[:space:]]*\([0-9][0-9]*\)[[:space:]]*)/\1/
     52s/UINT8_C([[:space:]]*\(0[xX][0-9a-fA-F][0-9a-fA-F]*\)[[:space:]]*)/\1/
     53s/UINT8_C([[:space:]]*\([0-9][0-9]*\)[[:space:]]*)/\1/
    5054
    5155b end
  • trunk/src/VBox/Devices/Makefile.kmk

    r30724 r30772  
    543543  VBoxDDGC_DEFS.darwin   = VBOX_WITH_2X_4GB_ADDR_SPACE
    544544 endif
    545  VBoxDDGC_DEFS           =
     545 VBoxDDGC_DEFS           = VBOX_WITH_HGCM
    546546 VBoxDDGC_INCS          := \
    547547        $(PATH_SUB_CURRENT)
     
    654654VBoxDDR0_TEMPLATE       = VBoxR0
    655655VBoxDDR0_DEFS.darwin.x86= VBOX_WITH_2X_4GB_ADDR_SPACE_IN_R0 VBOX_WITH_2X_4GB_ADDR_SPACE
    656 VBoxDDR0_DEFS           = IN_RT_R0
     656VBoxDDR0_DEFS           = IN_RT_R0 VBOX_WITH_HGCM # - WTF is IN_RT_R0 doing here?
    657657VBoxDDR0_INCS          := \
    658658        $(PATH_SUB_CURRENT)
  • trunk/src/VBox/Devices/VMMDev/VMMDevState.h

    r30758 r30772  
    3636{
    3737    bool fPending;
     38    bool afAlignment[3];
    3839    DISPLAYCHANGEINFO displayChangeRequest;
    3940    DISPLAYCHANGEINFO lastReadDisplayChangeRequest;
     
    4748    /** true if the guest responded to VMMDEV_EVENT_DISPLAY_CHANGE_REQUEST at least once */
    4849    bool fGuestSentChangeEventAck;
     50    bool afAlignment[3];
    4951
    5052    DISPLAYCHANGEREQUEST aRequests[64]; // @todo maxMonitors
     
    7173    /** Does the guest currently want the host pointer to be shown? */
    7274    uint32_t fHostCursorRequested;
     75
     76    /** Alignment padding. */
     77    uint32_t u32Alignment0;
    7378
    7479    /** Pointer to device instance. */
     
    9095    R3PTRTYPE(PPDMIHGCMCONNECTOR) pHGCMDrv;
    9196#endif
     97    /** Alignment padding. */
     98    RTR3PTR PtrR3Alignment1;
    9299    /** message buffer for backdoor logging. */
    93100    char szMsg[512];
    94101    /** message buffer index. */
    95     unsigned iMsg;
     102    uint32_t iMsg;
    96103    /** Base port in the assigned I/O space. */
    97104    RTIOPORT PortBase;
     105    /** Alignment padding.  */
     106    RTIOPORT PortAlignment2;
    98107
    99108    /** IRQ number assigned to the device */
     
    110119    /** Flag whether u32NewGuestFilterMask is valid */
    111120    bool fNewGuestFilterMask;
    112 
     121    /** Alignment padding. */
     122    bool afAlignment3[3];
     123
     124    /** GC physical address of VMMDev RAM area */
     125    RTGCPHYS32 GCPhysVMMDevRAM;
    113126    /** R3 pointer to VMMDev RAM area */
    114127    R3PTRTYPE(VMMDevMemory *) pVMMDevRAMR3;
    115     /** GC physical address of VMMDev RAM area */
    116     RTGCPHYS32 GCPhysVMMDevRAM;
    117128
    118129    /** R3 pointer to VMMDev Heap RAM area
     
    158169    } credentialsJudge;
    159170
     171    bool afAlignment4[HC_ARCH_BITS == 32 ? 7 : 7];
     172
    160173    /* memory balloon change request */
    161174    uint32_t    u32MemoryBalloonSize, u32LastMemoryBalloonSize;
     
    172185    /* seamless mode change request */
    173186    bool fLastSeamlessEnabled, fSeamlessEnabled;
     187    bool afAlignment5[1];
    174188
    175189    bool fVRDPEnabled;
     
    177191
    178192#ifdef TIMESYNC_BACKDOOR
     193    uint64_t hostTime;
    179194    bool fTimesyncBackdoorLo;
    180     uint64_t hostTime;
     195    bool afAlignment6[3];
    181196#endif
    182197    /** Set if GetHostTime should fail.
     
    228243    /** Set if testing is enabled. */
    229244    bool                fTestingEnabled;
     245    /** Alignment padding. */
     246    bool                afPadding[6];
     247#ifndef VBOX_WITHOUT_TESTING_FEATURES
    230248    /** The high timestamp value. */
    231249    uint32_t            u32TestingHighTimestamp;
    232 
     250    /** The current testing command (VMMDEV_TESTING_CMD_XXX). */
     251    uint32_t            u32TestingCmd;
     252    /** The testing data offset (command specific). */
     253    uint32_t            offTestingData;
     254    /** For buffering the what comes in over the testing data port. */
     255    union
     256    {
     257        char            padding[128];
     258
     259        /** VMMDEV_TESTING_CMD_INIT, VMMDEV_TESTING_CMD_SUB_NEW,
     260         *  VMMDEV_TESTING_CMD_FAILED. */
     261        struct
     262        {
     263            char        sz[128];
     264        } String, Init, SubNew, Failed;
     265
     266        /** VMMDEV_TESTING_CMD_TERM, VMMDEV_TESTING_CMD_SUB_DONE. */
     267        struct
     268        {
     269            uint32_t    c;
     270        } Error, Term, SubDone;
     271
     272        /** VMMDEV_TESTING_CMD_VALUE. */
     273        struct
     274        {
     275            RTUINT64U   u64Value;
     276            uint32_t    u32Unit;
     277            char        szName[128 - 8 - 4];
     278        } Value;
     279    } TestingData;
     280#endif /* !VBOX_WITHOUT_TESTING_FEATURES */
    233281} VMMDevState;
    234282AssertCompileMemberAlignment(VMMDevState, CritSect, 8);
     283AssertCompileMemberAlignment(VMMDevState, cbGuestRAM, 8);
     284AssertCompileMemberAlignment(VMMDevState, enmCpuHotPlugEvent, 4);
     285#ifndef VBOX_WITHOUT_TESTING_FEATURES
     286AssertCompileMemberAlignment(VMMDevState, TestingData.Value.u64Value, 8);
     287#endif
     288
    235289
    236290void VMMDevNotifyGuest (VMMDevState *pVMMDevState, uint32_t u32EventMask);
  • trunk/src/VBox/Devices/VMMDev/VMMDevTesting.cpp

    r30724 r30772  
    2929#include <iprt/string.h>
    3030#include <iprt/time.h>
     31#ifdef IN_RING3
     32# include <iprt/stream.h>
     33#endif
    3134
    3235#include "VMMDevState.h"
     
    106109PDMBOTHCBDECL(int) vmmdevTestingIoWrite(PPDMDEVINS pDevIns, void *pvUser, RTIOPORT Port, uint32_t u32, unsigned cb)
    107110{
     111    VMMDevState *pThis = PDMINS_2_DATA(pDevIns, VMMDevState *);
     112
    108113    switch (Port)
    109114    {
     
    126131        case VMMDEV_TESTING_IOPORT_TS_HIGH:
    127132            break;
     133
     134        case VMMDEV_TESTING_IOPORT_CMD:
     135            if (cb == 4)
     136            {
     137                pThis->u32TestingCmd  = u32;
     138                pThis->offTestingData = 0;
     139                RT_ZERO(pThis->TestingData);
     140                return VINF_SUCCESS;
     141            }
     142            break;
     143
     144        case VMMDEV_TESTING_IOPORT_DATA:
     145        {
     146            uint32_t uCmd = pThis->u32TestingCmd;
     147            uint32_t off  = pThis->offTestingData;
     148            switch (uCmd)
     149            {
     150                case VMMDEV_TESTING_CMD_INIT:
     151                case VMMDEV_TESTING_CMD_SUB_NEW:
     152                case VMMDEV_TESTING_CMD_FAILED:
     153                    if (   off < sizeof(pThis->TestingData.String.sz) - 1
     154                        && cb == 1)
     155                    {
     156                        if (u32)
     157                        {
     158                            pThis->TestingData.String.sz[off] = u32;
     159                            pThis->offTestingData = off + 1;
     160                        }
     161                        else
     162                        {
     163#ifdef IN_RING3
     164                            switch (uCmd)
     165                            {
     166                                case VMMDEV_TESTING_CMD_INIT:
     167                                    RTPrintf("testing: INIT '%.*s'\n", sizeof(pThis->TestingData.String.sz) - 1, pThis->TestingData.String.sz);
     168                                    break;
     169                                case VMMDEV_TESTING_CMD_SUB_NEW:
     170                                    RTPrintf("testing: SUB_NEW  '%.*s'\n", sizeof(pThis->TestingData.String.sz) - 1, pThis->TestingData.String.sz);
     171                                    break;
     172                                case VMMDEV_TESTING_CMD_FAILED:
     173                                    RTPrintf("testing: FAILED '%.*s'\n", sizeof(pThis->TestingData.String.sz) - 1, pThis->TestingData.String.sz);
     174                                    break;
     175                            }
     176#else
     177                            return VINF_IOM_HC_IOPORT_WRITE;
     178#endif
     179                        }
     180                        return VINF_SUCCESS;
     181                    }
     182                    break;
     183
     184                case VMMDEV_TESTING_CMD_TERM:
     185                case VMMDEV_TESTING_CMD_SUB_DONE:
     186                    if (   off == 0
     187                        && cb  == 4)
     188                    {
     189#ifdef IN_RING3
     190                        pThis->TestingData.Error.c = u32;
     191                        if (uCmd == VMMDEV_TESTING_CMD_TERM)
     192                            RTPrintf("testing: TERM - %u errors\n", u32);
     193                        else
     194                            RTPrintf("testing: SUB_DONE - %u errors\n", u32);
     195                        return VINF_SUCCESS;
     196#else
     197                        return VINF_IOM_HC_IOPORT_WRITE;
     198#endif
     199                    }
     200                    break;
     201
     202                case VMMDEV_TESTING_CMD_VALUE:
     203                    if (cb == 4)
     204                    {
     205                        if (off == 0)
     206                            pThis->TestingData.Value.u64Value.s.Lo = u32;
     207                        else if (off == 4)
     208                            pThis->TestingData.Value.u64Value.s.Hi = u32;
     209                        else if (off == 8)
     210                            pThis->TestingData.Value.u32Unit = u32;
     211                        else
     212                            break;
     213                        pThis->offTestingData = off + 4;
     214                        return VINF_SUCCESS;
     215                    }
     216                    if (   off >= 12
     217                        && cb  == 1
     218                        && off < sizeof(pThis->TestingData.Value.szName) - 1 - 12)
     219                    {
     220                        if (u32)
     221                        {
     222                            pThis->TestingData.Value.szName[off - 12] = u32;
     223                            pThis->offTestingData = off + 1;
     224                        }
     225                        else
     226                        {
     227#ifdef IN_RING3
     228                            RTPrintf("testing: VALUE '%.*s' = %#llx (%llu) [%u]\n",
     229                                     sizeof(pThis->TestingData.Value.szName) - 1, pThis->TestingData.Value.szName,
     230                                     pThis->TestingData.Value.u64Value.u, pThis->TestingData.Value.u64Value.u,
     231                                     pThis->TestingData.Value.u32Unit);
     232#else
     233                            return VINF_IOM_HC_IOPORT_WRITE;
     234#endif
     235                        }
     236                        return VINF_SUCCESS;
     237
     238#ifdef IN_RING3
     239                        pThis->TestingData.Error.c = u32;
     240                        if (uCmd == VMMDEV_TESTING_CMD_TERM)
     241                            RTPrintf("testing: TERM - %u errors\n", u32);
     242                        else
     243                            RTPrintf("testing: SUB_DONE - %u errors\n", u32);
     244                        return VINF_SUCCESS;
     245#else
     246                        return VINF_IOM_HC_IOPORT_WRITE;
     247#endif
     248                    }
     249                    break;
     250
     251                default:
     252                    break;
     253            }
     254            Log(("VMMDEV_TESTING_IOPORT_CMD: bad access; cmd=%#x off=%#x cb=%#x u32=%#x\n", uCmd, off, cb, u32));
     255            return VINF_SUCCESS;
     256        }
    128257
    129258        default:
     
    174303                return VINF_SUCCESS;
    175304            }
     305            break;
     306
     307        case VMMDEV_TESTING_IOPORT_CMD:
     308        case VMMDEV_TESTING_IOPORT_DATA:
    176309            break;
    177310
  • trunk/src/VBox/Devices/testcase/tstDeviceStructSize.cpp

    r30597 r30772  
    2424#include <VBox/x86.h>
    2525
     26
     27#define VBOX_WITH_HGCM                  /* grumble */
    2628#define VBOX_DEVICE_STRUCT_TESTCASE
    2729#undef LOG_GROUP
  • trunk/src/VBox/Devices/testcase/tstDeviceStructSizeRC.cpp

    r30140 r30772  
    3535*******************************************************************************/
    3636#define VBOX_DEVICE_STRUCT_TESTCASE
     37#define VBOX_WITH_HGCM                  /* grumble */
    3738#undef LOG_GROUP
    3839#include "../Bus/DevPCI.cpp" /* must be first! */
     
    6061# include "../USB/DevEHCI.cpp"
    6162#endif
    62 /*#undef LOG_GROUP
    63 #include "../VMMDev/VBoxDev.cpp"*/
     63#undef LOG_GROUP
     64#include "../VMMDev/VMMDev.cpp"
    6465#undef LOG_GROUP
    6566#include "../Parallel/DevParallel.cpp"
     
    13121313    GEN_CHECK_OFF(E1KSTATE, pLUTimerRC);
    13131314    GEN_CHECK_OFF(E1KSTATE, cs);
    1314 #ifndef E1K_GLOBAL_MUTEX
     1315# ifndef E1K_GLOBAL_MUTEX
    13151316    GEN_CHECK_OFF(E1KSTATE, csRx);
    1316 #endif
     1317# endif
    13171318    GEN_CHECK_OFF(E1KSTATE, addrMMReg);
    13181319    GEN_CHECK_OFF(E1KSTATE, macConfigured);
     
    13791380    GEN_CHECK_OFF(VNETSTATE, pTxBuf);
    13801381    GEN_CHECK_OFF(VNETSTATE, pLinkUpTimer);
    1381 #ifdef VNET_TX_DELAY
     1382# ifdef VNET_TX_DELAY
    13821383    GEN_CHECK_OFF(VNETSTATE, pTxTimerR3);
    13831384    GEN_CHECK_OFF(VNETSTATE, pTxTimerR0);
    13841385    GEN_CHECK_OFF(VNETSTATE, pTxTimerRC);
    1385 #endif /* VNET_TX_DELAY */
     1386# endif /* VNET_TX_DELAY */
    13861387    GEN_CHECK_OFF(VNETSTATE, config);
    13871388    GEN_CHECK_OFF(VNETSTATE, macConfigured);
     
    14121413    GEN_CHECK_OFF(VBOXSCSI, enmState);
    14131414#endif
     1415
     1416    /* VMMDev*.cpp/h */
     1417    GEN_CHECK_SIZE(VMMDevState);
     1418    GEN_CHECK_OFF(VMMDevState, dev);
     1419    GEN_CHECK_OFF(VMMDevState, CritSect);
     1420    GEN_CHECK_OFF(VMMDevState, hypervisorSize);
     1421    GEN_CHECK_OFF(VMMDevState, mouseCapabilities);
     1422    GEN_CHECK_OFF(VMMDevState, mouseXAbs);
     1423    GEN_CHECK_OFF(VMMDevState, mouseYAbs);
     1424    GEN_CHECK_OFF(VMMDevState, fHostCursorRequested);
     1425    GEN_CHECK_OFF(VMMDevState, pDevIns);
     1426    GEN_CHECK_OFF(VMMDevState, IBase);
     1427    GEN_CHECK_OFF(VMMDevState, IPort);
     1428#ifdef VBOX_WITH_HGCM
     1429    GEN_CHECK_OFF(VMMDevState, IHGCMPort);
     1430#endif
     1431    GEN_CHECK_OFF(VMMDevState, pDrvBase);
     1432    GEN_CHECK_OFF(VMMDevState, pDrv);
     1433#ifdef VBOX_WITH_HGCM
     1434    GEN_CHECK_OFF(VMMDevState, pHGCMDrv);
     1435#endif
     1436    GEN_CHECK_OFF(VMMDevState, szMsg);
     1437    GEN_CHECK_OFF(VMMDevState, iMsg);
     1438    GEN_CHECK_OFF(VMMDevState, PortBase);
     1439    GEN_CHECK_OFF(VMMDevState, irq);
     1440    GEN_CHECK_OFF(VMMDevState, u32HostEventFlags);
     1441    GEN_CHECK_OFF(VMMDevState, u32GuestFilterMask);
     1442    GEN_CHECK_OFF(VMMDevState, u32NewGuestFilterMask);
     1443    GEN_CHECK_OFF(VMMDevState, fNewGuestFilterMask);
     1444    GEN_CHECK_OFF(VMMDevState, GCPhysVMMDevRAM);
     1445    GEN_CHECK_OFF(VMMDevState, pVMMDevRAMR3);
     1446    GEN_CHECK_OFF(VMMDevState, pVMMDevHeapR3);
     1447    GEN_CHECK_OFF(VMMDevState, GCPhysVMMDevHeap);
     1448    GEN_CHECK_OFF(VMMDevState, guestInfo);
     1449    GEN_CHECK_OFF(VMMDevState, guestCaps);
     1450    GEN_CHECK_OFF(VMMDevState, fu32AdditionsOk);
     1451    GEN_CHECK_OFF(VMMDevState, u32VideoAccelEnabled);
     1452    GEN_CHECK_OFF(VMMDevState, displayChangeData);
     1453    GEN_CHECK_OFF(VMMDevState, credentialsLogon);
     1454    GEN_CHECK_OFF(VMMDevState, credentialsLogon.szUserName);
     1455    GEN_CHECK_OFF(VMMDevState, credentialsLogon.szPassword);
     1456    GEN_CHECK_OFF(VMMDevState, credentialsLogon.szDomain);
     1457    GEN_CHECK_OFF(VMMDevState, credentialsLogon.fAllowInteractiveLogon);
     1458    GEN_CHECK_OFF(VMMDevState, credentialsJudge);
     1459    GEN_CHECK_OFF(VMMDevState, credentialsJudge.szUserName);
     1460    GEN_CHECK_OFF(VMMDevState, credentialsJudge.szPassword);
     1461    GEN_CHECK_OFF(VMMDevState, credentialsJudge.szDomain);
     1462    GEN_CHECK_OFF(VMMDevState, u32MemoryBalloonSize);
     1463    GEN_CHECK_OFF(VMMDevState, u32LastMemoryBalloonSize);
     1464    GEN_CHECK_OFF(VMMDevState, cbGuestRAM);
     1465    GEN_CHECK_OFF(VMMDevState, idSession);
     1466    GEN_CHECK_OFF(VMMDevState, u32StatIntervalSize);
     1467    GEN_CHECK_OFF(VMMDevState, u32LastStatIntervalSize);
     1468    GEN_CHECK_OFF(VMMDevState, fLastSeamlessEnabled),
     1469    GEN_CHECK_OFF(VMMDevState, fSeamlessEnabled);
     1470    GEN_CHECK_OFF(VMMDevState, fVRDPEnabled);
     1471    GEN_CHECK_OFF(VMMDevState, u32VRDPExperienceLevel);
     1472#ifdef TIMESYNC_BACKDOOR
     1473    GEN_CHECK_OFF(VMMDevState, hostTime);
     1474    GEN_CHECK_OFF(VMMDevState, fTimesyncBackdoorLo);
     1475#endif
     1476    GEN_CHECK_OFF(VMMDevState, fGetHostTimeDisabled);
     1477    GEN_CHECK_OFF(VMMDevState, fBackdoorLogDisabled);
     1478    GEN_CHECK_OFF(VMMDevState, fKeepCredentials);
     1479    GEN_CHECK_OFF(VMMDevState, fHeapEnabled);
     1480#ifdef VBOX_WITH_HGCM
     1481    GEN_CHECK_OFF(VMMDevState, pHGCMCmdList);
     1482    GEN_CHECK_OFF(VMMDevState, critsectHGCMCmdList);
     1483    GEN_CHECK_OFF(VMMDevState, u32HGCMEnabled);
     1484#endif
     1485    GEN_CHECK_OFF(VMMDevState, SharedFolders);
     1486    GEN_CHECK_OFF(VMMDevState, SharedFolders.Led);
     1487    GEN_CHECK_OFF(VMMDevState, SharedFolders.ILeds);
     1488    GEN_CHECK_OFF(VMMDevState, SharedFolders.pLedsConnector);
     1489    GEN_CHECK_OFF(VMMDevState, fCpuHotPlugEventsEnabled);
     1490    GEN_CHECK_OFF(VMMDevState, enmCpuHotPlugEvent);
     1491    GEN_CHECK_OFF(VMMDevState, idCpuCore);
     1492    GEN_CHECK_OFF(VMMDevState, idCpuPackage);
     1493    GEN_CHECK_OFF(VMMDevState, StatMemBalloonChunks);
     1494    GEN_CHECK_OFF(VMMDevState, fRZEnabled);
     1495    GEN_CHECK_OFF(VMMDevState, fTestingEnabled);
     1496    GEN_CHECK_OFF(VMMDevState, u32TestingHighTimestamp);
     1497    GEN_CHECK_OFF(VMMDevState, u32TestingCmd);
     1498    GEN_CHECK_OFF(VMMDevState, offTestingData);
     1499    GEN_CHECK_OFF(VMMDevState, TestingData);
     1500    GEN_CHECK_OFF(VMMDevState, TestingData.Value.u64Value);
     1501    GEN_CHECK_OFF(VMMDevState, TestingData.Value.u32Unit);
     1502    GEN_CHECK_OFF(VMMDevState, TestingData.Value.szName);
    14141503
    14151504#ifdef VBOX_WITH_BUSLOGIC
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