Lines Matching refs:element

995 usba_init_list(usba_list_entry_t *element, usb_opaque_t private,
998 mutex_init(&element->list_mutex, NULL, MUTEX_DRIVER,
1000 mutex_enter(&element->list_mutex);
1001 element->private = private;
1002 mutex_exit(&element->list_mutex);
1019 usba_add_to_list(usba_list_entry_t *head, usba_list_entry_t *element)
1025 mutex_enter(&element->list_mutex);
1030 ASSERT(element->next == NULL);
1031 ASSERT(element->prev == NULL);
1043 if (next == element) {
1048 ASSERT(next == element);
1069 head->prev = head->next = element;
1072 head->prev->next = element;
1073 element->prev = head->prev;
1074 head->prev = element;
1080 "usba_add_to_list: head=0x%p element=0x%p count=%d",
1081 (void *)head, (void *)element, head->count);
1085 mutex_exit(&element->list_mutex);
1090 usba_rm_from_list(usba_list_entry_t *head, usba_list_entry_t *element)
1096 /* find the element in the list first */
1100 "usba_rm_from_list: head=0x%p element=0x%p count=%d",
1101 (void *)head, (void *)element, head->count);
1107 if (e == element) {
1129 /* now remove the element */
1130 mutex_enter(&element->list_mutex);
1132 if (element->next) {
1133 element->next->prev = element->prev;
1135 if (element->prev) {
1136 element->prev->next = element->next;
1138 if (head->next == element) {
1139 head->next = element->next;
1141 if (head->prev == element) {
1142 head->prev = element->prev;
1145 element->prev = element->next = NULL;
1160 "usba_rm_from_list success: head=0x%p element=0x%p cnt=%d",
1161 (void *)head, (void *)element, head->count);
1163 mutex_exit(&element->list_mutex);
1173 usba_list_entry_t *element = NULL;
1177 element = head->next;
1178 if (element) {
1179 /* now remove the element */
1180 mutex_enter(&element->list_mutex);
1181 head->next = element->next;
1185 if (head->prev == element) {
1186 head->prev = element->next;
1188 element->prev = element->next = NULL;
1189 mutex_exit(&element->list_mutex);
1204 (void *)head, (void *)element, head->count);
1209 return (element);
1216 usba_list_entry_t *element = usba_rm_first_from_list(head);
1219 if (element) {
1220 mutex_enter(&element->list_mutex);
1221 private = element->private;
1222 mutex_exit(&element->list_mutex);
1255 usba_check_in_list(usba_list_entry_t *head, usba_list_entry_t *element)
1264 mutex_enter(&element->list_mutex);
1266 if (next == element) {
1279 mutex_exit(&element->list_mutex);