~ubuntu-branches/ubuntu/trusty/virtualbox-ose/trusty

« back to all changes in this revision

Viewing changes to src/VBox/Runtime/r0drv/linux/semmutex-r0drv-linux.c

  • Committer: Bazaar Package Importer
  • Author(s): Felix Geyer
  • Date: 2009-12-18 16:44:29 UTC
  • mfrom: (0.3.3 upstream) (0.4.6 squeeze)
  • Revision ID: james.westby@ubuntu.com-20091218164429-jd34ccexpv5na11a
Tags: 3.1.2-dfsg-1ubuntu1
* Merge from Debian unstable (LP: #498219), remaining changes:
  - Disable update action
    - debian/patches/u01-disable-update-action.dpatch
  - VirtualBox should go in Accessories, not in System tools (LP: #288590)
    - debian/virtualbox-ose-qt.files/virtualbox-ose.desktop
  - Add Apport hook
    - debian/virtualbox-ose.files/source_virtualbox-ose.py
    - debian/virtualbox-ose.install
  - Add Launchpad integration
    - debian/control
    - debian/lpi-bug.xpm
    - debian/patches/u02-lp-integration.dpatch
* Fixes the following bugs:
  - Kernel module fails to build with Linux >= 2.6.32 (LP: #474625)
  - X.Org drivers need to be rebuilt against X-Server 1.7 (LP: #495935)
  - The *-source packages try to build the kernel modules even though the
    kernel headers aren't available (LP: #473334)
* Replace *-source packages with transitional packages for *-dkms.
* Adapt u01-disable-update-action.dpatch and u02-lp-integration.dpatch for
  new upstream version.

Show diffs side-by-side

added added

removed removed

Lines of Context:
29
29
 */
30
30
 
31
31
 
32
 
 
33
32
/*******************************************************************************
34
33
*   Header Files                                                               *
35
34
*******************************************************************************/
36
35
#include "the-linux-kernel.h"
 
36
#include "internal/iprt.h"
37
37
#include <iprt/semaphore.h>
38
38
#include <iprt/alloc.h>
39
39
#include <iprt/assert.h>
76
76
    }
77
77
    return VERR_NO_MEMORY;
78
78
}
 
79
RT_EXPORT_SYMBOL(RTSemMutexCreate);
79
80
 
80
81
 
81
82
RTDECL(int)  RTSemMutexDestroy(RTSEMMUTEX MutexSem)
102
103
    RTMemFree(pMutexInt);
103
104
    return VINF_SUCCESS;
104
105
}
 
106
RT_EXPORT_SYMBOL(RTSemMutexDestroy);
105
107
 
106
108
 
107
109
RTDECL(int)  RTSemMutexRequest(RTSEMMUTEX MutexSem, unsigned cMillies)
167
169
            /* wait */
168
170
            lTimeout = schedule_timeout(lTimeout);
169
171
 
 
172
            after_wait(&Wait);
 
173
 
170
174
            /* Check if someone destroyed the semaphore while we was waiting. */
171
175
            if (pMutexInt->u32Magic != RTSEMMUTEX_MAGIC)
172
176
            {
186
190
    }
187
191
    return VINF_SUCCESS;
188
192
}
 
193
RT_EXPORT_SYMBOL(RTSemMutexRequest);
189
194
 
190
195
 
191
196
RTDECL(int)  RTSemMutexRelease(RTSEMMUTEX MutexSem)
221
226
 
222
227
    return VINF_SUCCESS;
223
228
}
 
229
RT_EXPORT_SYMBOL(RTSemMutexRelease);
224
230