Lines Matching defs:rsrc

158 	rsrc_t *rsrc;
159 rsrc = cache_head.next;
160 while (rsrc != &cache_tail) {
161 if (rsrc->id && strcmp(resource, rsrc->id) == 0) {
162 return (rsrc);
164 rsrc = rsrc->next;
175 rsrc_t *rsrc;
176 rsrc = cache_head.next;
177 while (rsrc != &cache_tail) {
178 if (rsrc->dev == devt)
179 return (rsrc);
180 rsrc = rsrc->next;
225 rsrc_t *rsrc = malloc(sizeof (rsrc_t));
227 if (rsrc != NULL) {
228 if ((rsrc->id = strdup(resource)) != NULL) {
229 rsrc->dev = dev;
230 rsrc->flags = 0;
231 rsrc->dependencies = NULL;
232 cache_insert(rsrc);
234 free(rsrc);
235 rsrc = NULL;
241 return (rsrc);
252 rsrc_t *rsrc = cache_lookup(resource);
253 if (rsrc == NULL) {
257 rsrc = cache_create(resource, dev);
259 return (rsrc);
704 rsrc_t *rsrc;
720 rsrc = cache_lookup(resource);
721 if (rsrc == NULL &&
722 (rsrc = cache_create(resource, di_minor_devt(minor))) == NULL)
725 rsrc->dev = di_minor_devt(minor);
726 rsrc->flags |= PRESENT;
727 rsrc->flags &= ~UNKNOWN;
738 rsrc_t *rsrc;
742 if ((rsrc = cache_lookup_bydevt(dev)) != NULL)
743 return (rsrc);
850 rsrc_available(rsrc_t *rsrc)
855 if (rsrc->dev == NODEV) {
864 (void) get_devpath(rsrc->id, NULL, &rsrc->dev);
865 if (rsrc->dev == NODEV) {
867 ("Device node %s does not exist\n", rsrc->id));
878 if (link->user == rsrc || link->used == rsrc) {
892 rsrc_unavailable(rsrc_t *rsrc)
901 if (link->user == rsrc || link->used == rsrc) {
914 * the rsrc argument). The search begins after the resource identified
917 * greater than zero then a resource which uses rsrc will only be
921 * through all the resources in the cache that depend upon rsrc.
924 get_next_user(rsrc_t *next, rsrc_t *rsrc, int redundancy)
943 if (link->used == rsrc)
954 _msg(8, ("TTYMUX: count_users(%s) res %d.\n", rsrc->id, cnt));
966 rsrc_t *rsrc, *user;
971 rsrc = cache_lookup(rsrcid);
972 if (rsrc == NULL) {
973 /* shouldn't happen because rsrc has been registered */
988 rsrc->id));
995 rsrc->flags |= UNKNOWN;
996 rsrc->flags &= ~(PRESENT | REGISTERED);
1001 user = get_next_user(NULL, rsrc, 1);
1018 rv = rsrc_unavailable(rsrc);
1041 rv = rsrc_unavailable(rsrc);
1053 rsrc->id));
1056 _msg(4, ("TTYMUX: OFFLINE %s res %d.\n", rsrc->id, rv));
1063 rsrc->id));
1070 _msg(4, ("TTYMUX: ONLINE %s res %d.\n", rsrc->id, rv));
1071 rv = rsrc_available(rsrc);
1213 rsrc_t *rsrc;
1218 rsrc = cache_head.next;
1219 while (rsrc != &cache_tail) {
1220 cache_remove(rsrc);
1222 for (link = rsrc->dependencies; link != NULL; ) {
1228 free_node(rsrc);
1229 rsrc = cache_head.next;
1253 rsrc_t *rsrc;
1278 for (rsrc = cache_head.next; rsrc != &cache_tail; rsrc = rsrc->next) {
1279 _msg(6, ("TTYMUX: REGISTER rsrc %s flags %d\n",
1280 rsrc->id, rsrc->flags));
1282 if (rsrc->dependencies != NULL &&
1283 (rsrc->flags & REGISTERED) == 0) {
1284 _msg(6, ("TTYMUX: Registering rsrc %s\n", rsrc->id));
1285 rv = rcm_register_interest(hd, rsrc->id, 0, NULL);
1287 rsrc->flags |= REGISTERED;
1290 for (link = rsrc->dependencies; link != NULL;
1295 _msg(6, ("TTYMUX: Registering rsrc %s\n",
1319 rsrc_t *rsrc;
1326 for (rsrc = cache_head.next; rsrc != &cache_tail; rsrc = rsrc->next) {
1327 if ((rsrc->flags & REGISTERED) == 0)
1330 if (rcm_unregister_interest(hd, rsrc->id, 0) != RCM_SUCCESS)
1332 _("TTYMUX: Failed to unregister %s\n"), rsrc->id);
1334 rsrc->flags &= ~REGISTERED;
1348 rsrc_t *rsrc, *user;
1353 rsrc = cache_lookup(rsrcid);
1355 if (rsrc == NULL) {
1363 while ((user = get_next_user(user, rsrc, -1)) != NULL) {
1392 tty_offline(rcm_handle_t *hd, char *rsrc, id_t id, uint_t flags,
1395 return (rsrc_change_common(hd, TTYMUX_OFFLINE, rsrc, flags,
1401 tty_remove(rcm_handle_t *hd, char *rsrc, id_t id, uint_t flags,
1404 return (rsrc_change_common(hd, TTYMUX_REMOVE, rsrc, flags,
1410 tty_suspend(rcm_handle_t *hd, char *rsrc, id_t id, timespec_t *interval,
1413 return (rsrc_change_common(hd, TTYMUX_SUSPEND, rsrc, flag,
1419 tty_online(rcm_handle_t *hd, char *rsrc, id_t id, uint_t flags,
1422 return (rsrc_change_common(hd, TTYMUX_ONLINE, rsrc, flags,
1428 tty_resume(rcm_handle_t *hd, char *rsrc, id_t id, uint_t flags,
1431 return (rsrc_change_common(hd, TTYMUX_RESUME, rsrc, flags,