VirtualBox

Ignore:
Timestamp:
May 21, 2014 1:30:19 PM (11 years ago)
Author:
vboxsync
Message:

wddm: fix IRQ handling racing

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPWddm.cpp

    r51269 r51325  
    14621462
    14631463    do {
     1464        /* re-read flags right here to avoid host-guest racing,
     1465         * i.e. the situation:
     1466         * 1. guest reads flags ant it is HGSMIHOSTFLAGS_IRQ, i.e. HGSMIHOSTFLAGS_GCOMMAND_COMPLETED no set
     1467         * 2. host completes guest command, sets the HGSMIHOSTFLAGS_GCOMMAND_COMPLETED and raises IRQ
     1468         * 3. guest clleans IRQ and exits  */
     1469        flags = VBoxCommonFromDeviceExt(pDevExt)->hostCtx.pfHostFlags->u32HostFlags;
     1470
    14641471        if (flags & HGSMIHOSTFLAGS_GCOMMAND_COMPLETED)
    14651472        {
     
    15061513        else
    15071514            break;
    1508 
    1509         flags = VBoxCommonFromDeviceExt(pDevExt)->hostCtx.pfHostFlags->u32HostFlags;
    1510 
    15111515    } while (1);
    15121516
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