aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoriap10@labyrinth.cl.cam.ac.uk <iap10@labyrinth.cl.cam.ac.uk>2003-09-30 11:40:44 +0000
committeriap10@labyrinth.cl.cam.ac.uk <iap10@labyrinth.cl.cam.ac.uk>2003-09-30 11:40:44 +0000
commit440df4e78b054404360595d8e7d00bf5773b4c01 (patch)
tree4936ac94a494b298263452006dc842b7e51bb216
parentd5f3e34120cf409ec628c2f628d485616c0830c4 (diff)
downloadxen-440df4e78b054404360595d8e7d00bf5773b4c01.tar.gz
xen-440df4e78b054404360595d8e7d00bf5773b4c01.tar.bz2
xen-440df4e78b054404360595d8e7d00bf5773b4c01.zip
bitkeeper revision 1.474 (3f796bbcJZy3ImkPAdaXHA_VAhNNCw)
extra debug info
-rw-r--r--xen/common/keyhandler.c9
-rw-r--r--xenolinux-2.4.22-sparse/arch/xeno/drivers/network/network.c2
-rw-r--r--xenolinux-2.4.22-sparse/arch/xeno/kernel/traps.c22
3 files changed, 23 insertions, 10 deletions
diff --git a/xen/common/keyhandler.c b/xen/common/keyhandler.c
index b3d3631777..3cd25a0e65 100644
--- a/xen/common/keyhandler.c
+++ b/xen/common/keyhandler.c
@@ -103,8 +103,17 @@ void do_task_queues(u_char key, void *dev_id, struct pt_regs *regs)
task_states[p->state], p->hyp_events);
s = p->shared_info;
if(!is_idle_task(p)) {
+ net_vif_t *v = find_vif_by_id((p->domain)<<VIF_DOMAIN_SHIFT);
printk("Guest: events = %08lx, events_mask = %08lx\n",
s->events, s->events_mask);
+
+ if (v) {
+ printk("rx_prod=%d ,rx_cons=%d, tx_prod=%d, tx_cons=%d\n",
+ v->rx_prod,v->rx_cons,v->tx_prod,v->tx_cons );
+ printk("rx_req_cons=%d, rx_resp_prod=%d, tx_req_cons=%d, tx_resp_prod=%d\n",
+ v->rx_req_cons,v->rx_resp_prod,v->tx_req_cons,v->tx_resp_prod);
+ put_vif(v);
+ }
printk("Notifying guest...\n");
set_bit(_EVENT_DEBUG, &s->events);
}
diff --git a/xenolinux-2.4.22-sparse/arch/xeno/drivers/network/network.c b/xenolinux-2.4.22-sparse/arch/xeno/drivers/network/network.c
index 3d12699799..786af5b692 100644
--- a/xenolinux-2.4.22-sparse/arch/xeno/drivers/network/network.c
+++ b/xenolinux-2.4.22-sparse/arch/xeno/drivers/network/network.c
@@ -98,6 +98,8 @@ static void dbg_network_int(int irq, void *dev_id, struct pt_regs *ptregs)
" rx_req_prod = %d, rx_resp_prod = %d, rx_event = %d\n",
np->rx_resp_cons, np->net_idx->rx_req_prod,
np->net_idx->rx_resp_prod, np->net_idx->rx_event);
+
+ show_registers(ptregs);
}
diff --git a/xenolinux-2.4.22-sparse/arch/xeno/kernel/traps.c b/xenolinux-2.4.22-sparse/arch/xeno/kernel/traps.c
index 85c6acb8f0..b9159df6df 100644
--- a/xenolinux-2.4.22-sparse/arch/xeno/kernel/traps.c
+++ b/xenolinux-2.4.22-sparse/arch/xeno/kernel/traps.c
@@ -179,15 +179,17 @@ void show_registers(struct pt_regs *regs)
esp = regs->esp;
ss = regs->xss & 0xffff;
}
- printk("CPU: %d\nEIP: %04x:[<%08lx>] %s\nEFLAGS: %08lx\n",
- smp_processor_id(), 0xffff & regs->xcs, regs->eip, print_tainted(), regs->eflags);
- printk("eax: %08lx ebx: %08lx ecx: %08lx edx: %08lx\n",
+ printk(KERN_ALERT "CPU: %d\n", smp_processor_id() );
+ printk(KERN_ALERT "EIP: %04x:[<%08lx>] %s\n",
+ 0xffff & regs->xcs, regs->eip, print_tainted());
+ printk(KERN_ALERT "EFLAGS: %08lx\n",regs->eflags);
+ printk(KERN_ALERT "eax: %08lx ebx: %08lx ecx: %08lx edx: %08lx\n",
regs->eax, regs->ebx, regs->ecx, regs->edx);
- printk("esi: %08lx edi: %08lx ebp: %08lx esp: %08lx\n",
+ printk(KERN_ALERT "esi: %08lx edi: %08lx ebp: %08lx esp: %08lx\n",
regs->esi, regs->edi, regs->ebp, esp);
- printk("ds: %04x es: %04x ss: %04x\n",
+ printk(KERN_ALERT "ds: %04x es: %04x ss: %04x\n",
regs->xds & 0xffff, regs->xes & 0xffff, ss);
- printk("Process %s (pid: %d, stackpage=%08lx)",
+ printk(KERN_ALERT "Process %s (pid: %d, stackpage=%08lx)",
current->comm, current->pid, 4096+(unsigned long)current);
/*
* When in-kernel, we also print out the stack and code at the
@@ -195,13 +197,13 @@ void show_registers(struct pt_regs *regs)
*/
if (in_kernel) {
- printk("\nStack: ");
+ printk(KERN_ALERT "\nStack: ");
show_stack((unsigned long*)esp);
#if 0
{
int i;
- printk("\nCode: ");
+ printk(KERN_ALERT "\nCode: ");
if(regs->eip < PAGE_OFFSET)
goto bad;
@@ -210,7 +212,7 @@ void show_registers(struct pt_regs *regs)
unsigned char c;
if(__get_user(c, &((unsigned char*)regs->eip)[i])) {
bad:
- printk(" Bad EIP value.");
+ printk(KERN_ALERT " Bad EIP value.");
break;
}
printk("%02x ", c);
@@ -218,7 +220,7 @@ bad:
}
#endif
}
- printk("\n");
+ printk(KERN_ALERT "\n");
}
spinlock_t die_lock = SPIN_LOCK_UNLOCKED;