VirtualBox

Changeset 105751 in vbox for trunk/src/VBox/Devices/VMMDev


Ignore:
Timestamp:
Aug 21, 2024 9:51:08 AM (6 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
164463
Message:

VMMDev,Vbgl: Extend the VMMDevReq_HGCMCancel2 request to take a full 64-bit physical address. This should be backwards compatible. bugref:10456

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/VMMDev/VMMDev.cpp

    r104065 r105751  
    20012001static int vmmdevReqHandler_HGCMCancel2(PVMMDEVCC pThisCC, VMMDevRequestHeader *pReqHdr)
    20022002{
    2003     VMMDevHGCMCancel2 *pReq = (VMMDevHGCMCancel2 *)pReqHdr;
    2004     AssertMsgReturn(pReq->header.size >= sizeof(*pReq), ("%u\n", pReq->header.size), VERR_INVALID_PARAMETER);  /** @todo Not sure why this >= ... */
     2003    /* Note! Using '>=' for the size check because that simplifies amending the
     2004             structure (like we did already) */
     2005    RTGCPHYS GCPhysReqToCancel;
     2006    if (pReqHdr->size >= sizeof(VMMDevHGCMCancel2))
     2007        GCPhysReqToCancel = ((VMMDevHGCMCancel2 const *)pReqHdr)->physReqToCancel;
     2008    else if (pReqHdr->size == sizeof(VMMDevHGCMCancel2Old))
     2009        GCPhysReqToCancel = ((VMMDevHGCMCancel2Old const *)pReqHdr)->physReqToCancel;
     2010    else
     2011        AssertMsgFailedReturn(("%u\n", pReqHdr->size), VERR_INVALID_PARAMETER);
     2012    RT_UNTRUSTED_VALIDATED_FENCE();
    20052013
    20062014    if (pThisCC->pHGCMDrv)
    20072015    {
    2008         Log(("VMMDevReq_HGCMCancel2\n"));
    2009         return vmmdevR3HgcmCancel2(pThisCC, pReq->physReqToCancel);
     2016        Log(("VMMDevReq_HGCMCancel2: %RGp\n", GCPhysReqToCancel));
     2017        return vmmdevR3HgcmCancel2(pThisCC, GCPhysReqToCancel);
    20102018    }
    20112019
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