diff options
Diffstat (limited to 'hw')
-rw-r--r-- | hw/alpha/typhoon.c | 2 | ||||
-rw-r--r-- | hw/block/dataplane/virtio-blk.c | 2 | ||||
-rw-r--r-- | hw/misc/slavio_misc.c | 2 | ||||
-rw-r--r-- | hw/net/milkymist-minimac2.c | 2 | ||||
-rw-r--r-- | hw/virtio/dataplane/vring.c | 8 |
5 files changed, 9 insertions, 7 deletions
diff --git a/hw/alpha/typhoon.c b/hw/alpha/typhoon.c index 3d7a1cd8e8..b7fb04406c 100644 --- a/hw/alpha/typhoon.c +++ b/hw/alpha/typhoon.c @@ -693,7 +693,7 @@ PCIBus *typhoon_init(ram_addr_t ram_size, ISABus **isa_bus, AlphaCPU *cpu = cpus[i]; s->cchip.cpu[i] = cpu; if (cpu != NULL) { - cpu->alarm_timer = qemu_new_timer_ns(rtc_clock, + cpu->alarm_timer = qemu_new_timer_ns(vm_clock, typhoon_alarm_timer, (void *)((uintptr_t)s + i)); } diff --git a/hw/block/dataplane/virtio-blk.c b/hw/block/dataplane/virtio-blk.c index 03566650c6..2faed43127 100644 --- a/hw/block/dataplane/virtio-blk.c +++ b/hw/block/dataplane/virtio-blk.c @@ -537,7 +537,7 @@ void virtio_blk_data_plane_stop(VirtIOBlockDataPlane *s) /* Clean up guest notifier (irq) */ k->set_guest_notifiers(qbus->parent, 1, false); - vring_teardown(&s->vring); + vring_teardown(&s->vring, s->vdev, 0); s->started = false; s->stopping = false; } diff --git a/hw/misc/slavio_misc.c b/hw/misc/slavio_misc.c index d274fb4a87..00d9542c0b 100644 --- a/hw/misc/slavio_misc.c +++ b/hw/misc/slavio_misc.c @@ -368,7 +368,7 @@ static void slavio_led_mem_writew(void *opaque, hwaddr addr, { MiscState *s = opaque; - trace_slavio_led_mem_readw(val & 0xffff); + trace_slavio_led_mem_writew(val & 0xffff); switch (addr) { case 0: s->leds = val; diff --git a/hw/net/milkymist-minimac2.c b/hw/net/milkymist-minimac2.c index 2ef4ac3299..becd26c5d5 100644 --- a/hw/net/milkymist-minimac2.c +++ b/hw/net/milkymist-minimac2.c @@ -355,7 +355,7 @@ minimac2_write(void *opaque, hwaddr addr, uint64_t value, { MilkymistMinimac2State *s = opaque; - trace_milkymist_minimac2_memory_read(addr, value); + trace_milkymist_minimac2_memory_write(addr, value); addr >>= 2; switch (addr) { diff --git a/hw/virtio/dataplane/vring.c b/hw/virtio/dataplane/vring.c index e0d6e83625..82cc151b17 100644 --- a/hw/virtio/dataplane/vring.c +++ b/hw/virtio/dataplane/vring.c @@ -39,8 +39,8 @@ bool vring_setup(Vring *vring, VirtIODevice *vdev, int n) vring_init(&vring->vr, virtio_queue_get_num(vdev, n), vring_ptr, 4096); - vring->last_avail_idx = 0; - vring->last_used_idx = 0; + vring->last_avail_idx = virtio_queue_get_last_avail_idx(vdev, n); + vring->last_used_idx = vring->vr.used->idx; vring->signalled_used = 0; vring->signalled_used_valid = false; @@ -49,8 +49,10 @@ bool vring_setup(Vring *vring, VirtIODevice *vdev, int n) return true; } -void vring_teardown(Vring *vring) +void vring_teardown(Vring *vring, VirtIODevice *vdev, int n) { + virtio_queue_set_last_avail_idx(vdev, n, vring->last_avail_idx); + hostmem_finalize(&vring->hostmem); } |