~ubuntu-branches/ubuntu/trusty/virtualbox/trusty-proposed

« back to all changes in this revision

Viewing changes to src/recompiler/VBoxREMWrapper.cpp

  • Committer: Package Import Robot
  • Author(s): Felix Geyer
  • Date: 2013-03-07 16:38:36 UTC
  • mfrom: (1.1.13) (3.1.20 experimental)
  • Revision ID: package-import@ubuntu.com-20130307163836-p93jpbgx39tp3gb4
Tags: 4.2.8-dfsg-0ubuntu1
* New upstream release. (Closes: #691148)
  - Fixes compatibility with kernel 3.8. (Closes: #700823; LP: #1101867)
* Switch to my @debian.org email address.
* Move package to contrib as virtualbox 4.2 needs a non-free compiler to
  build the BIOS.
* Build-depend on libdevmapper-dev.
* Refresh patches.
  - Drop 36-fix-ftbfs-xserver-112.patch, cve-2012-3221.patch,
    CVE-2013-0420.patch 37-kcompat-3.6.patch and 38-kcompat-3.7.patch.
* Drop all virtualbox-ose transitional packages.
* Drop the virtualbox-fuse package as vdfuse fails to build with
  virtualbox 4.2.
* Update install files and VBox.sh.
* Bump required kbuild version to 0.1.9998svn2577.
* Fix path to VBoxCreateUSBNode.sh in virtualbox.postinst. (Closes: #700479)
* Add an init script to virtuabox-guest-x11 which loads the vboxvideo
  kernel module. The X Server 1.13 doesn't load it anymore. (Closes: #686994)
* Update man pages. (Closes: #680053)
* Add 36-python-multiarch.patch from Rico Tzschichholz to fix detection of
  python in multiarch paths using pkg-config.

Show diffs side-by-side

added added

removed removed

Lines of Context:
4
4
 * VBoxREM Win64 DLL Wrapper.
5
5
 */
6
6
/*
7
 
 * Copyright (C) 2006-2007 Oracle Corporation
 
7
 * Copyright (C) 2006-2012 Oracle Corporation
8
8
 *
9
9
 * This file is part of VirtualBox Open Source Edition (OSE), as
10
10
 * available from http://www.virtualbox.org. This file is free software;
408
408
    { REMPARMDESC_FLAGS_INT,        sizeof(void *),             NULL },
409
409
    { REMPARMDESC_FLAGS_INT,        sizeof(size_t),             NULL }
410
410
};
 
411
static const REMPARMDESC g_aArgsSIZE_TTagLoc[] =
 
412
{
 
413
    { REMPARMDESC_FLAGS_INT,        sizeof(size_t),             NULL },
 
414
    { REMPARMDESC_FLAGS_INT,        sizeof(const char *),       NULL },
 
415
    { REMPARMDESC_FLAGS_INT,        sizeof(const char *),       NULL },
 
416
    { REMPARMDESC_FLAGS_INT,        sizeof(unsigned int),       NULL },
 
417
    { REMPARMDESC_FLAGS_INT,        sizeof(const char *),       NULL }
 
418
};
 
419
static const REMPARMDESC g_aArgsPTRLoc[] =
 
420
{
 
421
    { REMPARMDESC_FLAGS_INT,        sizeof(void *),             NULL },
 
422
    { REMPARMDESC_FLAGS_INT,        sizeof(const char *),       NULL },
 
423
    { REMPARMDESC_FLAGS_INT,        sizeof(unsigned int),       NULL },
 
424
    { REMPARMDESC_FLAGS_INT,        sizeof(const char *),       NULL }
 
425
};
411
426
static const REMPARMDESC g_aArgsVM[] =
412
427
{
413
428
    { REMPARMDESC_FLAGS_INT,        sizeof(PVM),                NULL }
521
536
static const REMPARMDESC g_aArgsCPUMGetGuestCpl[] =
522
537
{
523
538
    { REMPARMDESC_FLAGS_INT,        sizeof(PVMCPU),             NULL },
524
 
    { REMPARMDESC_FLAGS_INT,        sizeof(PCPUMCTXCORE),       NULL },
525
 
};
526
 
 
527
 
/* EMInterpretInstructionCPU args */
528
 
static const REMPARMDESC g_aArgsEMInterpretInstructionCPU[] =
529
 
{
530
 
    { REMPARMDESC_FLAGS_INT,        sizeof(PVM),                NULL },
531
 
    { REMPARMDESC_FLAGS_INT,        sizeof(PVMCPU),             NULL },
532
 
    { REMPARMDESC_FLAGS_INT,        sizeof(PDISCPUSTATE),       NULL },
533
 
    { REMPARMDESC_FLAGS_INT,        sizeof(PCPUMCTXCORE),       NULL },
534
 
    { REMPARMDESC_FLAGS_GCPTR,      sizeof(RTGCPTR),            NULL },
535
 
    { REMPARMDESC_FLAGS_INT,        sizeof(EMCODETYPE),         NULL },
536
 
    { REMPARMDESC_FLAGS_INT,        sizeof(uint32_t *),         NULL }
537
539
};
538
540
 
539
541
/* CPUMQueryGuestMsr args */
648
650
    { REMPARMDESC_FLAGS_INT,        sizeof(PDBGFADDRESS),       NULL },
649
651
    { REMPARMDESC_FLAGS_INT,        sizeof(RTGCUINTPTR),        NULL }
650
652
};
651
 
static const REMPARMDESC g_aArgsDISInstr[] =
 
653
static const REMPARMDESC g_aArgsDISInstrToStr[] =
652
654
{
653
 
    { REMPARMDESC_FLAGS_INT,        sizeof(PVM),                NULL },
654
 
    { REMPARMDESC_FLAGS_INT,        sizeof(RTUINTPTR),          NULL },
655
 
    { REMPARMDESC_FLAGS_INT,        sizeof(uint32_t),           NULL },
 
655
    { REMPARMDESC_FLAGS_INT,        sizeof(uint8_t const *),    NULL },
 
656
    { REMPARMDESC_FLAGS_INT,        sizeof(DISCPUMODE),         NULL },
 
657
    { REMPARMDESC_FLAGS_INT,        sizeof(PDISCPUSTATE),       NULL },
656
658
    { REMPARMDESC_FLAGS_INT,        sizeof(uint32_t *),         NULL },
657
 
    { REMPARMDESC_FLAGS_INT,        sizeof(char *),             NULL }
 
659
    { REMPARMDESC_FLAGS_INT,        sizeof(char *),             NULL },
 
660
    { REMPARMDESC_FLAGS_INT,        sizeof(size_t),             NULL }
658
661
};
659
662
static const REMPARMDESC g_aArgsEMR3FatalError[] =
660
663
{
759
762
{
760
763
    { REMPARMDESC_FLAGS_INT,        sizeof(PVM),                NULL },
761
764
    { REMPARMDESC_FLAGS_INT,        sizeof(uint8_t),            NULL },
762
 
    { REMPARMDESC_FLAGS_INT,        sizeof(uint8_t),            NULL }
 
765
    { REMPARMDESC_FLAGS_INT,        sizeof(uint8_t),            NULL },
 
766
    { REMPARMDESC_FLAGS_INT,        sizeof(uint32_t),           NULL }
763
767
};
764
768
static const REMPARMDESC g_aArgsPDMR3CritSectInit[] =
765
769
{
889
893
    { REMPARMDESC_FLAGS_INT,        sizeof(size_t),             NULL },
890
894
    { REMPARMDESC_FLAGS_INT,        sizeof(const char *),       NULL }
891
895
};
 
896
static const REMPARMDESC g_aArgsRTMemEfRealloc[] =
 
897
{
 
898
    { REMPARMDESC_FLAGS_INT,        sizeof(void*),              NULL },
 
899
    { REMPARMDESC_FLAGS_INT,        sizeof(size_t),             NULL },
 
900
    { REMPARMDESC_FLAGS_INT,        sizeof(const char *),       NULL },
 
901
    { REMPARMDESC_FLAGS_INT,        sizeof(const char *),       NULL },
 
902
    { REMPARMDESC_FLAGS_INT,        sizeof(unsigned int),       NULL },
 
903
    { REMPARMDESC_FLAGS_INT,        sizeof(const char *),       NULL }
 
904
};
892
905
static const REMPARMDESC g_aArgsSSMR3GetGCPtr[] =
893
906
{
894
907
    { REMPARMDESC_FLAGS_INT,        sizeof(PSSMHANDLE),         NULL },
1186
1199
 */
1187
1200
static REMFNDESC g_aVMMImports[] =
1188
1201
{
1189
 
    { "CPUMAreHiddenSelRegsValid",              VMM_FN(CPUMAreHiddenSelRegsValid),      &g_aArgsVMCPU[0],                           RT_ELEMENTS(g_aArgsVMCPU),                             REMFNDESC_FLAGS_RET_INT,    sizeof(bool),       NULL },
1190
1202
    { "CPUMR3RemEnter",                         VMM_FN(CPUMR3RemEnter),                 &g_aArgsCPUMR3RemEnter[0],                  RT_ELEMENTS(g_aArgsCPUMR3RemEnter),                    REMFNDESC_FLAGS_RET_INT,    sizeof(uint32_t),   NULL },
1191
1203
    { "CPUMR3RemLeave",                         VMM_FN(CPUMR3RemLeave),                 &g_aArgsCPUMR3RemLeave[0],                  RT_ELEMENTS(g_aArgsCPUMR3RemLeave),                    REMFNDESC_FLAGS_RET_VOID,   0,                  NULL },
1192
1204
    { "CPUMSetChangedFlags",                    VMM_FN(CPUMSetChangedFlags),            &g_aArgsCPUMSetChangedFlags[0],             RT_ELEMENTS(g_aArgsCPUMSetChangedFlags),               REMFNDESC_FLAGS_RET_VOID,   0,                  NULL },
1219
1231
    { "DBGFR3InfoLogRelHlp",                    VMM_FN(DBGFR3InfoLogRelHlp),            NULL,                                       0,                                                     REMFNDESC_FLAGS_RET_INT,    sizeof(void *),     NULL },
1220
1232
    { "DBGFR3AsSymbolByAddr",                   VMM_FN(DBGFR3AsSymbolByAddr),           &g_aArgsDBGFR3AsSymbolByAddr[0],            RT_ELEMENTS(g_aArgsDBGFR3AsSymbolByAddr),              REMFNDESC_FLAGS_RET_INT,    sizeof(int),        NULL },
1221
1233
    { "DBGFR3AddrFromFlat",                     VMM_FN(DBGFR3AddrFromFlat),             &g_aArgsDBGFR3AddrFromFlat[0],              RT_ELEMENTS(g_aArgsDBGFR3AddrFromFlat),                REMFNDESC_FLAGS_RET_INT,    sizeof(PDBGFADDRESS),       NULL },
1222
 
    { "DISInstr",                               VMM_FN(DISInstr),                       &g_aArgsDISInstr[0],                        RT_ELEMENTS(g_aArgsDISInstr),                          REMFNDESC_FLAGS_RET_INT,    sizeof(bool),       NULL },
 
1234
    { "DISInstrToStr",                          VMM_FN(DISInstrToStr),                  &g_aArgsDISInstrToStr[0],                   RT_ELEMENTS(g_aArgsDISInstrToStr),                     REMFNDESC_FLAGS_RET_INT,    sizeof(bool),       NULL },
1223
1235
    { "EMR3FatalError",                         VMM_FN(EMR3FatalError),                 &g_aArgsEMR3FatalError[0],                  RT_ELEMENTS(g_aArgsEMR3FatalError),                    REMFNDESC_FLAGS_RET_VOID,   0,                  NULL },
1224
1236
    { "EMRemLock",                              VMM_FN(EMRemLock),                      &g_aArgsVM[0],                              RT_ELEMENTS(g_aArgsVM),                                REMFNDESC_FLAGS_RET_VOID,   0,                  NULL },
1225
1237
    { "EMRemUnlock",                            VMM_FN(EMRemUnlock),                    &g_aArgsVM[0],                              RT_ELEMENTS(g_aArgsVM),                                REMFNDESC_FLAGS_RET_VOID,   0,                  NULL },
1302
1314
    { "VMR3ReqFree",                            VMM_FN(VMR3ReqFree),                    &g_aArgsVMR3ReqFree[0],                     RT_ELEMENTS(g_aArgsVMR3ReqFree),                       REMFNDESC_FLAGS_RET_INT,    sizeof(int),        NULL },
1303
1315
    { "VMR3GetVMCPUId",                         VMM_FN(VMR3GetVMCPUId),                 &g_aArgsVM[0],                              RT_ELEMENTS(g_aArgsVM),                                REMFNDESC_FLAGS_RET_INT,    sizeof(int),        NULL },
1304
1316
    { "VMR3GetVMCPUNativeThread",               VMM_FN(VMR3GetVMCPUNativeThread),       &g_aArgsVM[0],                              RT_ELEMENTS(g_aArgsVM),                                REMFNDESC_FLAGS_RET_INT,    sizeof(void *),     NULL },
1305
 
    { "EMInterpretInstructionCPU",              VMM_FN(EMInterpretInstructionCPU),      &g_aArgsEMInterpretInstructionCPU[0],       RT_ELEMENTS(g_aArgsEMInterpretInstructionCPU),         REMFNDESC_FLAGS_RET_INT,    sizeof(int),        NULL },
1306
1317
//    { "",                        VMM_FN(),                &g_aArgsVM[0],                              RT_ELEMENTS(g_aArgsVM),                                REMFNDESC_FLAGS_RET_INT,    sizeof(int),   NULL },
1307
1318
};
1308
1319
 
1335
1346
    { "RTMemPageAllocTag",                      (void *)(uintptr_t)&RTMemPageAllocTag,              &g_aArgsSIZE_TTag[0],                       RT_ELEMENTS(g_aArgsSIZE_TTag),                         REMFNDESC_FLAGS_RET_INT,    sizeof(void *),     NULL },
1336
1347
    { "RTMemPageFree",                          (void *)(uintptr_t)&RTMemPageFree,                  &g_aArgsPTR_SIZE_T[0],                      RT_ELEMENTS(g_aArgsPTR_SIZE_T),                        REMFNDESC_FLAGS_RET_VOID,   0,                  NULL },
1337
1348
    { "RTMemProtect",                           (void *)(uintptr_t)&RTMemProtect,                   &g_aArgsRTMemProtect[0],                    RT_ELEMENTS(g_aArgsRTMemProtect),                      REMFNDESC_FLAGS_RET_INT,    sizeof(int),        NULL },
 
1349
    { "RTMemEfAlloc",                           (void *)(uintptr_t)&RTMemEfAlloc,                   &g_aArgsSIZE_TTagLoc[0],                    RT_ELEMENTS(g_aArgsSIZE_TTagLoc),                      REMFNDESC_FLAGS_RET_INT,    sizeof(void *),     NULL },
 
1350
    { "RTMemEfAllocZ",                          (void *)(uintptr_t)&RTMemEfAllocZ,                  &g_aArgsSIZE_TTagLoc[0],                    RT_ELEMENTS(g_aArgsSIZE_TTagLoc),                      REMFNDESC_FLAGS_RET_INT,    sizeof(void *),     NULL },
 
1351
    { "RTMemEfRealloc",                         (void *)(uintptr_t)&RTMemEfRealloc,                 &g_aArgsRTMemEfRealloc[0],                  RT_ELEMENTS(g_aArgsRTMemEfRealloc),                    REMFNDESC_FLAGS_RET_INT,    sizeof(void *),     NULL },
 
1352
    { "RTMemEfFree",                            (void *)(uintptr_t)&RTMemEfFree,                    &g_aArgsPTRLoc[0],                          RT_ELEMENTS(g_aArgsPTRLoc),                            REMFNDESC_FLAGS_RET_VOID,   0,                  NULL },
1338
1353
    { "RTStrPrintf",                            (void *)(uintptr_t)&RTStrPrintf,                    &g_aArgsRTStrPrintf[0],                     RT_ELEMENTS(g_aArgsRTStrPrintf),                       REMFNDESC_FLAGS_RET_INT | REMFNDESC_FLAGS_ELLIPSIS, sizeof(size_t), NULL },
1339
1354
    { "RTStrPrintfV",                           (void *)(uintptr_t)&RTStrPrintfV,                   &g_aArgsRTStrPrintfV[0],                    RT_ELEMENTS(g_aArgsRTStrPrintfV),                      REMFNDESC_FLAGS_RET_INT | REMFNDESC_FLAGS_VALIST, sizeof(size_t), NULL },
1340
1355
    { "RTThreadSelf",                           (void *)(uintptr_t)&RTThreadSelf,                   NULL,                                       0,                                                     REMFNDESC_FLAGS_RET_INT,    sizeof(RTTHREAD),    NULL },