Changeset 39327 in vbox for trunk/src/VBox/VMM
- Timestamp:
- Nov 16, 2011 10:52:07 AM (13 years ago)
- svn:sync-xref-src-repo-rev:
- 74897
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR3/VMReq.cpp
r38838 r39327 216 216 * (2) that you want it's return code on success, (3) that you wish to wait for 217 217 * ever for it to return, and (4) that it's priority request that can be safely 218 * be handled during async suspend and power off. 218 * be handled during async suspend and power off. 219 219 * 220 220 * @returns VBox status code. In the unlikely event that VMR3ReqCallVU fails, … … 250 250 * Convenience wrapper for VMR3ReqCallU. 251 251 * 252 * This assumes (1) you're calling a function that returns void, (2) that you 253 * wish to wait for ever for it to return, and (3) that it's priority request 254 * that can be safely be handled during async suspend and power off. 252 * This assumes (1) you're calling a function that returns void, (2) that you 253 * wish to wait for ever for it to return, and (3) that it's priority request 254 * that can be safely be handled during async suspend and power off. 255 255 * 256 256 * @returns VBox status code of VMR3ReqCallVU. … … 933 933 934 934 /** 935 * Sets the relevant FF. 936 * 935 * Sets the relevant FF. 936 * 937 937 * @param pUVM Pointer to the user mode VM structure. 938 938 * @param idDstCpu VMCPUID_ANY or the ID of the current CPU. … … 964 964 STAM_COUNTER_INC(&pUVM->vm.s.StatReqMoreThan1); 965 965 966 /* 966 /* 967 967 * Chop off the last one (pReq). 968 968 */ … … 976 976 ASMAtomicWriteNullPtr(&pPrev->pNext); 977 977 978 /* 978 /* 979 979 * Push the others back onto the list (end of it). 980 980 */ … … 1015 1015 * and the CPU ID for a CPU specific one. In the latter 1016 1016 * case the calling thread must be the EMT of that CPU. 1017 * @param fPriorityOnly When set, only process the priority request queue. 1017 * @param fPriorityOnly When set, only process the priority request queue. 1018 1018 * 1019 1019 * @note SMP safe (multiple EMTs trying to satisfy VM_FF_REQUESTs). 1020 1020 * 1021 * @remarks This was made reentrant for async PDM handling, the debugger and 1021 * @remarks This was made reentrant for async PDM handling, the debugger and 1022 1022 * others. 1023 1023 */ … … 1054 1054 { 1055 1055 /* 1056 * Get the pending requests. 1057 * 1056 * Get the pending requests. 1057 * 1058 1058 * If there are more than one request, unlink the oldest and put the 1059 1059 * rest back so that we're reentrant. … … 1116 1116 #if 1 /*def VBOX_STRICT */ 1117 1117 /* 1118 * Disable rendezvous if servicing a priority request. Priority requests 1119 * can not make use of the EMT rendezvous API. 1118 * Disable rendezvous if servicing a priority request. Priority requests 1119 * can not make use of the EMT rendezvous API. 1120 1120 */ 1121 1121 PVMCPU pVCpu = NULL;
Note:
See TracChangeset
for help on using the changeset viewer.