From: Erik van der Kouwe Date: Fri, 19 Nov 2010 17:39:11 +0000 (-0600) Subject: The Palacios PIC does not implement the set-priority command and this causes the... X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?p=palacios.git;a=commitdiff_plain;h=5577397c63238a7942afd98d1d975b06b1422687 The Palacios PIC does not implement the set-priority command and this causes the VM to be shut down. AFAICS the PIC currently doesn't handle priorities at all, so this patch just ignores the command. --- diff --git a/palacios/src/devices/8259a.c b/palacios/src/devices/8259a.c index c13292e..6a74e8e 100644 --- a/palacios/src/devices/8259a.c +++ b/palacios/src/devices/8259a.c @@ -464,7 +464,11 @@ static int write_master_port1(struct guest_info * core, ushort_t port, void * sr } } PrintDebug("8259 PIC: Post ISR = %x (wr_Master1)\n", state->master_isr); - } else { + } else if (!(cw2->EOI) && (cw2->R) && (cw2->SL)) { + PrintDebug("8259 PIC: Ignoring set-priority, priorities not implemented (level=%d, wr_Master1)\n", cw2->level); + } else if (!(cw2->EOI) && !(cw2->R) && (cw2->SL)) { + PrintDebug("8259 PIC: Ignoring no-op (level=%d, wr_Master1)\n", cw2->level); + } else { PrintError("8259 PIC: Command not handled, or in error (wr_Master1)\n"); return -1; }