Lines Matching refs:clnt

87 static void mdeg_dump_clnt(mdeg_clnt_t *clnt);
213 mdeg_clnt_t *clnt;
224 clnt = &mdeg.tbl[idx];
225 if (!clnt->valid) {
257 clnt = &newtbl[mdeg.maxclnts];
265 ASSERT(clnt->valid == 0);
267 clnt->hdl = MDEG_ALLOC_HDL(idx, MDEG_HDL2COUNT(clnt->hdl));
269 return (clnt);
276 mdeg_clnt_t *clnt;
286 clnt = &mdeg.tbl[idx];
289 if (!clnt->valid) {
295 if (clnt->hdl != hdl) {
300 if (clnt->magic != MDEG_MAGIC) {
305 return (clnt);
316 mdeg_notify_client_reg(mdeg_clnt_t *clnt)
335 if (clnt->pspec == NULL) {
337 (*clnt->cb)(clnt->cb_arg, NULL);
347 startnode = mdeg_find_start_node(mdp, clnt->pspec);
361 nname = md_find_name(mdp, clnt->nmatch->namep);
390 (*clnt->cb)(clnt->cb_arg, mdeg_res);
423 mdeg_clnt_t *clnt;
437 clnt = mdeg_alloc_clnt();
439 ASSERT(clnt);
444 clnt->nmatch = nmatchp;
445 clnt->pspec = pspecp;
446 clnt->cb = cb;
447 clnt->cb_arg = cb_arg;
448 clnt->magic = MDEG_MAGIC;
451 clnt->valid = B_TRUE;
453 MDEG_DBG("client registered (0x%lx):\n", clnt->hdl);
454 MDEG_DUMP_CLNT(clnt);
458 if (mdeg_notify_client_reg(clnt) != MDEG_SUCCESS) {
459 bzero(clnt, sizeof (mdeg_clnt_t));
466 *hdlp = clnt->hdl;
474 mdeg_clnt_t *clnt;
483 if ((clnt = mdeg_get_client(hdl)) == NULL) {
489 MDEG_DUMP_CLNT(clnt);
492 mdh = clnt->hdl;
493 bzero(clnt, sizeof (mdeg_clnt_t));
495 clnt->hdl = mdh;
515 mdeg_clnt_t *clnt;
544 clnt = &mdeg.tbl[idx];
546 if (!clnt->valid)
549 MDEG_DBG("notifying client 0x%lx (%d/%d)\n", clnt->hdl,
553 (void *)clnt, TQ_SLEEP);
570 mdeg_clnt_t *clnt = (mdeg_clnt_t *)arg;
603 if (clnt->pspec == NULL) {
605 (*clnt->cb)(clnt->cb_arg, NULL);
612 md_prev_start = mdeg_find_start_node(mdeg.md_prev, clnt->pspec);
617 md_curr_start = mdeg_find_start_node(mdeg.md_curr, clnt->pspec);
624 md_curr_start, clnt->nmatch->namep, clnt->nmatch->matchp);
637 (*clnt->cb)(clnt->cb_arg, &mdeg_res);
889 mdeg_dump_clnt(mdeg_clnt_t *clnt)
893 if (!clnt->valid) {
898 if (clnt->pspec) {
899 mdeg_spec_str(clnt->pspec, str, MAX_FIELD_STR);
903 if (clnt->nmatch) {
904 mdeg_match_str(clnt->nmatch, str, MAX_FIELD_STR);
913 mdeg_clnt_t *clnt;
916 clnt = &(mdeg.tbl[idx]);
918 MDEG_DBG("client %d (0x%lx):\n", idx, clnt->hdl);
919 mdeg_dump_clnt(clnt);