From: Ian Campbell Date: Tue, 9 Oct 2012 14:05:34 +0000 (+0100) Subject: arm: kill a guest which uses hvc with an immediate operand != XEN_HYPERCALL_TAG X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~7772 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=e26fbaf024eeec712ecdfe453258b6d2436ea4d9;p=xen.git arm: kill a guest which uses hvc with an immediate operand != XEN_HYPERCALL_TAG At best these guests are confused/broken and at worse they are malicious. In any case we don't know that they are expecting to handle a -errno style error. Signed-off-by: Ian Campbell Committed-by: Ian Campbell --- diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c index e4bed69291..98cc750143 100644 --- a/xen/arch/arm/traps.c +++ b/xen/arch/arm/traps.c @@ -475,12 +475,7 @@ static void do_trap_hypercall(struct cpu_user_regs *regs, unsigned long iss) #endif if ( iss != XEN_HYPERCALL_TAG ) - { - printk("%s %d: received an alien hypercall iss=%lx\n", __func__ , - __LINE__ , iss); - regs->r0 = -EINVAL; - return; - } + domain_crash_synchronous(); if ( regs->r12 >= ARRAY_SIZE(arm_hypercall_table) ) {