win-pvdrivers

view xenvbd_filter/xenvbd_filter.h @ 1027:0f40ce5cb467

Fix hibernate in scsiport
author James Harper <james.harper@bendigoit.com.au>
date Tue Feb 19 20:57:09 2013 +1100 (2013-02-19)
parents fe3af8f4d54b
children 5775fb8612ab
line source
1 /*
2 PV Drivers for Windows Xen HVM Domains
3 Copyright (C) 2013 James Harper
5 This program is free software; you can redistribute it and/or
6 modify it under the terms of the GNU General Public License
7 as published by the Free Software Foundation; either version 2
8 of the License, or (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18 */
20 #if !defined(_XENVBD_H_)
21 #define _XENVBD_H_
23 #define __DRIVER_NAME "XenVbdFilter"
25 #include <ntddk.h>
26 #include <wdf.h>
27 #if (NTDDI_VERSION < NTDDI_WINXP) /* srb.h causes warnings under 2K for some reason */
28 #pragma warning(disable:4201) /* nameless struct/union */
29 #pragma warning(disable:4214) /* bit field types other than int */
30 #endif
31 #include <srb.h>
32 #include <ntstrsafe.h>
33 #include "xen_windows.h"
34 #include <xen_public.h>
35 #include <io/protocols.h>
36 #include <memory.h>
37 #include <event_channel.h>
38 #include <hvm/params.h>
39 #include <hvm/hvm_op.h>
40 #include <io/ring.h>
41 #include <io/blkif.h>
42 #include <io/xenbus.h>
44 #pragma warning(disable: 4127)
46 #if defined(__x86_64__)
47 #define ABI_PROTOCOL "x86_64-abi"
48 #else
49 #define ABI_PROTOCOL "x86_32-abi"
50 #endif
52 #include "../xenvbd_common/common.h"
54 #include "../xenvbd_scsiport/common.h"
56 typedef struct {
57 WDFDEVICE wdf_device;
58 WDFIOTARGET wdf_target;
59 WDFDPC dpc;
60 WDFQUEUE io_queue;
61 BOOLEAN hibernate_flag;
63 XENVBD_DEVICE_DATA xvdd;
64 } XENVBD_FILTER_DATA, *PXENVBD_FILTER_DATA;
66 WDF_DECLARE_CONTEXT_TYPE_WITH_NAME(XENVBD_FILTER_DATA, GetXvfd)
68 #endif