[libvirt] [PATCH RFC] libxl: use libxl_event_wait to process libxl events

Jim Fehlig jfehlig at suse.com
Tue Nov 24 01:12:18 UTC 2015


On 11/23/2015 01:59 PM, Jim Fehlig wrote:
>
> Thanks for your comments and ACK'ing the change . I'll submit a V2 that retains
> handling of shutdown event in a thread.

While testing V2, I noticed occasionally missing a shutdown event. I can see
from the logs that domain_death_xswatch_callback is called, a matching domain is
found, and shutdown is being reported

2015-11-23 17:01:09 MST libxl: debug:
libxl.c:1227:domain_death_xswatch_callback: [evg=0x7fa2fc002570:0] nentries=200
rc=2 0..61
2015-11-23 17:01:09 MST libxl: debug:
libxl.c:1238:domain_death_xswatch_callback: [evg=0x7fa2fc002570:0]  
got=domaininfos[0] got->domain=0
2015-11-23 17:01:09 MST libxl: debug:
libxl.c:1264:domain_death_xswatch_callback:  exists shutdown_reported=0
dominf.flags=ffff0020
2015-11-23 17:01:09 MST libxl: debug:
libxl.c:1238:domain_death_xswatch_callback: [evg=0x7fa34c007e20:61]  
got=domaininfos[0] got->domain=0
2015-11-23 17:01:09 MST libxl: debug:
libxl.c:1238:domain_death_xswatch_callback: [evg=0x7fa34c007e20:61]  
got=domaininfos[1] got->domain=61
2015-11-23 17:01:09 MST libxl: debug:
libxl.c:1264:domain_death_xswatch_callback:  exists shutdown_reported=0
dominf.flags=4
2015-11-23 17:01:09 MST libxl: debug:
libxl.c:1276:domain_death_xswatch_callback:  shutdown reporting

Seems the call to libxl__event_occurred never pokes libvirt's call to
libxl_event_wait. Interestingly, starting another domain does cause
libxl_event_wait to return with the missing shutdown event.

I'm testing on a fairly recent (2 weeks) git master. I'm not familiar with the
libxl poller code and will need to instrument that a bit to understand why
libxl_event_wait isn't poked.

Regards,
Jim




More information about the libvir-list mailing list