VirtualBox

Changeset 64016 in vbox for trunk/src/VBox/Devices


Ignore:
Timestamp:
Sep 26, 2016 3:14:48 PM (8 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
110932
Message:

AHCI: Remove tsStart from the request structure as the functionaliyt is already managed by the driver below

Location:
trunk/src/VBox/Devices
Files:
2 edited

Legend:

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

    r64015 r64016  
    6969#else
    7070# define VBOXDD_AHCI_REQ_SUBMIT(a,b,c,d)           do { } while (0)
    71 # define VBOXDD_AHCI_REQ_SUBMIT_TIMESTAMP(a,b)     do { } while (0)
    7271# define VBOXDD_AHCI_REQ_COMPLETED(a,b,c,d)        do { } while (0)
    73 # define VBOXDD_AHCI_REQ_COMPLETED_TIMESTAMP(a,b)  do { } while (0)
    7472#endif
    7573
     
    263261    /** The I/O request handle from the driver below associated with this request. */
    264262    PDMMEDIAEXIOREQ            hIoReq;
    265     /** Start timestamp of the request. */
    266     uint64_t                   tsStart;
    267263    /** Tag of the task. */
    268264    uint32_t                   uTag;
     
    59005896    bool fRedo = false;
    59015897    bool fCanceled = false;
    5902     uint64_t tsNow = RTTimeMilliTS();
    59035898
    59045899    LogFlowFunc(("pAhciPort=%p pAhciReq=%p rcReq=%d\n",
     
    59065901
    59075902    VBOXDD_AHCI_REQ_COMPLETED(pAhciReq, rcReq, pAhciReq->uOffset, pAhciReq->cbTransfer);
    5908     VBOXDD_AHCI_REQ_COMPLETED_TIMESTAMP(pAhciReq, tsNow);
    59095903
    59105904    /*
     
    59155909     */
    59165910    bool fReqErrSaved = false;
    5917 
    5918     /*
    5919      * Leave a release log entry if the request was active for more than 25 seconds
    5920      * (30 seconds is the timeout of the guest).
    5921      */
    5922     if (tsNow - pAhciReq->tsStart >= 25 * 1000)
    5923     {
    5924         const char *pcszReq = NULL;
    5925 
    5926         switch (pAhciReq->enmType)
    5927         {
    5928             case PDMMEDIAEXIOREQTYPE_READ:
    5929                 pcszReq = "Read";
    5930                 break;
    5931             case PDMMEDIAEXIOREQTYPE_WRITE:
    5932                 pcszReq = "Write";
    5933                 break;
    5934             case PDMMEDIAEXIOREQTYPE_FLUSH:
    5935                 pcszReq = "Flush";
    5936                 break;
    5937             case PDMMEDIAEXIOREQTYPE_DISCARD:
    5938                 pcszReq = "Trim";
    5939                 break;
    5940             default:
    5941                 pcszReq = "<Invalid>";
    5942         }
    5943 
    5944         LogRel(("AHCI#%uP%u: %s request was active for %llu seconds\n",
    5945                 pAhciPort->CTX_SUFF(pDevIns)->iInstance, pAhciPort->iLUN, pcszReq, (tsNow - pAhciReq->tsStart) / 1000));
    5946     }
    59475911
    59485912    if (rcReq != VERR_PDM_MEDIAEX_IOREQ_CANCELED)
     
    65566520
    65576521    VBOXDD_AHCI_REQ_SUBMIT(pAhciReq, pAhciReq->enmType, pAhciReq->uOffset, pAhciReq->cbTransfer);
    6558     VBOXDD_AHCI_REQ_SUBMIT_TIMESTAMP(pAhciReq, pAhciReq->tsStart);
    65596522
    65606523    if (enmType == PDMMEDIAEXIOREQTYPE_FLUSH)
     
    66066569static bool ahciR3CmdPrepare(PAHCIPort pAhciPort, PAHCIREQ pAhciReq)
    66076570{
    6608     pAhciReq->tsStart = RTTimeMilliTS();
    6609 
    66106571    /* Set current command slot */
    66116572    ASMAtomicWriteU32(&pAhciPort->u32CurrentCommandSlot, pAhciReq->uTag);
  • trunk/src/VBox/Devices/build/VBoxDD.d

    r64009 r64016  
    2424
    2525    probe ahci__req__submit(void *pvReq, int iTxDir, uint64_t offStart, uint32_t cbXfer);
    26     probe ahci__req__submit__timestamp(void *pvReq, uint64_t tsStart);
    2726    probe ahci__req__completed(void *pvReq, int rcReq, uint64_t offStart, uint32_t cbXfer);
    28     probe ahci__req__completed__timestamp(void *pvReq, uint64_t tsEnd);
    2927};
    3028
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