VirtualBox

Changeset 43086 in vbox for trunk/include


Ignore:
Timestamp:
Aug 29, 2012 4:49:52 PM (13 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
80441
Message:

HGSMI: fix host flags racing

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/HGSMI/HGSMIChSetup.h

    r41636 r43086  
    4444
    4545/* HGSMI setup and configuration data structures. */
     46/* host->guest commands pending, should be accessed under FIFO lock only */
    4647#define HGSMIHOSTFLAGS_COMMANDS_PENDING 0x1
     48/* IRQ is fired, should be accessed under VGAState::lock only  */
    4749#define HGSMIHOSTFLAGS_IRQ              0x2
    4850#ifdef VBOX_WITH_WDDM
    49 /* one or more guest commands is completed */
     51/* one or more guest commands is completed, should be accessed under FIFO lock only */
    5052# define HGSMIHOSTFLAGS_GCOMMAND_COMPLETED 0x4
     53/* watchdog timer interrupt flag (used for debugging), should be accessed under VGAState::lock only */
    5154# define HGSMIHOSTFLAGS_WATCHDOG           0x8
    5255#endif
     56/* vsync interrupt flag, should be accessed under VGAState::lock only */
    5357#define HGSMIHOSTFLAGS_VSYNC               0x10
    5458
    5559typedef struct _HGSMIHOSTFLAGS
    5660{
    57     uint32_t u32HostFlags;
     61    /* host flags can be accessed and modified in multiple threads concurrently,
     62     * e.g. CrOpenGL HGCM and GUI threads when to completing HGSMI 3D and Video Accel respectively,
     63     * EMT thread when dealing with HGSMI command processing, etc.
     64     * Besides settings/cleaning flags atomically, some each flag has its own special sync restrictions,
     65     * see commants for flags definitions above */
     66    volatile uint32_t u32HostFlags;
    5867    uint32_t au32Reserved[3];
    5968} HGSMIHOSTFLAGS;
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