X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fdevices%2Fio_apic.c;h=7a0c6e8f18db4cb3bc9111be7ee1877b0c41e82f;hb=27eb2f39dd8e616c48f115c67ecca22f1c799b23;hp=e6a9f3aed0259a7ad802fcb15daa3f57e5f73bf8;hpb=65e038cb9940879f002209382eeafae6f58934b6;p=palacios.git diff --git a/palacios/src/devices/io_apic.c b/palacios/src/devices/io_apic.c index e6a9f3a..7a0c6e8 100644 --- a/palacios/src/devices/io_apic.c +++ b/palacios/src/devices/io_apic.c @@ -157,8 +157,8 @@ static void init_ioapic_state(struct io_apic_state * ioapic, uint32_t id) { } // special case redir_tbl[0] for pin 0 as ExtInt for Virtual Wire Mode - ioapic->redir_tbl[0].del_mode=EXTINT; - ioapic->redir_tbl[0].mask=0; + // ioapic->redir_tbl[0].del_mode=EXTINT; + // ioapic->redir_tbl[0].mask=0; } @@ -291,9 +291,12 @@ static int ioapic_raise_irq(struct v3_vm_info * vm, void * private_data, int irq icr.rem_rd_status=0; icr.dst_shorthand=0; // no shorthand icr.rsvd2=0; + + // Note: 0 yhere is "cluster model", but it should be irrelevant + // since we are sending this as a physical destination PrintDebug("io apic %u: raising irq %u on ICC bus.\n", ioapic->ioapic_id.id, irq); - v3_icc_send_ipi(ioapic->icc_bus, ioapic->ioapic_id.id,icr.val, irq); + v3_icc_send_ipi(ioapic->icc_bus, ioapic->ioapic_id.id,icr.val, 0, irq); } return 0;