VirtualBox

Changeset 56403 in vbox


Ignore:
Timestamp:
Jun 13, 2015 6:21:54 PM (10 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
101003
Message:

IOMIOPortWriteString,IOMIOPortReadString: Don't make all string I/O return to ring-3 just because the device hasn't got any string I/O callback.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified trunk/src/VBox/VMM/VMMAll/IOMAll.cpp

    r56287 r56403  
    6868 * @retval  VINF_EM_FIRST-VINF_EM_LAST  Success with some exceptions (see IOM_SUCCESS()), the
    6969 *                                      status code must be passed on to EM.
    70  * @retval  VINF_IOM_R3_IOPORT_READ     Defer the read to ring-3. (R0/GC only)
     70 * @retval  VINF_IOM_R3_IOPORT_READ     Defer the read to ring-3. (R0/RC only)
    7171 *
    7272 * @param   pVM         Pointer to the VM.
     
    227227 * @returns Strict VBox status code. Informational status codes other than the one documented
    228228 *          here are to be treated as internal failure. Use IOM_SUCCESS() to check for success.
    229  * @retval  VINF_SUCCESS                Success.
     229 * @retval  VINF_SUCCESS                Success or no string I/O callback in
     230 *                                      this context.
    230231 * @retval  VINF_EM_FIRST-VINF_EM_LAST  Success with some exceptions (see IOM_SUCCESS()), the
    231232 *                                      status code must be passed on to EM.
    232  * @retval  VINF_IOM_R3_IOPORT_READ     Defer the read to ring-3. (R0/GC only)
     233 * @retval  VINF_IOM_R3_IOPORT_READ     Defer the read to ring-3. (R0/RC only)
    233234 *
    234235 * @param   pVM         Pointer to the VM.
    235236 * @param   pVCpu       Pointer to the virtual CPU structure of the caller.
    236237 * @param   Port        The port to read.
    237  * @param   pGCPtrDst   Pointer to the destination buffer (GC, incremented appropriately).
     238 * @param   pGCPtrDst   Pointer to the destination buffer (RC, incremented
     239 *                      appropriately).
    238240 * @param   pcTransfers Pointer to the number of transfer units to read, on return remaining transfer units.
    239241 * @param   cb          Size of the transfer unit (1, 2 or 4 bytes).
     
    292294            STAM_STATS({ if (pStats) STAM_COUNTER_INC(&pStats->InRZToR3); });
    293295            IOM_UNLOCK_SHARED(pVM);
    294             return VINF_IOM_R3_IOPORT_READ;
     296            return VINF_SUCCESS;
    295297        }
    296298#endif
     
    372374 * @retval  VINF_EM_FIRST-VINF_EM_LAST  Success with some exceptions (see IOM_SUCCESS()), the
    373375 *                                      status code must be passed on to EM.
    374  * @retval  VINF_IOM_R3_IOPORT_WRITE    Defer the write to ring-3. (R0/GC only)
     376 * @retval  VINF_IOM_R3_IOPORT_WRITE    Defer the write to ring-3. (R0/RC only)
    375377 *
    376378 * @param   pVM         Pointer to the VM.
     
    506508 * @returns Strict VBox status code. Informational status codes other than the one documented
    507509 *          here are to be treated as internal failure. Use IOM_SUCCESS() to check for success.
    508  * @retval  VINF_SUCCESS                Success.
     510 * @retval  VINF_SUCCESS                Success or no string I/O callback in
     511 *                                      this context.
    509512 * @retval  VINF_EM_FIRST-VINF_EM_LAST  Success with some exceptions (see IOM_SUCCESS()), the
    510513 *                                      status code must be passed on to EM.
    511  * @retval  VINF_IOM_R3_IOPORT_WRITE    Defer the write to ring-3. (R0/GC only)
     514 * @retval  VINF_IOM_R3_IOPORT_WRITE    Defer the write to ring-3. (R0/RC only)
    512515 *
    513516 * @param   pVM         Pointer to the VM.
    514517 * @param   pVCpu       Pointer to the virtual CPU structure of the caller.
    515518 * @param   Port        The port to write.
    516  * @param   pGCPtrSrc   Pointer to the source buffer (GC, incremented appropriately).
     519 * @param   pGCPtrSrc   Pointer to the source buffer (RC, incremented
     520 *                      appropriately).
    517521 * @param   pcTransfers Pointer to the number of transfer units to write, on return remaining transfer units.
    518522 * @param   cb          Size of the transfer unit (1, 2 or 4 bytes).
     
    571575            STAM_STATS({ if (pStats) STAM_COUNTER_INC(&pStats->OutRZToR3); });
    572576            IOM_UNLOCK_SHARED(pVM);
    573             return VINF_IOM_R3_IOPORT_WRITE;
     577            return VINF_SUCCESS;
    574578        }
    575579#endif
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