VirtualBox

Ignore:
Timestamp:
May 8, 2008 11:47:27 AM (17 years ago)
Author:
vboxsync
Message:

Linux additions: Only VbglHGCMCall() can deal with cancelled requests

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/linux/module/cmc.c

    r8693 r8700  
    3030{
    3131    VBoxDevice *dev = pvData;
     32    wait_event (dev->eventq, pHeader->fu32Flags & VBOX_HGCM_REQ_DONE);
     33}
     34
     35static DECLVBGL(void)
     36vboxadd_hgcm_callback_interruptible (VMMDevHGCMRequestHeader *pHeader, void *pvData, uint32_t u32Data)
     37{
     38    VBoxDevice *dev = pvData;
    3239    wait_event_interruptible (dev->eventq, pHeader->fu32Flags & VBOX_HGCM_REQ_DONE);
    3340}
     
    3744    switch (func)
    3845    {
     46        /* this function can NOT handle cancelled requests */
    3947        case IOCTL_VBOXGUEST_HGCM_CONNECT:
    4048            return VbglHGCMConnect (data, vboxadd_hgcm_callback, opaque, 0);
    4149
     50        /* this function can NOT handle cancelled requests */
    4251        case IOCTL_VBOXGUEST_HGCM_DISCONNECT:
    4352            return VbglHGCMDisconnect (data, vboxadd_hgcm_callback, opaque, 0);
    4453
     54        /* this function can handle cancelled requests */
    4555        case IOCTL_VBOXGUEST_HGCM_CALL:
    46             return VbglHGCMCall (data, vboxadd_hgcm_callback, opaque, 0);
     56            return VbglHGCMCall (data, vboxadd_hgcm_callback_interruptible, opaque, 0);
    4757
    4858        default:
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