Lines Matching defs:cont_tbl

213 					container_tbl_t *cont_tbl)
222 first_hash = &cont_tbl->hash_obj[index_to_hash];
239 add_tblobject_to_container_tbl(container_tbl_t *cont_tbl)
245 index_to_hash = ((cont_tbl->picl_hdl) % TABLE_SIZE);
247 cont_tbl->next = container_table[index_to_hash];
248 container_table[index_to_hash] = cont_tbl;
249 hash_ptr = cont_tbl->hash_obj;
258 if (cont_tbl->next != NULL) {
259 cont_tbl->next->prev = cont_tbl;
264 add_nodeobject_to_hashtable(hash_obj_t *hash_obj, container_tbl_t *cont_tbl)
270 hash_table = &cont_tbl->hash_obj[index_to_hash];
283 container_tbl_t *cont_tbl;
285 cont_tbl = malloc(sizeof (container_tbl_t));
286 if (cont_tbl == NULL) {
290 cont_tbl->picl_hdl = nodehdl;
292 cont_tbl->hash_obj = malloc(sizeof (hash_obj_t[TABLE_SIZE]));
293 cont_tbl->next = NULL;
294 cont_tbl->prev = NULL;
296 if (cont_tbl->hash_obj == NULL) {
297 (void) free(cont_tbl);
301 (void) pthread_rwlock_init(&cont_tbl->rwlock, NULL);
302 (void) pthread_cond_init(&cont_tbl->cond_var, NULL);
304 return (cont_tbl);
529 free_packet_list(hash_obj_t *hash_obj, container_tbl_t *cont_tbl)
540 cont_tbl->hash_obj[(free_obj->picl_hdl %
564 container_tbl_t *cont_tbl)
598 cont_tbl->hash_obj[(next_obj->picl_hdl % TABLE_SIZE)].next =
609 free_packet_list(next_obj, cont_tbl);
639 container_tbl_t *cont_tbl;
643 cont_tbl = lock_container_lock(warg->nodeh, SEGMENT_NODE, PICL_WRITE);
644 if (!cont_tbl) {
649 hash_obj = lookup_node_object(warg->nodeh, SEGMENT_NODE, cont_tbl);
651 unlock_container_lock(cont_tbl);
661 unlock_container_lock(cont_tbl);
666 unlock_container_lock(cont_tbl);
671 unlock_container_lock(cont_tbl);
679 hash_obj = lookup_node_object(sec_nodehdl, SECTION_NODE, cont_tbl);
681 unlock_container_lock(cont_tbl);
685 free_segment_node(hash_obj, warg->nodeh, cont_tbl);
692 unlock_container_lock(cont_tbl);
698 unlock_container_lock(cont_tbl);
706 unlock_container_lock(cont_tbl);
712 unlock_container_lock(cont_tbl);
742 unlock_container_lock(cont_tbl);
775 unlock_container_lock(cont_tbl);
798 container_tbl_t *cont_tbl;
801 cont_tbl = lock_container_lock(rarg->nodeh, SEGMENT_NODE, PICL_READ);
802 if (!cont_tbl) {
806 hash_obj = lookup_node_object(rarg->proph, PACKET_NODE, cont_tbl);
808 unlock_container_lock(cont_tbl);
817 unlock_container_lock(cont_tbl);
821 unlock_container_lock(cont_tbl);
844 container_tbl_t *cont_tbl;
846 cont_tbl = lock_container_lock(warg->nodeh, SEGMENT_NODE, PICL_WRITE);
847 if (!cont_tbl) {
851 hash_obj = lookup_node_object(warg->proph, PACKET_NODE, cont_tbl);
853 unlock_container_lock(cont_tbl);
863 unlock_container_lock(cont_tbl);
869 unlock_container_lock(cont_tbl);
888 container_tbl_t *cont_tbl;
890 cont_tbl = lock_container_lock(rarg->nodeh, SEGMENT_NODE, PICL_READ);
891 if (!cont_tbl) {
897 unlock_container_lock(cont_tbl);
901 hash_obj = lookup_node_object(rowproph, PACKET_NODE, cont_tbl);
903 unlock_container_lock(cont_tbl);
909 unlock_container_lock(cont_tbl);
978 container_tbl_t *cont_tbl;
983 cont_tbl = lock_container_lock(warg->nodeh, SEGMENT_NODE, PICL_WRITE);
984 if (!cont_tbl) {
991 unlock_container_lock(cont_tbl);
996 pkt_hash_obj = lookup_node_object(rowproph, PACKET_NODE, cont_tbl);
998 unlock_container_lock(cont_tbl);
1007 unlock_container_lock(cont_tbl);
1015 unlock_container_lock(cont_tbl);
1023 unlock_container_lock(cont_tbl);
1029 unlock_container_lock(cont_tbl);
1035 unlock_container_lock(cont_tbl);
1041 cont_tbl);
1043 unlock_container_lock(cont_tbl);
1048 free_packet_list(seg_hash_obj, cont_tbl);
1053 unlock_container_lock(cont_tbl);
1063 unlock_container_lock(cont_tbl);
1068 unlock_container_lock(cont_tbl);
1074 unlock_container_lock(cont_tbl);
1081 unlock_container_lock(cont_tbl);
1088 cont_tbl);
1096 unlock_container_lock(cont_tbl);
1110 container_tbl_t *cont_tbl)
1181 add_nodeobject_to_hashtable(hash_obj, cont_tbl);
1198 container_tbl_t *cont_tbl, door_cred_t *cred)
1207 hash_obj = lookup_node_object(nodeh, SEGMENT_NODE, cont_tbl);
1243 cont_tbl);
1277 container_tbl_t *cont_tbl;
1283 cont_tbl = lock_container_lock(warg->nodeh, SEGMENT_NODE, PICL_WRITE);
1284 if (!cont_tbl) {
1288 hash_obj = lookup_node_object(warg->nodeh, SEGMENT_NODE, cont_tbl);
1290 unlock_container_lock(cont_tbl);
1298 unlock_container_lock(cont_tbl);
1304 unlock_container_lock(cont_tbl);
1310 unlock_container_lock(cont_tbl);
1320 unlock_container_lock(cont_tbl);
1327 unlock_container_lock(cont_tbl);
1330 retval = add_row_to_table(hash_obj, tblhdl, &packet, cont_tbl);
1332 unlock_container_lock(cont_tbl);
1338 unlock_container_lock(cont_tbl);
1344 unlock_container_lock(cont_tbl);
1351 unlock_container_lock(cont_tbl);
1357 unlock_container_lock(cont_tbl);
1371 unlock_container_lock(cont_tbl);
1391 segment_t *segment, container_tbl_t *cont_tbl, door_cred_t *cred)
1514 add_nodeobject_to_hashtable(hash_obj, cont_tbl);
1518 retval = frudata_read_packet(nodehdl, &tblhdl, cont_tbl, cred);
1551 container_tbl_t *cont_tbl;
1553 cont_tbl = lock_container_lock(rarg->nodeh, SECTION_NODE, PICL_READ);
1554 if (!cont_tbl) {
1558 hash_obj = lookup_node_object(rarg->nodeh, SECTION_NODE, cont_tbl);
1560 unlock_container_lock(cont_tbl);
1573 unlock_container_lock(cont_tbl);
1579 unlock_container_lock(cont_tbl);
1586 unlock_container_lock(cont_tbl);
1594 unlock_container_lock(cont_tbl);
1610 &segment[cnt], cont_tbl, &rarg->cred);
1618 unlock_container_lock(cont_tbl);
1645 container_tbl_t *cont_tbl;
1664 cont_tbl = lock_container_lock(warg->nodeh, SECTION_NODE, PICL_WRITE);
1665 if (!cont_tbl) {
1669 hash_obj = lookup_node_object(warg->nodeh, SECTION_NODE, cont_tbl);
1671 unlock_container_lock(cont_tbl);
1679 unlock_container_lock(cont_tbl);
1688 unlock_container_lock(cont_tbl);
1695 unlock_container_lock(cont_tbl);
1703 cont_tbl, &warg->cred);
1708 unlock_container_lock(cont_tbl);
1734 unlock_container_lock(cont_tbl);
1748 section_t *section, container_tbl_t *cont_tbl)
1830 cont_hash = lookup_node_object(nodehdl, CONTAINER_NODE, cont_tbl);
1842 add_nodeobject_to_hashtable(hash_obj, cont_tbl);
1876 container_tbl_t *cont_tbl = NULL;
1887 cont_tbl = lookup_container_table(warg->nodeh, CONTAINER_NODE);
1888 if (cont_tbl != NULL) { /* found the hash obj in the hash table */
1896 * new container and add to the cont_tbl hash table.
1899 cont_tbl = alloc_container_table(warg->nodeh);
1900 if (cont_tbl == NULL) {
1908 free(cont_tbl->hash_obj);
1909 free(cont_tbl);
1914 add_tblobject_to_container_tbl(cont_tbl);
1917 add_nodeobject_to_hashtable(hash_obj, cont_tbl);
1919 while (pthread_rwlock_trywrlock(&cont_tbl->rwlock) == EBUSY) {
1920 pthread_cond_wait(&cont_tbl->cond_var, &cont_tbl_lock);
1932 unlock_container_lock(cont_tbl);
1942 unlock_container_lock(cont_tbl);
1950 section + count, cont_tbl);
1953 unlock_container_lock(cont_tbl);
2053 free_section_node(hash_obj_t *sec_hash, container_tbl_t *cont_tbl)
2059 free_segment_node(seg_hash, seg_hash->picl_hdl, cont_tbl);
2063 cont_tbl->hash_obj[(sec_hash->picl_hdl % TABLE_SIZE)].next =
2116 container_tbl_t *cont_tbl;
2120 cont_tbl = lookup_container_table(fru_hdl, CONTAINER_NODE);
2121 if (cont_tbl == NULL) {
2127 unlink_container_node(cont_tbl);
2129 (void) pthread_cond_broadcast(&cont_tbl->cond_var);
2138 (void) pthread_rwlock_wrlock(&cont_tbl->rwlock);
2140 (void) pthread_rwlock_unlock(&cont_tbl->rwlock);
2143 cont_hash = lookup_node_object(fru_hdl, CONTAINER_NODE, cont_tbl);
2152 free_section_node(free_obj, cont_tbl);
2159 free(cont_tbl->hash_obj);
2160 free(cont_tbl);
2419 container_tbl_t *cont_tbl;
2427 cont_tbl = container_table[cnt];
2428 nodehdl = cont_tbl->picl_hdl;
2430 cont_tbl = lookup_container_table(nodehdl,
2432 if (cont_tbl == NULL) {
2437 unlink_container_node(cont_tbl);
2439 pthread_cond_broadcast(&cont_tbl->cond_var);
2448 (void) pthread_rwlock_wrlock(&cont_tbl->rwlock);
2450 (void) pthread_rwlock_unlock(&cont_tbl->rwlock);
2452 next_obj = cont_tbl->hash_obj->next;
2464 container_table[cnt] = cont_tbl->next;
2466 free(cont_tbl);