From: Keir Fraser Date: Fri, 16 Jul 2010 12:51:27 +0000 (+0100) Subject: xen: Send the debug VIRQ to guests after the rest of the domain dump is done. X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~11773 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=1652d36bbe2108109159bf62ec11be2736351c02;p=xen.git xen: Send the debug VIRQ to guests after the rest of the domain dump is done. Send the debug VIRQ to guests after the rest of the domain dump is done. This stops all the 'q' debug-key output getting interleaved with the debug-virq output from a pv-ops dom0 kernel. Signed-off-by: Tim Deegan --- diff --git a/xen/common/keyhandler.c b/xen/common/keyhandler.c index 058d3e3a89..f05bde01ff 100644 --- a/xen/common/keyhandler.c +++ b/xen/common/keyhandler.c @@ -255,7 +255,7 @@ static void dump_domains(unsigned char key) d->handle[ 8], d->handle[ 9], d->handle[10], d->handle[11], d->handle[12], d->handle[13], d->handle[14], d->handle[15], d->vm_assist); - for (i = 0 ; i < NR_DOMAIN_WATCHDOG_TIMERS; i++) + for ( i = 0 ; i < NR_DOMAIN_WATCHDOG_TIMERS; i++ ) if ( test_bit(i, &d->watchdog_inuse_map) ) printk(" watchdog %d expires in %d seconds\n", i, (u32)((d->watchdog_timer[i].expires - NOW()) >> 30)); @@ -268,7 +268,8 @@ static void dump_domains(unsigned char key) printk("VCPU information and callbacks for domain %u:\n", d->domain_id); - for_each_vcpu ( d, v ) { + for_each_vcpu ( d, v ) + { printk(" VCPU%d: CPU%d [has=%c] flags=%lx poll=%d " "upcall_pend = %02x, upcall_mask = %02x ", v->vcpu_id, v->processor, @@ -283,7 +284,15 @@ static void dump_domains(unsigned char key) arch_dump_vcpu_info(v); periodic_timer_print(tmpstr, sizeof(tmpstr), v->periodic_period); printk(" %s\n", tmpstr); - printk(" Notifying guest (virq %d, port %d, stat %d/%d/%d)\n", + } + } + + for_each_domain ( d ) + { + for_each_vcpu ( d, v ) + { + printk("Notifying guest %d:%d (virq %d, port %d, stat %d/%d/%d)\n", + d->domain_id, v->vcpu_id, VIRQ_DEBUG, v->virq_to_evtchn[VIRQ_DEBUG], test_bit(v->virq_to_evtchn[VIRQ_DEBUG], &shared_info(d, evtchn_pending)),