diff options
Diffstat (limited to 'vl.c')
| -rw-r--r-- | vl.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/vl.c b/vl.c index 124d30d3e7..67f5813e75 100644 --- a/vl.c +++ b/vl.c @@ -1464,7 +1464,7 @@ void qemu_unregister_reset(QEMUResetHandler *func, void *opaque) } } -void qemu_system_reset(bool report) +void qemu_devices_reset(void) { QEMUResetEntry *re, *nre; @@ -1472,6 +1472,15 @@ void qemu_system_reset(bool report) QTAILQ_FOREACH_SAFE(re, &reset_handlers, entry, nre) { re->func(re->opaque); } +} + +void qemu_system_reset(bool report) +{ + if (current_machine && current_machine->reset) { + current_machine->reset(); + } else { + qemu_devices_reset(); + } if (report) { monitor_protocol_event(QEVENT_RESET, NULL); } |