summaryrefslogtreecommitdiffstats
path: root/drivers/lguest/lg.h
diff options
context:
space:
mode:
authorGlauber de Oliveira Costa <gcosta@redhat.com>2008-01-07 11:05:28 -0200
committerRusty Russell <rusty@rustcorp.com.au>2008-01-30 22:50:08 +1100
commitad8d8f3bc61ec712dd141e1029ae68c47fadc4a7 (patch)
tree70bd69e85ef7f159a62f4cd8aa2799d8d542b92c /drivers/lguest/lg.h
parent73044f05a4ac65f2df42753e9566444b9d2a660f (diff)
downloadlinux-ad8d8f3bc61ec712dd141e1029ae68c47fadc4a7.tar.gz
linux-ad8d8f3bc61ec712dd141e1029ae68c47fadc4a7.tar.bz2
linux-ad8d8f3bc61ec712dd141e1029ae68c47fadc4a7.zip
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 {
/* If a hypercall was asked for, this points to the arguments. */
struct hcall_args *hcall;
u32 next_hcall;
+
+ /* Virtual clock device */
+ struct hrtimer hrt;
};
/* The private info the thread maintains about the guest. */
@@ -95,9 +98,6 @@ struct lguest
struct lguest_arch arch;
- /* Virtual clock device */
- struct hrtimer hrt;
-
/* Pending virtual interrupts */
DECLARE_BITMAP(irqs_pending, LGUEST_IRQS);
};
@@ -145,8 +145,8 @@ void setup_default_idt_entries(struct lguest_ro_state *state,
const unsigned long *def);
void copy_traps(const struct lguest *lg, struct desc_struct *idt,
const unsigned long *def);
-void guest_set_clockevent(struct lguest *lg, unsigned long delta);
-void init_clockdev(struct lguest *lg);
+void guest_set_clockevent(struct lg_cpu *cpu, unsigned long delta);
+void init_clockdev(struct lg_cpu *cpu);
bool check_syscall_vector(struct lguest *lg);
int init_interrupts(void);
void free_interrupts(void);