Changeset 28404 in vbox
- Timestamp:
- Apr 16, 2010 10:19:51 AM (15 years ago)
- Location:
- trunk/include/VBox
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/VBoxGuestLib.h
r28402 r28404 550 550 /** @} */ 551 551 552 /** @name Page sharing 553 * @{ */ 554 VBGLR3DECL(int) VbglR3RegisterSharedModule(char *pszModuleName, char *pszVersion, RTGCPTR GCBaseAddr, uint32_t cbModule, unsigned cRegions, VMMDevSharedModuleRegion *pRegions); 555 VBGLR3DECL(int) VbglR3UnregisterSharedModule(char *pszModuleName, char *pszVersion, RTGCPTR GCBaseAddr, uint32_t cbModule); 556 VBGLR3DECL(int) VbglR3CheckSharedModules(); 557 /** @} */ 558 552 559 #endif /* IN_RING3 */ 553 560 /** @} */ -
trunk/include/VBox/VMMDev.h
r28264 r28404 174 174 VMMDevReq_GetCpuHotPlugRequest = 210, 175 175 VMMDevReq_SetCpuHotPlugStatus = 211, 176 #ifdef VBOX_WITH_PAGE_SHARING 177 VMMDevReq_RegisterSharedModule = 212, 178 VMMDevReq_UnregisterSharedModule = 213, 179 VMMDevReq_CheckSharedModules = 214, 180 #endif 176 181 VMMDevReq_SizeHack = 0x7fffffff 177 182 } VMMDevRequestType; … … 1061 1066 } VMMDevGetCpuHotPlugRequest; 1062 1067 AssertCompileSize(VMMDevGetCpuHotPlugRequest, 24+4+4+4); 1068 1069 1070 /** 1071 * Shared region description 1072 */ 1073 typedef struct 1074 { 1075 RTGCPTR GCRegionAddr; 1076 uint32_t cbRegion; 1077 uint32_t u32Alignment; 1078 } VMMDevSharedModuleRegion; 1079 AssertCompileSize(VMMDevSharedModuleRegion, 16); 1080 1081 /** 1082 * Shared module registration 1083 */ 1084 typedef struct 1085 { 1086 /** Header. */ 1087 VMMDevRequestHeader header; 1088 /** Shared module size. */ 1089 uint32_t cbModule; 1090 /** Number of included region descriptors */ 1091 uint32_t cRegions; 1092 /** Base address of the shared module. */ 1093 RTGCPTR GCBaseAddr; 1094 /** Module name */ 1095 char szName[128]; 1096 /** Module version */ 1097 char szVersion[16]; 1098 /** Shared region descriptor(s). */ 1099 VMMDevSharedModuleRegion aRegions[1]; 1100 } VMMDevSharedModuleRegistrationRequest; 1101 AssertCompileSize(VMMDevSharedModuleRegistrationRequest, 24+4+4+8+128+16+16); 1102 1103 1104 /** 1105 * Shared module unregistration 1106 */ 1107 typedef struct 1108 { 1109 /** Header. */ 1110 VMMDevRequestHeader header; 1111 /** Shared module size. */ 1112 uint32_t cbModule; 1113 /** Align at 8 byte boundary. */ 1114 uint32_t u32Alignment; 1115 /** Base address of the shared module. */ 1116 RTGCPTR GCBaseAddr; 1117 /** Module name */ 1118 char szName[128]; 1119 /** Module version */ 1120 char szVersion[16]; 1121 } VMMDevSharedModuleUnregistrationRequest; 1122 AssertCompileSize(VMMDevSharedModuleUnregistrationRequest, 24+4+4+8+128+16); 1123 1124 1125 /** 1126 * Shared module periodic check 1127 */ 1128 typedef struct 1129 { 1130 /** Header. */ 1131 VMMDevRequestHeader header; 1132 } VMMDevSharedModuleCheckRequest; 1133 AssertCompileSize(VMMDevSharedModuleCheckRequest, 24); 1063 1134 1064 1135 #pragma pack() … … 1562 1633 case VMMDevReq_SetCpuHotPlugStatus: 1563 1634 return sizeof(VMMDevCpuHotPlugStatusRequest); 1635 #ifdef VBOX_WITH_PAGE_SHARING 1636 case VMMDevReq_RegisterSharedModule: 1637 return sizeof(VMMDevSharedModuleRegistrationRequest); 1638 case VMMDevReq_UnregisterSharedModule: 1639 return sizeof(VMMDevSharedModuleUnregistrationRequest); 1640 case VMMDevReq_CheckSharedModules: 1641 return sizeof(VMMDevSharedModuleCheckRequest); 1642 #endif 1643 1564 1644 default: 1565 1645 return 0;
Note:
See TracChangeset
for help on using the changeset viewer.