Changeset 90426 in vbox
- Timestamp:
- Jul 30, 2021 1:22:04 PM (4 years ago)
- Location:
- trunk/src/VBox/VMM/VMMAll
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/IOMAll.cpp
r90346 r90426 65 65 /* For lookups we need to share lock IOM. */ 66 66 int rc2 = IOM_LOCK_SHARED(pVM); 67 #ifndef IN_RING3 68 if (rc2 == VERR_SEM_BUSY) 67 if (RT_SUCCESS(rc2)) 68 { /* likely */ } 69 #ifndef IN_RING3 70 else if (rc2 == VERR_SEM_BUSY) 69 71 return VINF_IOM_R3_IOPORT_READ; 70 72 #endif 71 AssertRC(rc2); 73 else 74 AssertMsgFailedReturn(("rc2=%Rrc\n", rc2), rc2); 72 75 73 76 /* … … 189 192 /* For lookups we need to share lock IOM. */ 190 193 int rc2 = IOM_LOCK_SHARED(pVM); 191 #ifndef IN_RING3 192 if (rc2 == VERR_SEM_BUSY) 194 if (RT_SUCCESS(rc2)) 195 { /* likely */ } 196 #ifndef IN_RING3 197 else if (rc2 == VERR_SEM_BUSY) 193 198 return VINF_IOM_R3_IOPORT_READ; 194 199 #endif 195 AssertRC(rc2); 200 else 201 AssertMsgFailedReturn(("rc2=%Rrc\n", rc2), rc2); 196 202 197 203 const uint32_t cRequestedTransfers = *pcTransfers; … … 365 371 /* For lookups we need to share lock IOM. */ 366 372 int rc2 = IOM_LOCK_SHARED(pVM); 367 #ifndef IN_RING3 368 if (rc2 == VERR_SEM_BUSY) 373 if (RT_SUCCESS(rc2)) 374 { /* likely */ } 375 #ifndef IN_RING3 376 else if (rc2 == VERR_SEM_BUSY) 369 377 return iomIOPortRing3WritePending(pVCpu, Port, u32Value, cbValue); 370 378 #endif 371 AssertRC(rc2); 379 else 380 AssertMsgFailedReturn(("rc2=%Rrc\n", rc2), rc2); 372 381 373 382 /* … … 475 484 /* Take the IOM lock before performing any device I/O. */ 476 485 int rc2 = IOM_LOCK_SHARED(pVM); 477 #ifndef IN_RING3 478 if (rc2 == VERR_SEM_BUSY) 486 if (RT_SUCCESS(rc2)) 487 { /* likely */ } 488 #ifndef IN_RING3 489 else if (rc2 == VERR_SEM_BUSY) 479 490 return VINF_IOM_R3_IOPORT_WRITE; 480 491 #endif 481 AssertRC(rc2); 492 else 493 AssertMsgFailedReturn(("rc2=%Rrc\n", rc2), rc2); 482 494 483 495 const uint32_t cRequestedTransfers = *pcTransfers; -
trunk/src/VBox/VMM/VMMAll/IOMAllMmioNew.cpp
r90346 r90426 1021 1021 * @returns VBox status code. This API may return VINF_SUCCESS even if no 1022 1022 * remapping is made. 1023 * @retval VERR_SEM_BUSY in ring-0 if we cannot get the IOM lock. 1023 1024 * 1024 1025 * @param pVM The cross context VM structure.
Note:
See TracChangeset
for help on using the changeset viewer.