ia64/xen-unstable
changeset 15043:c4755f856627
[IA64] Cleanup in faults.c
Cleanup: more static added, unused functions removed, a typo fixed.
Signed-off-by: Tristan Gingold <tgingold@free.fr>
Cleanup: more static added, unused functions removed, a typo fixed.
Signed-off-by: Tristan Gingold <tgingold@free.fr>
author | Alex Williamson <alex.williamson@hp.com> |
---|---|
date | Tue May 08 10:51:05 2007 -0600 (2007-05-08) |
parents | 3ecf1cea58b1 |
children | eabda101b0c5 |
files | xen/arch/ia64/xen/faults.c |
line diff
1.1 --- a/xen/arch/ia64/xen/faults.c Tue May 08 10:48:39 2007 -0600 1.2 +++ b/xen/arch/ia64/xen/faults.c Tue May 08 10:51:05 2007 -0600 1.3 @@ -54,8 +54,9 @@ extern IA64FAULT ia64_hypercall(struct p 1.4 extern void do_ssc(unsigned long ssc, struct pt_regs *regs); 1.5 1.6 // should never panic domain... if it does, stack may have been overrun 1.7 -void check_bad_nested_interruption(unsigned long isr, struct pt_regs *regs, 1.8 - unsigned long vector) 1.9 +static void check_bad_nested_interruption(unsigned long isr, 1.10 + struct pt_regs *regs, 1.11 + unsigned long vector) 1.12 { 1.13 struct vcpu *v = current; 1.14 1.15 @@ -74,8 +75,8 @@ void check_bad_nested_interruption(unsig 1.16 } 1.17 } 1.18 1.19 -void reflect_interruption(unsigned long isr, struct pt_regs *regs, 1.20 - unsigned long vector) 1.21 +static void reflect_interruption(unsigned long isr, struct pt_regs *regs, 1.22 + unsigned long vector) 1.23 { 1.24 struct vcpu *v = current; 1.25 1.26 @@ -103,26 +104,6 @@ void reflect_interruption(unsigned long 1.27 perfc_incra(slow_reflect, vector >> 8); 1.28 } 1.29 1.30 -static unsigned long pending_false_positive = 0; 1.31 - 1.32 -void reflect_extint(struct pt_regs *regs) 1.33 -{ 1.34 - unsigned long isr = regs->cr_ipsr & IA64_PSR_RI; 1.35 - struct vcpu *v = current; 1.36 - static int first_extint = 1; 1.37 - 1.38 - if (first_extint) { 1.39 - printk("Delivering first extint to domain: isr=0x%lx, " 1.40 - "iip=0x%lx\n", isr, regs->cr_iip); 1.41 - first_extint = 0; 1.42 - } 1.43 - if (vcpu_timer_pending_early(v)) 1.44 - printk("*#*#*#* about to deliver early timer to domain %d!!\n", 1.45 - v->domain->domain_id); 1.46 - PSCB(current, itir) = 0; 1.47 - reflect_interruption(isr, regs, IA64_EXTINT_VECTOR); 1.48 -} 1.49 - 1.50 void reflect_event(void) 1.51 { 1.52 struct vcpu *v = current; 1.53 @@ -166,22 +147,6 @@ void reflect_event(void) 1.54 PSCB(v, interrupt_collection_enabled) = 0; 1.55 } 1.56 1.57 -// ONLY gets called from ia64_leave_kernel 1.58 -// ONLY call with interrupts disabled?? (else might miss one?) 1.59 -// NEVER successful if already reflecting a trap/fault because psr.i==0 1.60 -void deliver_pending_interrupt(struct pt_regs *regs) 1.61 -{ 1.62 - struct domain *d = current->domain; 1.63 - struct vcpu *v = current; 1.64 - // FIXME: Will this work properly if doing an RFI??? 1.65 - if (!is_idle_domain(d) && user_mode(regs)) { 1.66 - if (vcpu_deliverable_interrupts(v)) 1.67 - reflect_extint(regs); 1.68 - else if (PSCB(v, pending_interruption)) 1.69 - ++pending_false_positive; 1.70 - } 1.71 -} 1.72 - 1.73 static int handle_lazy_cover(struct vcpu *v, struct pt_regs *regs) 1.74 { 1.75 if (!PSCB(v, interrupt_collection_enabled)) { 1.76 @@ -593,7 +558,7 @@ ia64_handle_reflection(unsigned long ifa 1.77 unsigned long psr = regs->cr_ipsr; 1.78 unsigned long status; 1.79 1.80 - /* Following faults shouldn'g be seen from Xen itself */ 1.81 + /* Following faults shouldn't be seen from Xen itself */ 1.82 BUG_ON(!(psr & IA64_PSR_CPL)); 1.83 1.84 switch (vector) {