summary refs log tree commit diff stats
path: root/hw/ioapic.c
diff options
context:
space:
mode:
Diffstat (limited to 'hw/ioapic.c')
-rw-r--r--hw/ioapic.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/hw/ioapic.c b/hw/ioapic.c
index 61991d7679..347536ec5f 100644
--- a/hw/ioapic.c
+++ b/hw/ioapic.c
@@ -206,6 +206,9 @@ static uint32_t ioapic_mem_readl(void *opaque, target_phys_addr_t addr)
         val = s->ioregsel;
         break;
     case IOAPIC_IOWIN:
+        if (size != 4) {
+            break;
+        }
         switch (s->ioregsel) {
         case IOAPIC_REG_ID:
             val = s->id << IOAPIC_ID_SHIFT;
@@ -244,6 +247,9 @@ ioapic_mem_writel(void *opaque, target_phys_addr_t addr, uint32_t val)
         s->ioregsel = val;
         break;
     case IOAPIC_IOWIN:
+        if (size != 4) {
+            break;
+        }
         DPRINTF("write: %08x = %08x\n", s->ioregsel, val);
         switch (s->ioregsel) {
         case IOAPIC_REG_ID: