Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-15-SP7:GA
libvirt.15950
18d47d61-revert-d00c77ae.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 18d47d61-revert-d00c77ae.patch of Package libvirt.15950
commit ba09fba297098be5fa420b2c0820e2e606fdaaeb Author: Jim Fehlig <jfehlig@suse.com> Date: Tue Aug 13 13:33:24 2019 -0600 Revert "libxl: send lifecycle event on suspend" A libxl event with shutdown reason LIBXL_SHUTDOWN_REASON_SUSPEND is sent after a domain is successfully suspended, which could result from suspending the domain to file (virDomainSave), suspending it to socket (virDomainMigrate), or suspending it to memory (virDomainPMSuspendForDuration). Commit d00c77ae changed the event handler to always set domain state to VIR_DOMAIN_PMSUSPENDED when LIBXL_SHUTDOWN_REASON_SUSPEND is received. The causes a persistent domain to show state "pmsuspended" after a successful migrate or save operation. Revert the commit and ignore the suspend event as before. This reverts commit d00c77ae45c7d9fd90384f01cd8b04c54f501e96. Signed-off-by: Jim Fehlig <jfehlig@suse.com> Index: libvirt-5.1.0/src/libxl/libxl_domain.c =================================================================== --- libvirt-5.1.0.orig/src/libxl/libxl_domain.c +++ libvirt-5.1.0/src/libxl/libxl_domain.c @@ -556,17 +556,6 @@ libxlDomainShutdownThread(void *opaque) case VIR_DOMAIN_LIFECYCLE_ACTION_LAST: goto endjob; } - } else if (xl_reason == LIBXL_SHUTDOWN_REASON_SUSPEND) { - virDomainObjSetState(vm, VIR_DOMAIN_PMSUSPENDED, - VIR_DOMAIN_PMSUSPENDED_UNKNOWN); - - dom_event = virDomainEventLifecycleNewFromObj(vm, - VIR_DOMAIN_EVENT_PMSUSPENDED, - VIR_DOMAIN_EVENT_PMSUSPENDED_MEMORY); - /* - * Similar to the xl implementation, ignore SUSPEND. Any actions needed - * after calling libxl_domain_suspend() are handled by it's callers. - */ #ifdef LIBXL_HAVE_SOFT_RESET } else if (xl_reason == LIBXL_SHUTDOWN_REASON_SOFT_RESET) { libxlDomainObjPrivatePtr priv = vm->privateData; @@ -666,6 +655,7 @@ void libxlDomainEventHandler(void *data, VIR_LIBXL_EVENT_CONST libxl_event *event) { libxlDriverPrivatePtr driver = data; + libxl_shutdown_reason xl_reason = event->u.domain_shutdown.shutdown_reason; struct libxlShutdownThreadInfo *shutdown_info = NULL; virThread thread; libxlDriverConfigPtr cfg; @@ -678,6 +668,13 @@ libxlDomainEventHandler(void *data, VIR_ } /* + * Similar to the xl implementation, ignore SUSPEND. Any actions needed + * after calling libxl_domain_suspend() are handled by its callers. + */ + if (xl_reason == LIBXL_SHUTDOWN_REASON_SUSPEND) + goto error; + + /* * Start a thread to handle shutdown. We don't want to be tying up * libxl's event machinery by doing a potentially lengthy shutdown. */
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor