Lines Matching refs:xxwp

1211 i_xvdi_xb_watch_free(xd_xb_watches_t *xxwp)  in i_xvdi_xb_watch_free()  argument
1213 ASSERT(xxwp->xxw_ref == 0); in i_xvdi_xb_watch_free()
1214 strfree((char *)xxwp->xxw_watch.node); in i_xvdi_xb_watch_free()
1215 kmem_free(xxwp, sizeof (*xxwp)); in i_xvdi_xb_watch_free()
1219 i_xvdi_xb_watch_release(xd_xb_watches_t *xxwp) in i_xvdi_xb_watch_release() argument
1221 ASSERT(MUTEX_HELD(&xxwp->xxw_xppd->xd_ndi_lk)); in i_xvdi_xb_watch_release()
1222 ASSERT(xxwp->xxw_ref > 0); in i_xvdi_xb_watch_release()
1223 if (--xxwp->xxw_ref == 0) in i_xvdi_xb_watch_release()
1224 i_xvdi_xb_watch_free(xxwp); in i_xvdi_xb_watch_release()
1228 i_xvdi_xb_watch_hold(xd_xb_watches_t *xxwp) in i_xvdi_xb_watch_hold() argument
1230 ASSERT(MUTEX_HELD(&xxwp->xxw_xppd->xd_ndi_lk)); in i_xvdi_xb_watch_hold()
1231 ASSERT(xxwp->xxw_ref > 0); in i_xvdi_xb_watch_hold()
1232 xxwp->xxw_ref++; in i_xvdi_xb_watch_hold()
1238 xd_xb_watches_t *xxwp = (xd_xb_watches_t *)arg; in i_xvdi_xb_watch_cb_tq() local
1239 dev_info_t *dip = (dev_info_t *)xxwp->xxw_watch.dev; in i_xvdi_xb_watch_cb_tq()
1240 struct xendev_ppd *pdp = xxwp->xxw_xppd; in i_xvdi_xb_watch_cb_tq()
1242 xxwp->xxw_cb(dip, xxwp->xxw_watch.node, xxwp->xxw_arg); in i_xvdi_xb_watch_cb_tq()
1245 i_xvdi_xb_watch_release(xxwp); in i_xvdi_xb_watch_cb_tq()
1254 xd_xb_watches_t *xxwp; in i_xvdi_xb_watch_cb() local
1260 for (xxwp = list_head(&pdp->xd_xb_watches); xxwp != NULL; in i_xvdi_xb_watch_cb()
1261 xxwp = list_next(&pdp->xd_xb_watches, xxwp)) { in i_xvdi_xb_watch_cb()
1262 if (w == &xxwp->xxw_watch) in i_xvdi_xb_watch_cb()
1266 if (xxwp == NULL) { in i_xvdi_xb_watch_cb()
1271 i_xvdi_xb_watch_hold(xxwp); in i_xvdi_xb_watch_cb()
1273 i_xvdi_xb_watch_cb_tq, xxwp, DDI_SLEEP); in i_xvdi_xb_watch_cb()
1288 xd_xb_watches_t *xxw_new, *xxwp; in xvdi_add_xb_watch_handler() local
1334 for (xxwp = list_head(&pdp->xd_xb_watches); xxwp != NULL; in xvdi_add_xb_watch_handler()
1335 xxwp = list_next(&pdp->xd_xb_watches, xxwp)) { in xvdi_add_xb_watch_handler()
1337 ASSERT(strcmp(xxwp->xxw_watch.node, path) != 0); in xvdi_add_xb_watch_handler()
1338 if (strcmp(xxwp->xxw_watch.node, path) != 0) in xvdi_add_xb_watch_handler()
1367 xd_xb_watches_t *xxwp; in xvdi_remove_xb_watch_handlers() local
1372 while ((xxwp = list_remove_head(&pdp->xd_xb_watches)) != NULL) { in xvdi_remove_xb_watch_handlers()
1374 unregister_xenbus_watch(&xxwp->xxw_watch); in xvdi_remove_xb_watch_handlers()
1376 i_xvdi_xb_watch_release(xxwp); in xvdi_remove_xb_watch_handlers()