rev |
line source |
keir@20722
|
1 /******************************************************************************
|
keir@20722
|
2 * tools/xenpaging/lib/xc.h
|
keir@20722
|
3 *
|
keir@20722
|
4 * libxc add-ons.
|
keir@20722
|
5 *
|
keir@20745
|
6 * Copyright (c) 2009 Citrix Systems, Inc. (Patrick Colp)
|
keir@20722
|
7 *
|
keir@20722
|
8 * This program is free software; you can redistribute it and/or modify
|
keir@20722
|
9 * it under the terms of the GNU General Public License as published by
|
keir@20722
|
10 * the Free Software Foundation; either version 2 of the License, or
|
keir@20722
|
11 * (at your option) any later version.
|
keir@20722
|
12 *
|
keir@20722
|
13 * This program is distributed in the hope that it will be useful,
|
keir@20722
|
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
keir@20722
|
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
keir@20722
|
16 * GNU General Public License for more details.
|
keir@20722
|
17 *
|
keir@20722
|
18 * You should have received a copy of the GNU General Public License
|
keir@20722
|
19 * along with this program; if not, write to the Free Software
|
keir@20722
|
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
keir@20722
|
21 */
|
keir@20722
|
22
|
keir@20722
|
23
|
keir@20722
|
24 #ifndef __XC_H__
|
keir@20722
|
25 #define __XC_H__
|
keir@20722
|
26
|
keir@20722
|
27
|
keir@21529
|
28 #include <stdarg.h>
|
keir@20722
|
29 #include <xc_private.h>
|
keir@20722
|
30 #include <xen/mem_event.h>
|
keir@20722
|
31
|
keir@20722
|
32
|
keir@20722
|
33 #if 1
|
keir@20722
|
34 #define ASSERT(_p) \
|
keir@20722
|
35 if ( !(_p) ) { DPRINTF("Assertion '%s' failed, line %d, file %s", #_p , \
|
keir@20722
|
36 __LINE__, __FILE__); *(int*)0=0; }
|
keir@20722
|
37 #else
|
keir@20722
|
38 #define ASSERT(_p) ((void)0)
|
keir@20722
|
39 #endif
|
keir@20722
|
40
|
keir@20722
|
41
|
keir@20722
|
42 #define BITS_PER_LONG 64
|
keir@20722
|
43
|
keir@20722
|
44
|
keir@20722
|
45 typedef struct xc_platform_info {
|
keir@20722
|
46 unsigned long max_mfn;
|
keir@20722
|
47 unsigned long hvirt_start;
|
keir@20722
|
48 unsigned int pt_levels;
|
keir@20722
|
49 unsigned int guest_width;
|
keir@20722
|
50 } xc_platform_info_t;
|
keir@20722
|
51
|
keir@20722
|
52
|
keir@20722
|
53 int alloc_bitmap(unsigned long **bitmap, unsigned long bitmap_size);
|
keir@20722
|
54
|
keir@20722
|
55 int xc_mem_paging_flush_ioemu_cache(domid_t domain_id);
|
ian@22624
|
56 int xc_wait_for_event(xc_interface *xch, xc_evtchn *xce);
|
ian@22624
|
57 int xc_wait_for_event_or_timeout(xc_interface *xch, xc_evtchn *xce, unsigned long ms);
|
keir@20722
|
58
|
keir@21529
|
59 int xc_get_platform_info(xc_interface *xc_handle, domid_t domain_id,
|
keir@20722
|
60 xc_platform_info_t *platform_info);
|
keir@20722
|
61
|
keir@20722
|
62
|
keir@20722
|
63 #endif // __XC_H__
|
keir@20722
|
64
|
keir@20722
|
65
|
keir@20722
|
66 /*
|
keir@20722
|
67 * Local variables:
|
keir@20722
|
68 * mode: C
|
keir@20722
|
69 * c-set-style: "BSD"
|
keir@20722
|
70 * c-basic-offset: 4
|
keir@20722
|
71 * tab-width: 4
|
keir@20722
|
72 * indent-tabs-mode: nil
|
keir@20722
|
73 * End:
|
keir@20722
|
74 */
|