aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/lguest/lg.h
diff options
context:
space:
mode:
authorGlauber de Oliveira Costa <gcosta@redhat.com>2008-01-07 08:05:28 -0500
committerRusty Russell <rusty@rustcorp.com.au>2008-01-30 06:50:08 -0500
commitad8d8f3bc61ec712dd141e1029ae68c47fadc4a7 (patch)
tree70bd69e85ef7f159a62f4cd8aa2799d8d542b92c /drivers/lguest/lg.h
parent73044f05a4ac65f2df42753e9566444b9d2a660f (diff)
lguest: per-vcpu lguest timers
Here, I introduce per-vcpu timers. With this, we can have local expiries, needed for accounting time in smp guests Signed-off-by: Glauber de Oliveira Costa <gcosta@redhat.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'drivers/lguest/lg.h')
-rw-r--r--drivers/lguest/lg.h10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/lguest/lg.h b/drivers/lguest/lg.h
index a4ebd415fa27..7da7b3f68da8 100644
--- a/drivers/lguest/lg.h
+++ b/drivers/lguest/lg.h
@@ -47,6 +47,9 @@ struct lg_cpu {
47 /* If a hypercall was asked for, this points to the arguments. */ 47 /* If a hypercall was asked for, this points to the arguments. */
48 struct hcall_args *hcall; 48 struct hcall_args *hcall;
49 u32 next_hcall; 49 u32 next_hcall;
50
51 /* Virtual clock device */
52 struct hrtimer hrt;
50}; 53};
51 54
52/* The private info the thread maintains about the guest. */ 55/* The private info the thread maintains about the guest. */
@@ -95,9 +98,6 @@ struct lguest
95 98
96 struct lguest_arch arch; 99 struct lguest_arch arch;
97 100
98 /* Virtual clock device */
99 struct hrtimer hrt;
100
101 /* Pending virtual interrupts */ 101 /* Pending virtual interrupts */
102 DECLARE_BITMAP(irqs_pending, LGUEST_IRQS); 102 DECLARE_BITMAP(irqs_pending, LGUEST_IRQS);
103}; 103};
@@ -145,8 +145,8 @@ void setup_default_idt_entries(struct lguest_ro_state *state,
145 const unsigned long *def); 145 const unsigned long *def);
146void copy_traps(const struct lguest *lg, struct desc_struct *idt, 146void copy_traps(const struct lguest *lg, struct desc_struct *idt,
147 const unsigned long *def); 147 const unsigned long *def);
148void guest_set_clockevent(struct lguest *lg, unsigned long delta); 148void guest_set_clockevent(struct lg_cpu *cpu, unsigned long delta);
149void init_clockdev(struct lguest *lg); 149void init_clockdev(struct lg_cpu *cpu);
150bool check_syscall_vector(struct lguest *lg); 150bool check_syscall_vector(struct lguest *lg);
151int init_interrupts(void); 151int init_interrupts(void);
152void free_interrupts(void); 152void free_interrupts(void);