diff options
author | Glauber de Oliveira Costa <gcosta@redhat.com> | 2008-01-07 08:05:29 -0500 |
---|---|---|
committer | Rusty Russell <rusty@rustcorp.com.au> | 2008-01-30 06:50:09 -0500 |
commit | 177e449dc5bd4cf8dc48d66abee61ddf34b126b9 (patch) | |
tree | f0aaea9407971d8f6b9ad4e177a834f1be3aa993 /drivers/lguest/lg.h | |
parent | ad8d8f3bc61ec712dd141e1029ae68c47fadc4a7 (diff) |
lguest: per-vcpu interrupt processing.
This patch adapts interrupt processing for using the vcpu struct.
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.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/lguest/lg.h b/drivers/lguest/lg.h index 7da7b3f68da8..29e03d588a8d 100644 --- a/drivers/lguest/lg.h +++ b/drivers/lguest/lg.h | |||
@@ -50,6 +50,9 @@ struct lg_cpu { | |||
50 | 50 | ||
51 | /* Virtual clock device */ | 51 | /* Virtual clock device */ |
52 | struct hrtimer hrt; | 52 | struct hrtimer hrt; |
53 | |||
54 | /* Pending virtual interrupts */ | ||
55 | DECLARE_BITMAP(irqs_pending, LGUEST_IRQS); | ||
53 | }; | 56 | }; |
54 | 57 | ||
55 | /* The private info the thread maintains about the guest. */ | 58 | /* The private info the thread maintains about the guest. */ |
@@ -97,9 +100,6 @@ struct lguest | |||
97 | const char *dead; | 100 | const char *dead; |
98 | 101 | ||
99 | struct lguest_arch arch; | 102 | struct lguest_arch arch; |
100 | |||
101 | /* Pending virtual interrupts */ | ||
102 | DECLARE_BITMAP(irqs_pending, LGUEST_IRQS); | ||
103 | }; | 103 | }; |
104 | 104 | ||
105 | extern struct mutex lguest_lock; | 105 | extern struct mutex lguest_lock; |
@@ -136,8 +136,8 @@ int run_guest(struct lg_cpu *cpu, unsigned long __user *user); | |||
136 | #define pgd_pfn(x) (pgd_val(x) >> PAGE_SHIFT) | 136 | #define pgd_pfn(x) (pgd_val(x) >> PAGE_SHIFT) |
137 | 137 | ||
138 | /* interrupts_and_traps.c: */ | 138 | /* interrupts_and_traps.c: */ |
139 | void maybe_do_interrupt(struct lguest *lg); | 139 | void maybe_do_interrupt(struct lg_cpu *cpu); |
140 | int deliver_trap(struct lguest *lg, unsigned int num); | 140 | int deliver_trap(struct lg_cpu *cpu, unsigned int num); |
141 | void load_guest_idt_entry(struct lguest *lg, unsigned int i, u32 low, u32 hi); | 141 | void load_guest_idt_entry(struct lguest *lg, unsigned int i, u32 low, u32 hi); |
142 | void guest_set_stack(struct lguest *lg, u32 seg, u32 esp, unsigned int pages); | 142 | void guest_set_stack(struct lguest *lg, u32 seg, u32 esp, unsigned int pages); |
143 | void pin_stack_pages(struct lguest *lg); | 143 | void pin_stack_pages(struct lguest *lg); |