[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 2/2] call ao_how callback explicitly

Bamvor Jian Zhang writes ("[PATCH 2/2] call ao_how callback explicitly"):
> ao_how callback is not called after inserted into list.
> in my test, i directly call it in
> libxl__ao_complete_check_progress_reports. i know it should not
> work like this. Could you give some suggestion about it?

I'm not sure what you mean.  Under what conditions do you not see the
callback happen ?  The existing machinery is supposed to take care of
that.  Specifically, in the patch you're changing,
libxl__ao_complete_check_progress_reports puts the ao onto
egc->aos_for_callback.  On the return path from the libxl event
function back to the application, we are supposed to call
libxl__egc_cleanup, which in turn calls egc_run_callbacks, which
should pick up the aos on aos_for_callback.  libxl__egc_cleanup is
called from the event loops in libxl_event_wait and
libxl__ao_inprogress and from the macro EGC_FREE.  It should be
impossible for a path to be missed because inside libxl one needs an
egc to call libxl__ao_complete.

What kind of an ao_how is your application passing to libxl ?  Is your
application multithreaded ?


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.