Lines Matching refs:w

673                                            libxl__ev_xswatch *w)  in libxl__set_watch_slot_contents()  argument
678 slot->empty.sle_next = (void*)w; in libxl__set_watch_slot_contents()
717 libxl__ev_xswatch *w = libxl__watch_slot_contents(gc, slotnum); in watchfd_callback() local
719 if (!w) { in watchfd_callback()
724 if (w->counterval != counterval) { in watchfd_callback()
726 w, epath, token, w->counterval); in watchfd_callback()
743 if (!xs_path_is_subpath(w->path, epath)) { in watchfd_callback()
745 w, w->path, token, epath); in watchfd_callback()
751 w, w->path, token, epath); in watchfd_callback()
752 w->callback(egc, w, w->path, epath); in watchfd_callback()
771 int libxl__ev_xswatch_register(libxl__gc *gc, libxl__ev_xswatch *w, in libxl__ev_xswatch_register() argument
810 w->counterval = CTX->watch_counter++; in libxl__ev_xswatch_register()
812 const char *token = watch_token(gc, slotnum, w->counterval); in libxl__ev_xswatch_register()
814 w, path, token, slotnum); in libxl__ev_xswatch_register()
822 w->slotnum = slotnum; in libxl__ev_xswatch_register()
823 w->path = path_copy; in libxl__ev_xswatch_register()
824 w->callback = func; in libxl__ev_xswatch_register()
826 libxl__set_watch_slot_contents(use, w); in libxl__ev_xswatch_register()
842 void libxl__ev_xswatch_deregister(libxl__gc *gc, libxl__ev_xswatch *w) in libxl__ev_xswatch_deregister() argument
847 if (w->slotnum >= 0) { in libxl__ev_xswatch_deregister()
848 const char *token = watch_token(gc, w->slotnum, w->counterval); in libxl__ev_xswatch_deregister()
851 w, w->path, token, w->slotnum); in libxl__ev_xswatch_deregister()
853 if (!xs_unwatch(CTX->xsh, w->path, token)) in libxl__ev_xswatch_deregister()
856 LOGEV(ERROR, errno, "remove watch for path %s", w->path); in libxl__ev_xswatch_deregister()
858 libxl__ev_watch_slot *slot = &CTX->watch_slots[w->slotnum]; in libxl__ev_xswatch_deregister()
860 w->slotnum = -1; in libxl__ev_xswatch_deregister()
864 LOG(DEBUG, "watch w=%p: deregister unregistered", w); in libxl__ev_xswatch_deregister()
867 free(w->path); in libxl__ev_xswatch_deregister()
868 w->path = NULL; in libxl__ev_xswatch_deregister()
1035 libxl__ev_devstate *ds = CONTAINER_OF(xsw, *ds, w); in devstate_callback()
1039 LOG(DEBUG, "backend %s wanted state %d "" timed out", ds->w.path, in devstate_callback()
1045 ds->w.path, ds->wanted); in devstate_callback()
1052 LOG(DEBUG, "backend %s wanted state %d ok", ds->w.path, ds->wanted); in devstate_callback()
1056 ds->w.path, ds->wanted, got); in devstate_callback()
1072 libxl__xswait_init(&ds->w); in libxl__ev_devstate_wait()
1076 ds->w.ao = ao; in libxl__ev_devstate_wait()
1077 ds->w.what = GCSPRINTF("backend %s (hoping for state change to %d)", in libxl__ev_devstate_wait()
1079 ds->w.path = state_path; in libxl__ev_devstate_wait()
1080 ds->w.timeout_ms = milliseconds; in libxl__ev_devstate_wait()
1081 ds->w.callback = devstate_callback; in libxl__ev_devstate_wait()
1082 rc = libxl__xswait_start(gc, &ds->w); in libxl__ev_devstate_wait()
1133 static void domaindeathcheck_callback(libxl__egc *egc, libxl__ev_xswatch *w, in domaindeathcheck_callback() argument
1136 libxl__domaindeathcheck *dc = CONTAINER_OF(w, *dc, watch); in domaindeathcheck_callback()