VirtualBox

Changeset 67890 in vbox


Ignore:
Timestamp:
Jul 10, 2017 6:20:00 PM (7 years ago)
Author:
vboxsync
Message:

LsiLogic: Fix buggy Solaris 9 guest driver

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Storage/DevLsiLogicSCSI.cpp

    r67806 r67890  
    22592259                uint8_t uDataDirection = MPT_SCSIIO_REQUEST_CONTROL_TXDIR_GET(pLsiReq->GuestRequest.SCSIIO.u32Control);
    22602260
    2261                 if (uDataDirection == MPT_SCSIIO_REQUEST_CONTROL_TXDIR_NONE)
     2261                 /*
     2262                  * Keep the direction to unknown if there is a mismatch between the data length
     2263                  * and the transfer direction bit.
     2264                  * The Solaris 9 driver is buggy and sets it to none for INQUIRY requests.
     2265                  */
     2266                if (   uDataDirection == MPT_SCSIIO_REQUEST_CONTROL_TXDIR_NONE
     2267                    && pLsiReq->GuestRequest.SCSIIO.u32DataLength == 0)
    22622268                    enmXferDir = PDMMEDIAEXIOREQSCSITXDIR_NONE;
    22632269                else if (uDataDirection == MPT_SCSIIO_REQUEST_CONTROL_TXDIR_WRITE)
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette