[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [win-pv-devel] [PATCH 00/20] Use IOCTL interface instead of WMI in liteagent
The WMI handler in the liteagent does not recover from xeniface disable/enable. The liteagent also contains a no-longer-necessary overy complicated design, having evolved from a XenServer agent. These patched add extra IOCTLs to XenIface, and replace the liteagent with a simplified PnP aware service. Owen Smith (20): Add SUSPEND interface IOCTLs Add SHAREDINFO interface IOCTL Add IRP_MJ_CLEANUP handler that calls XenIfaceCleanup Remove win32stubagent Add base do-nothing service Add DeviceList Track a single device in the service. Add XenIfaceItf Resolve lifecycle bugs Add ServiceInstall and additional events Add Setup/teardown of active device and logging to OnSuspend/OnShutdown Fix precompiled headers on checked builds Add SetXenTime functionality Protect active device with critical section Add OnShutdown handler to poweroff/halt/reboot/hibernate/s3 VM Only acknowledge the shutdown if type is known Add event log entries for suspend and error Add IOCTL_XENIFACE_LOG to dump a log message to Dom0 Dynamically allocate the buffer for logging IoctlLog handler shouldnt be in with the store IOCTLs, and dont fail on /n/r in log messages include/xeniface_ioctls.h | 55 ++ src/liteagent/DeviceList.cpp | 300 ++++++++ src/liteagent/DeviceList.h | 93 +++ src/liteagent/LiteAgent.cpp | 618 +++++++++++++++++ src/liteagent/LiteAgent.h | 100 +++ src/liteagent/XenIfaceItf.cpp | 155 +++++ src/liteagent/XenIfaceItf.h | 63 ++ src/liteagent/liteagent.rc | 60 ++ src/liteagent/messages.mc | 66 ++ src/liteagent/xen.ico | Bin 0 -> 25214 bytes src/win32stubagent/WmiAccessor.cpp | 1331 ------------------------------------ src/win32stubagent/WmiAccessor.h | 88 --- src/win32stubagent/XSAccessor.cpp | 230 ------- src/win32stubagent/XSAccessor.h | 126 ---- src/win32stubagent/XService.cpp | 1044 ---------------------------- src/win32stubagent/XService.h | 54 -- src/win32stubagent/errors.cpp | 102 --- src/win32stubagent/messages.mc | 66 -- src/win32stubagent/stdafx.cpp | 39 -- src/win32stubagent/stdafx.h | 43 -- src/win32stubagent/w32xagent.rc | 60 -- src/win32stubagent/xen.ico | Bin 25214 -> 0 bytes src/xeniface/fdo.c | 35 + src/xeniface/fdo.h | 3 + src/xeniface/ioctl_sharedinfo.c | 70 ++ src/xeniface/ioctl_suspend.c | 223 ++++++ src/xeniface/ioctls.c | 91 ++- src/xeniface/ioctls.h | 63 ++ vs2012/liteagent/LiteAgent.vcxproj | 50 +- vs2012/xeniface/xeniface.vcxproj | 2 + vs2013/liteagent/LiteAgent.vcxproj | 47 +- vs2013/xeniface/xeniface.vcxproj | 2 + 32 files changed, 2017 insertions(+), 3262 deletions(-) create mode 100644 src/liteagent/DeviceList.cpp create mode 100644 src/liteagent/DeviceList.h create mode 100644 src/liteagent/LiteAgent.cpp create mode 100644 src/liteagent/LiteAgent.h create mode 100644 src/liteagent/XenIfaceItf.cpp create mode 100644 src/liteagent/XenIfaceItf.h create mode 100644 src/liteagent/liteagent.rc create mode 100644 src/liteagent/messages.mc create mode 100644 src/liteagent/xen.ico delete mode 100644 src/win32stubagent/WmiAccessor.cpp delete mode 100644 src/win32stubagent/WmiAccessor.h delete mode 100644 src/win32stubagent/XSAccessor.cpp delete mode 100644 src/win32stubagent/XSAccessor.h delete mode 100644 src/win32stubagent/XService.cpp delete mode 100644 src/win32stubagent/XService.h delete mode 100644 src/win32stubagent/errors.cpp delete mode 100644 src/win32stubagent/messages.mc delete mode 100644 src/win32stubagent/stdafx.cpp delete mode 100644 src/win32stubagent/stdafx.h delete mode 100644 src/win32stubagent/w32xagent.rc delete mode 100644 src/win32stubagent/xen.ico create mode 100644 src/xeniface/ioctl_sharedinfo.c create mode 100644 src/xeniface/ioctl_suspend.c -- 1.9.4.msysgit.1 _______________________________________________ win-pv-devel mailing list win-pv-devel@xxxxxxxxxxxxxxxxxxxx http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |