summary refs log tree commit diff stats
path: root/stubs/qdev.c
diff options
context:
space:
mode:
authorDaniel Henrique Barboza <danielhb413@gmail.com>2021-09-06 21:47:53 -0300
committerDavid Gibson <david@gibson.dropbear.id.au>2021-09-30 12:25:51 +1000
commitd43f1670c7908ee4bd5911ee562053b782c63f6e (patch)
treee3df08edfc479ff58801c444031271468f1a1de8 /stubs/qdev.c
parenta5bc19c542aa2416292b820cf22ae9afa6f25916 (diff)
downloadfocaccia-qemu-d43f1670c7908ee4bd5911ee562053b782c63f6e.tar.gz
focaccia-qemu-d43f1670c7908ee4bd5911ee562053b782c63f6e.zip
qapi/qdev.json: add DEVICE_UNPLUG_GUEST_ERROR QAPI event
At this moment we only provide one event to report a hotunplug error,
MEM_UNPLUG_ERROR. As of Linux kernel 5.12 and QEMU 6.0.0, the pseries
machine is now able to report unplug errors for other device types, such
as CPUs.

Instead of creating a (device_type)_UNPLUG_ERROR for each new device,
create a generic DEVICE_UNPLUG_GUEST_ERROR event that can be used by all
guest side unplug errors in the future. This event has a similar API as
the existing DEVICE_DELETED event, always providing the QOM path of the
device and dev->id if there's any.

With this new generic event, MEM_UNPLUG_ERROR is now marked as deprecated.

Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Reviewed-by: Greg Kurz <groug@kaod.org>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
Message-Id: <20210907004755.424931-6-danielhb413@gmail.com>
[dwg: Correct missing ')' in stubs/qdev.c]
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'stubs/qdev.c')
-rw-r--r--stubs/qdev.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/stubs/qdev.c b/stubs/qdev.c
index 92e6143134..187659f707 100644
--- a/stubs/qdev.c
+++ b/stubs/qdev.c
@@ -21,3 +21,10 @@ void qapi_event_send_device_deleted(bool has_device,
 {
     /* Nothing to do. */
 }
+
+void qapi_event_send_device_unplug_guest_error(bool has_device,
+                                               const char *device,
+                                               const char *path)
+{
+    /* Nothing to do. */
+}