[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 00/35] libxl refactoring to use ev_qmp (with API changes)
Hi, On the quest to have QEMU depriviledge, we need to make quite a few changes to libxl. This patch series rework quite a few libxl feature to use libxl__ev_qmp, which is the new asynchronous way of communicating with QEMU in libxl. Unfortunately, some libxl functions (in the public API) are supposed to be synchronous but are communicating with QEMU before returning. So those functions are made asynchronous with an additional parameter `libxl_asyncop_how'. Functions that are changes: - libxl_domain_unpause - libxl_domain_pause - libxl_send_trigger - libxl_set_vcpuonline - libxl_retrieve_domain_configuration - libxl_qemu_monitor_command This series depends on both: - [PATCH v2 0/9] libxl: New slow lock + fix libxl_cdrom_insert with QEMU depriv - [PATCH 00/15] Some cleanup of libxl Patch series available in this git branch: https://xenbits.xen.org/git-http/people/aperard/xen-unstable.git br.libxl-ev_qmp-refactoring-v1 Cheers, Anthony PERARD (35): libxl: Make libxl_domain_unpause async libxl: Make libxl_send_trigger async libxl: Make libxl_set_vcpuonline async libxl: Make libxl_retrieve_domain_configuration async libxl: Make libxl_qemu_monitor_command async libxl: Use ev_qmp for switch_qemu_xen_logdirty libxl: Move "qmp_initializations" to libxl_dm libxl: Replace libxl__qmp_initializations by ev_qmp calls libxl: Deprecate libxl__domain_{unpause,resume} libxl: Re-introduce libxl__domain_resume libxl_domain: Convert libxl_domain_resume to use libxl__domain_resume libxl: Re-introduce libxl__domain_unpause libxl_dm: Update libxl__spawn_stub_dm to use libxl__domain_unpause libxl_domain: Convert libxl_domain_unpause to use libxl__domain_unpause libxl: Inline do_usbdev_add into libxl__device_usbdev_add libxl: Inline do_usbdev_remove into libxl__device_usbdev_remove libxl: Add libxl__ev_qmp to libxl__ao_device libxl: Add device_{config,type} to libxl__ao_device libxl_usb: Make libxl__device_usbctrl_add uses ev_qmp libxl_usb: Make libxl__initiate_device_usbctrl_remove uses ev_qmp libxl_usb: Make libxl__device_usbdev_add uses ev_qmp libxl: Use aodev for libxl__device_usbdev_remove libxl: libxl__initiate_device_usbdev_remove now use ev_qmp libxl: Remove libxl__qmp_run_command_flexarray libxl_pci: Coding style of do_pci_add libxl_pci: Only check if qemu-dm is running in qemu-trad case libxl_pci: Use libxl__ao_device with libxl__device_pci_add libxl_pci: Use ev_qmp in do_pci_add libxl_pci: Use libxl__ao_device with pci_remove libxl_pci: Use ev_qmp for pci_remove libxl: Use ev_qmp for libxl_send_trigger libxl: Use ev_qmp in libxl_set_vcpuonline libxl: Extract qmp_parse_query_cpus libxl: libxl_retrieve_domain_configuration now uses ev_qmp libxl: libxl_qemu_monitor_command now uses ev_qmp tools/libxl/libxl.h | 77 ++- tools/libxl/libxl_colo_restore.c | 4 +- tools/libxl/libxl_colo_save.c | 4 +- tools/libxl/libxl_create.c | 10 - tools/libxl/libxl_device.c | 2 + tools/libxl/libxl_dm.c | 239 +++++++- tools/libxl/libxl_dom_save.c | 41 +- tools/libxl/libxl_dom_suspend.c | 198 ++++++- tools/libxl/libxl_domain.c | 627 ++++++++++++++++---- tools/libxl/libxl_internal.h | 86 ++- tools/libxl/libxl_pci.c | 966 ++++++++++++++++++++++++++----- tools/libxl/libxl_qmp.c | 471 ++------------- tools/libxl/libxl_remus.c | 2 +- tools/libxl/libxl_usb.c | 598 +++++++++++++------ tools/xl/xl_cpupool.c | 2 +- tools/xl/xl_info.c | 3 +- tools/xl/xl_migrate.c | 4 +- tools/xl/xl_misc.c | 6 +- tools/xl/xl_saverestore.c | 5 +- tools/xl/xl_vcpu.c | 2 +- tools/xl/xl_vmcontrol.c | 13 +- 21 files changed, 2427 insertions(+), 933 deletions(-) -- Anthony PERARD _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |