aboutsummaryrefslogtreecommitdiff
path: root/arch/i386/xen/xen-ops.h
blob: 7667abd390ec6fff5399b19293ad4ed245630b57 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#ifndef XEN_OPS_H
#define XEN_OPS_H

#include <linux/init.h>

DECLARE_PER_CPU(struct vcpu_info *, xen_vcpu);
DECLARE_PER_CPU(unsigned long, xen_cr3);

extern struct start_info *xen_start_info;
extern struct shared_info *HYPERVISOR_shared_info;

char * __init xen_memory_setup(void);
void __init xen_arch_setup(void);
void __init xen_init_IRQ(void);

unsigned long xen_cpu_khz(void);
void __init xen_time_init(void);
unsigned long xen_get_wallclock(void);
int xen_set_wallclock(unsigned long time);
unsigned long long xen_sched_clock(void);

void xen_mark_init_mm_pinned(void);

DECLARE_PER_CPU(enum paravirt_lazy_mode, xen_lazy_mode);

static inline unsigned xen_get_lazy_mode(void)
{
	return x86_read_percpu(xen_lazy_mode);
}


#endif /* XEN_OPS_H */