diff options
Diffstat (limited to 'qdev-monitor.c')
-rw-r--r-- | qdev-monitor.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/qdev-monitor.c b/qdev-monitor.c index dbbe92dfa1..9833b33549 100644 --- a/qdev-monitor.c +++ b/qdev-monitor.c @@ -888,6 +888,12 @@ void qmp_device_del(const char *id, Error **errp) { DeviceState *dev = find_device_state(id, errp); if (dev != NULL) { + if (dev->pending_deleted_event) { + error_setg(errp, "Device %s is already in the " + "process of unplug", id); + return; + } + qdev_unplug(dev, errp); } } |