- Timestamp:
- Jan 30, 2019 6:00:43 PM (6 years ago)
- Location:
- trunk
- Files:
-
- 5 edited
-
include/VBox/VMMDev.h (modified) (4 diffs)
-
src/VBox/Additions/common/VBoxGuest/VBoxGuest.cpp (modified) (1 diff)
-
src/VBox/Additions/common/VBoxGuest/lib/VBoxGuestR0LibGenericRequest.cpp (modified) (1 diff)
-
src/VBox/Devices/VMMDev/VMMDev.cpp (modified) (2 diffs)
-
src/VBox/Devices/VMMDev/VMMDevHGCM.cpp (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/VMMDev.h
r76585 r77056 163 163 VMMDevReq_HGCMConnect = 60, 164 164 VMMDevReq_HGCMDisconnect = 61, 165 #ifdef VBOX_WITH_64_BITS_GUESTS166 165 VMMDevReq_HGCMCall32 = 62, 167 166 VMMDevReq_HGCMCall64 = 63, 168 #else 169 VMMDevReq_HGCMCall = 62, 170 #endif /* VBOX_WITH_64_BITS_GUESTS */ 167 # ifdef IN_GUEST 168 # if ARCH_BITS == 64 169 VMMDevReq_HGCMCall = VMMDevReq_HGCMCall64, 170 # elif ARCH_BITS == 32 || ARCH_BITS == 16 171 VMMDevReq_HGCMCall = VMMDevReq_HGCMCall32, 172 # else 173 # error "Unsupported ARCH_BITS" 174 # endif 175 # endif 171 176 VMMDevReq_HGCMCancel = 64, 172 177 VMMDevReq_HGCMCancel2 = 65, … … 198 203 VMMDevReq_SizeHack = 0x7fffffff 199 204 } VMMDevRequestType; 200 201 #ifdef VBOX_WITH_64_BITS_GUESTS202 /*203 * Constants and structures are redefined for the guest.204 *205 * Host code MUST always use either *32 or *64 variant explicitely.206 * Host source code will use VBOX_HGCM_HOST_CODE define to catch undefined207 * data types and constants.208 *209 * This redefinition means that the new additions builds will use210 * the *64 or *32 variants depending on the current architecture bit count (ARCH_BITS).211 */212 # ifndef VBOX_HGCM_HOST_CODE213 # if ARCH_BITS == 64214 # define VMMDevReq_HGCMCall VMMDevReq_HGCMCall64215 # elif ARCH_BITS == 32 || ARCH_BITS == 16216 # define VMMDevReq_HGCMCall VMMDevReq_HGCMCall32217 # else218 # error "Unsupported ARCH_BITS"219 # endif220 # endif /* !VBOX_HGCM_HOST_CODE */221 #endif /* VBOX_WITH_64_BITS_GUESTS */222 205 223 206 /** Version of VMMDevRequestHeader structure. */ … … 1626 1609 * HGCM call request structure. 1627 1610 * 1628 * Used by VMMDevReq_HGCMCall , VMMDevReq_HGCMCall32 and VMMDevReq_HGCMCall64.1611 * Used by VMMDevReq_HGCMCall32 and VMMDevReq_HGCMCall64. 1629 1612 */ 1630 1613 typedef struct … … 1781 1764 case VMMDevReq_HGCMDisconnect: 1782 1765 return sizeof(VMMDevHGCMDisconnect); 1783 #ifdef VBOX_WITH_64_BITS_GUESTS1784 1766 case VMMDevReq_HGCMCall32: 1785 1767 return sizeof(VMMDevHGCMCall); 1768 # ifdef VBOX_WITH_64_BITS_GUESTS 1786 1769 case VMMDevReq_HGCMCall64: 1787 1770 return sizeof(VMMDevHGCMCall); 1788 #else 1789 case VMMDevReq_HGCMCall: 1790 return sizeof(VMMDevHGCMCall); 1791 #endif /* VBOX_WITH_64_BITS_GUESTS */ 1771 # endif 1792 1772 case VMMDevReq_HGCMCancel: 1793 1773 return sizeof(VMMDevHGCMCancel); -
trunk/src/VBox/Additions/common/VBoxGuest/VBoxGuest.cpp
r76553 r77056 2322 2322 case VMMDevReq_HGCMDisconnect: 2323 2323 # ifdef VBOX_WITH_64_BITS_GUESTS 2324 case VMMDevReq_HGCMCall64: 2325 # endif 2324 2326 case VMMDevReq_HGCMCall32: 2325 case VMMDevReq_HGCMCall64:2326 # else2327 case VMMDevReq_HGCMCall:2328 # endif /* VBOX_WITH_64_BITS_GUESTS */2329 2327 case VMMDevReq_HGCMCancel: 2330 2328 case VMMDevReq_HGCMCancel2: -
trunk/src/VBox/Additions/common/VBoxGuest/lib/VBoxGuestR0LibGenericRequest.cpp
r76553 r77056 89 89 || pReq->requestType == VMMDevReq_GetDisplayChangeRequestMulti 90 90 #ifdef VBOX_WITH_64_BITS_GUESTS 91 || pReq->requestType == VMMDevReq_HGCMCall64 92 #endif 91 93 || pReq->requestType == VMMDevReq_HGCMCall32 92 || pReq->requestType == VMMDevReq_HGCMCall6493 #else94 || pReq->requestType == VMMDevReq_HGCMCall95 #endif96 94 || pReq->requestType == VMMDevReq_RegisterSharedModule 97 95 || pReq->requestType == VMMDevReq_ReportGuestUserState -
trunk/src/VBox/Devices/VMMDev/VMMDev.cpp
r76553 r77056 1783 1783 1784 1784 /** 1785 * Handles VMMDevReq_HGCMCall .1785 * Handles VMMDevReq_HGCMCall32 and VMMDevReq_HGCMCall64. 1786 1786 * 1787 1787 * @returns VBox status code that the guest should see. … … 2742 2742 2743 2743 # ifdef VBOX_WITH_64_BITS_GUESTS 2744 case VMMDevReq_HGCMCall64: 2745 # endif 2744 2746 case VMMDevReq_HGCMCall32: 2745 case VMMDevReq_HGCMCall64:2746 # else2747 case VMMDevReq_HGCMCall:2748 # endif /* VBOX_WITH_64_BITS_GUESTS */2749 2747 vmmdevReqHdrSetHgcmAsyncExecute(pThis, GCPhysReqHdr, *ppLock); 2750 2748 pReqHdr->rc = vmmdevReqHandler_HGCMCall(pThis, pReqHdr, GCPhysReqHdr, tsArrival, ppLock); -
trunk/src/VBox/Devices/VMMDev/VMMDevHGCM.cpp
r76664 r77056 1049 1049 || enmRequestType == VMMDevReq_HGCMCall64, VERR_INVALID_PARAMETER); 1050 1050 #else 1051 ASSERT_GUEST_RETURN(enmRequestType == VMMDevReq_HGCMCall , VERR_INVALID_PARAMETER);1051 ASSERT_GUEST_RETURN(enmRequestType == VMMDevReq_HGCMCall32, VERR_INVALID_PARAMETER); 1052 1052 #endif 1053 1053 RT_UNTRUSTED_VALIDATED_FENCE(); … … 1372 1372 #ifdef VBOX_WITH_64_BITS_GUESTS 1373 1373 case VMMDevReq_HGCMCall64: 1374 #endif 1374 1375 case VMMDevReq_HGCMCall32: 1375 #else1376 case VMMDevReq_HGCMCall:1377 #endif1378 1376 { 1379 1377 VMMDevHGCMCall *pHGCMCall = (VMMDevHGCMCall *)pHeader; … … 1455 1453 #ifdef VBOX_WITH_64_BITS_GUESTS 1456 1454 case VMMDevReq_HGCMCall64: 1455 #endif 1457 1456 case VMMDevReq_HGCMCall32: 1458 #else1459 case VMMDevReq_HGCMCall:1460 #endif1461 1457 { 1462 1458 VMMDevHGCMCall *pHGCMCall = (VMMDevHGCMCall *)pHeader; … … 2191 2187 2192 2188 #ifdef VBOX_WITH_64_BITS_GUESTS 2189 case VMMDevReq_HGCMCall64: 2190 #endif 2193 2191 case VMMDevReq_HGCMCall32: 2194 case VMMDevReq_HGCMCall64:2195 #else2196 case VMMDevReq_HGCMCall:2197 #endif2198 2192 { 2199 2193 VMMDevHGCMCall *pReq = (VMMDevHGCMCall *)pReqHdr;
Note:
See TracChangeset
for help on using the changeset viewer.

