]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blobdiff - ubuntu/vbox/vboxguest/VBoxGuestInternal.h
UBUNTU: ubuntu: vbox -- Update to 5.1.10-dfsg-2
[mirror_ubuntu-zesty-kernel.git] / ubuntu / vbox / vboxguest / VBoxGuestInternal.h
index 98078729232f5030b461fc50143d856e8b72bdac..c5b652bbe7d7c33edabfcc049185c13ce4d96865 100644 (file)
 # define VBOXGUEST_USE_DEFERRED_WAKE_UP
 #endif
 
+/** @def VBOXGUEST_MOUSE_NOTIFY_CAN_PREEMPT
+ * The mouse notification callback can cause preemption and must not be invoked
+ * while holding a high-level spinlock.
+ */
+#if defined(RT_OS_SOLARIS) || defined(DOXYGEN_RUNNING)
+# define VBOXGUEST_MOUSE_NOTIFY_CAN_PREEMPT
+#endif
 
 /** Pointer to the VBoxGuest per session data. */
 typedef struct VBOXGUESTSESSION *PVBOXGUESTSESSION;
@@ -315,6 +322,7 @@ RT_C_DECLS_BEGIN
 
 int  VGDrvCommonInitDevExt(PVBOXGUESTDEVEXT pDevExt, uint16_t IOPortBase, void *pvMMIOBase, uint32_t cbMMIO,
                            VBOXOSTYPE enmOSType, uint32_t fEvents);
+bool VGDrvCommonIsOurIRQ(PVBOXGUESTDEVEXT pDevExt);
 bool VGDrvCommonISR(PVBOXGUESTDEVEXT pDevExt);
 void VGDrvCommonDeleteDevExt(PVBOXGUESTDEVEXT pDevExt);
 int  VGDrvCommonReinitDevExtAfterHibernation(PVBOXGUESTDEVEXT pDevExt, VBOXOSTYPE enmOSType);
@@ -345,6 +353,10 @@ void VGDrvNativeISRMousePollEvent(PVBOXGUESTDEVEXT pDevExt);
 int VGDrvNtIOCtl_DpcLatencyChecker(void);
 #endif
 
+#ifdef VBOXGUEST_MOUSE_NOTIFY_CAN_PREEMPT
+int VGDrvNativeSetMouseNotifyCallback(PVBOXGUESTDEVEXT pDevExt, VBoxGuestMouseSetNotifyCallback *pNotify);
+#endif
+
 RT_C_DECLS_END
 
 #endif