qdev: Add qdev_add_vm_change_state_handler_full()
Add qdev_add_vm_change_state_handler_full() variant that allows setting a prepare callback in addition to the main callback. This will facilitate adding P2P support for VFIO migration in the following patches. Signed-off-by: Avihai Horon <avihaih@nvidia.com> Signed-off-by: Joao Martins <joao.m.martins@oracle.com> Reviewed-by: Cédric Le Goater <clg@redhat.com> Tested-by: YangHang Liu <yanghliu@redhat.com> Signed-off-by: Cédric Le Goater <clg@redhat.com>
This commit is contained in:
parent
9d3103c81b
commit
02b2e25360
@ -55,8 +55,20 @@ static int qdev_get_dev_tree_depth(DeviceState *dev)
|
||||
VMChangeStateEntry *qdev_add_vm_change_state_handler(DeviceState *dev,
|
||||
VMChangeStateHandler *cb,
|
||||
void *opaque)
|
||||
{
|
||||
return qdev_add_vm_change_state_handler_full(dev, cb, NULL, opaque);
|
||||
}
|
||||
|
||||
/*
|
||||
* Exactly like qdev_add_vm_change_state_handler() but passes a prepare_cb
|
||||
* argument too.
|
||||
*/
|
||||
VMChangeStateEntry *qdev_add_vm_change_state_handler_full(
|
||||
DeviceState *dev, VMChangeStateHandler *cb,
|
||||
VMChangeStateHandler *prepare_cb, void *opaque)
|
||||
{
|
||||
int depth = qdev_get_dev_tree_depth(dev);
|
||||
|
||||
return qemu_add_vm_change_state_handler_prio(cb, opaque, depth);
|
||||
return qemu_add_vm_change_state_handler_prio_full(cb, prepare_cb, opaque,
|
||||
depth);
|
||||
}
|
||||
|
@ -23,6 +23,9 @@ qemu_add_vm_change_state_handler_prio_full(VMChangeStateHandler *cb,
|
||||
VMChangeStateEntry *qdev_add_vm_change_state_handler(DeviceState *dev,
|
||||
VMChangeStateHandler *cb,
|
||||
void *opaque);
|
||||
VMChangeStateEntry *qdev_add_vm_change_state_handler_full(
|
||||
DeviceState *dev, VMChangeStateHandler *cb,
|
||||
VMChangeStateHandler *prepare_cb, void *opaque);
|
||||
void qemu_del_vm_change_state_handler(VMChangeStateEntry *e);
|
||||
/**
|
||||
* vm_state_notify: Notify the state of the VM
|
||||
|
Loading…
Reference in New Issue
Block a user