# HG changeset patch # User yamahata@xxxxxxxxxxxxx # Node ID 4e5c513b77a2930655a40f33f81b5ee4e5ec7ba5 # Parent 53143620c0fd95db98126ea3c8a30c0470439420 panic when ioremap hypercall fails. This can occur when dom0 vp model xenlinux is used on P=M model xen/ia64. PATCHNAME: panic_when_ioremap_hypercall_failed diff -r 53143620c0fd -r 4e5c513b77a2 linux-2.6-xen-sparse/include/asm-ia64/hypercall.h --- a/linux-2.6-xen-sparse/include/asm-ia64/hypercall.h Tue May 16 19:06:46 2006 +0900 +++ b/linux-2.6-xen-sparse/include/asm-ia64/hypercall.h Wed May 17 13:10:58 2006 +0900 @@ -318,6 +318,7 @@ static inline void exit_idle(void) {} #define do_IRQ(irq, regs) __do_IRQ((irq), (regs)) #ifdef CONFIG_XEN_IA64_DOM0_VP +#include #include #define _hypercall_imm1(type, name, imm, a1) \ @@ -419,6 +420,10 @@ HYPERVISOR_ioremap(unsigned long ioaddr, unsigned long ret = ioaddr; if (running_on_xen) { ret = __HYPERVISOR_ioremap(ioaddr, size); + if (IS_ERR_VALUE(ret)) + panic("hypercall %s failed with %ld. " + "Please check Xen and Linux config mismatch\n", + __func__, -ret); } return ret; }