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>
		
			
				
	
	
		
			31 lines
		
	
	
		
			781 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			781 B
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
 * QOM stubs
 | 
						|
 *
 | 
						|
 * Copyright (c) 2021 Red Hat, Inc.
 | 
						|
 *
 | 
						|
 * Author:
 | 
						|
 *   Philippe Mathieu-Daudé <philmd@redhat.com>
 | 
						|
 *
 | 
						|
 * SPDX-License-Identifier: GPL-2.0-or-later
 | 
						|
 *
 | 
						|
 * This work is licensed under the terms of the GNU GPL, version 2 or later.
 | 
						|
 * See the COPYING file in the top-level directory.
 | 
						|
 */
 | 
						|
 | 
						|
#include "qemu/osdep.h"
 | 
						|
#include "qapi/qapi-events-qdev.h"
 | 
						|
 | 
						|
void qapi_event_send_device_deleted(bool has_device,
 | 
						|
                                    const char *device,
 | 
						|
                                    const char *path)
 | 
						|
{
 | 
						|
    /* Nothing to do. */
 | 
						|
}
 | 
						|
 | 
						|
void qapi_event_send_device_unplug_guest_error(bool has_device,
 | 
						|
                                               const char *device,
 | 
						|
                                               const char *path)
 | 
						|
{
 | 
						|
    /* Nothing to do. */
 | 
						|
}
 |