VirtualBox

Changeset 38838 in vbox for trunk/src/VBox/Main/src-client


Ignore:
Timestamp:
Sep 23, 2011 11:21:55 AM (14 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
74134
Message:

VMM,++: Try fix the async reset, suspend and power-off problems in PDM wrt conflicting VMM requests. Split them into priority requests and normal requests. The priority requests can safely be processed when PDM is doing async state change waits, the normal ones cannot. (The problem I bumped into was a unmap-chunk request from PGM being processed during PDMR3Reset, causing a recursive VMMR3EmtRendezvous deadlock.)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/src-client/DisplayImpl.cpp

    r38642 r38838  
    22882288    while (cRetries-- > 0)
    22892289    {
    2290         vrc = VMR3ReqCallWait(pVM, VMCPUID_ANY, (PFNRT)Display::displayTakeScreenshotEMT, 6,
    2291                               pDisplay, aScreenId, &pu8Data, &cbData, &cx, &cy);
     2290        /* Note! Not sure if the priority call is such a good idea here, but
     2291                 it would be nice to have an accurate screenshot for the bug
     2292                 report if the VM deadlocks. */
     2293        vrc = VMR3ReqPriorityCallWait(pVM, VMCPUID_ANY, (PFNRT)Display::displayTakeScreenshotEMT, 6,
     2294                                      pDisplay, aScreenId, &pu8Data, &cbData, &cx, &cy);
    22922295        if (vrc != VERR_TRY_AGAIN)
    22932296        {
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