VirtualBox

Changeset 37443 in vbox for trunk/include/VBox/vmm


Ignore:
Timestamp:
Jun 14, 2011 2:34:11 PM (14 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
72249
Message:

PDM: Implemented the NOP critical section.

Location:
trunk/include/VBox/vmm
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/pdmcritsect.h

    r35361 r37443  
    7474VMMR3DECL(void)     PDMR3CritSectLeaveAll(PVM pVM);
    7575
     76VMMR3DECL(PPDMCRITSECT)             PDMR3CritSectGetNop(PVM pVM);
     77VMMR3DECL(R0PTRTYPE(PPDMCRITSECT))  PDMR3CritSectGetNopR0(PVM pVM);
     78VMMR3DECL(RCPTRTYPE(PPDMCRITSECT))  PDMR3CritSectGetNopRC(PVM pVM);
     79
    7680/* Strict build: Remap the two enter calls to the debug versions. */
    7781#ifdef VBOX_STRICT
  • trunk/include/VBox/vmm/pdmdev.h

    r37410 r37443  
    29192919
    29202920    /**
     2921     * Gets the NOP critical section.
     2922     *
     2923     * @returns The ring-3 address of the NOP critical section.
     2924     * @param   pDevIns             The device instance.
     2925     */
     2926    DECLR3CALLBACKMEMBER(PPDMCRITSECT, pfnCritSectGetNop,(PPDMDEVINS pDevIns));
     2927
     2928    /**
     2929     * Gets the NOP critical section.
     2930     *
     2931     * @returns The ring-0 address of the NOP critical section.
     2932     * @param   pDevIns             The device instance.
     2933     */
     2934    DECLR3CALLBACKMEMBER(R0PTRTYPE(PPDMCRITSECT), pfnCritSectGetNopR0,(PPDMDEVINS pDevIns));
     2935
     2936    /**
     2937     * Gets the NOP critical section.
     2938     *
     2939     * @returns The raw-mode context address of the NOP critical section.
     2940     * @param   pDevIns             The device instance.
     2941     */
     2942    DECLR3CALLBACKMEMBER(RCPTRTYPE(PPDMCRITSECT), pfnCritSectGetNopRC,(PPDMDEVINS pDevIns));
     2943
     2944    /**
    29212945     * Creates a PDM thread.
    29222946     *
     
    33983422
    33993423/** Current PDMDEVHLPR3 version number. */
    3400 #define PDM_DEVHLPR3_VERSION                    PDM_VERSION_MAKE(0xffe7, 4, 0)
     3424#define PDM_DEVHLPR3_VERSION                    PDM_VERSION_MAKE(0xffe7, 5, 0)
    34013425
    34023426
     
    35893613
    35903614/** Current PDMDEVHLP version number. */
    3591 #define PDM_DEVHLPRC_VERSION                    PDM_VERSION_MAKE(0xffe6, 1, 0)
     3615#define PDM_DEVHLPRC_VERSION                    PDM_VERSION_MAKE(0xffe6, 2, 0)
    35923616
    35933617
     
    37883812
    37893813/** Current PDMDEVHLP version number. */
    3790 #define PDM_DEVHLPR0_VERSION                    PDM_VERSION_MAKE(0xffe5, 1, 0)
     3814#define PDM_DEVHLPR0_VERSION                    PDM_VERSION_MAKE(0xffe5, 2, 0)
    37913815
    37923816
     
    45144538
    45154539/**
     4540 * @copydoc PDMDEVHLPR3::pfnCritSectGetNop
     4541 */
     4542DECLINLINE(PPDMCRITSECT) PDMDevHlpCritSectGetNop(PPDMDEVINS pDevIns)
     4543{
     4544    return pDevIns->pHlpR3->pfnCritSectGetNop(pDevIns);
     4545}
     4546
     4547/**
     4548 * @copydoc PDMDEVHLPR3::pfnCritSectGetNopR0
     4549 */
     4550DECLINLINE(R0PTRTYPE(PPDMCRITSECT)) PDMDevHlpCritSectGetNopR0(PPDMDEVINS pDevIns)
     4551{
     4552    return pDevIns->pHlpR3->pfnCritSectGetNopR0(pDevIns);
     4553}
     4554
     4555/**
     4556 * @copydoc PDMDEVHLPR3::pfnCritSectGetNopRC
     4557 */
     4558DECLINLINE(RCPTRTYPE(PPDMCRITSECT)) PDMDevHlpCritSectGetNopRC(PPDMDEVINS pDevIns)
     4559{
     4560    return pDevIns->pHlpR3->pfnCritSectGetNopRC(pDevIns);
     4561}
     4562
     4563/**
    45164564 * @copydoc PDMDEVHLPR3::pfnThreadCreate
    45174565 */
  • trunk/include/VBox/vmm/vm.h

    r37416 r37443  
    969969        struct PDM s;
    970970#endif
    971         uint8_t     padding[1600];      /* multiple of 64 */
     971        uint8_t     padding[1920];      /* multiple of 64 */
    972972    } pdm;
    973973
     
    10751075
    10761076    /** Padding for aligning the cpu array on a page boundary. */
    1077     uint8_t         abAlignment2[1502];
     1077    uint8_t         abAlignment2[1182];
    10781078
    10791079    /* ---- end small stuff ---- */
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette