Lines Matching refs:softmac
121 softmac_t *softmac = arg; in softmac_m_promisc() local
122 softmac_lower_t *slp = softmac->smac_lower; in softmac_m_promisc()
124 ASSERT(MAC_PERIM_HELD(softmac->smac_mh)); in softmac_m_promisc()
132 softmac_t *softmac = arg; in softmac_m_multicst() local
140 ASSERT(MAC_PERIM_HELD(softmac->smac_mh)); in softmac_m_multicst()
144 addr_length = softmac->smac_addrlen; in softmac_m_multicst()
169 slp = softmac->smac_lower; in softmac_m_multicst()
177 softmac_t *softmac = arg; in softmac_m_unicst() local
183 ASSERT(MAC_PERIM_HELD(softmac->smac_mh)); in softmac_m_unicst()
187 size = DL_SET_PHYS_ADDR_REQ_SIZE + softmac->smac_addrlen; in softmac_m_unicst()
194 phyaddr->dl_addr_length = softmac->smac_addrlen; in softmac_m_unicst()
195 (void) memcpy(&phyaddr[1], macaddr, softmac->smac_addrlen); in softmac_m_unicst()
197 slp = softmac->smac_lower; in softmac_m_unicst()
214 softmac_process_notify_ind(softmac_t *softmac, mblk_t *mp) in softmac_process_notify_ind() argument
227 addrlen = dlnip->dl_addr_length - softmac->smac_saplen; in softmac_process_notify_ind()
228 if (addroff == 0 || addrlen != softmac->smac_addrlen || in softmac_process_notify_ind()
236 mac_unicst_update(softmac->smac_mh, mp->b_rptr + addroff); in softmac_process_notify_ind()
240 mac_link_update(softmac->smac_mh, LINK_STATE_UP); in softmac_process_notify_ind()
244 mac_link_update(softmac->smac_mh, LINK_STATE_DOWN); in softmac_process_notify_ind()
254 softmac_t *softmac = arg; in softmac_notify_thread() local
257 CALLB_CPR_INIT(&cprinfo, &softmac->smac_mutex, callb_generic_cpr, in softmac_notify_thread()
260 mutex_enter(&softmac->smac_mutex); in softmac_notify_thread()
265 while (softmac->smac_mh != NULL && in softmac_notify_thread()
266 !(softmac->smac_flags & SOFTMAC_NOTIFY_QUIT)) { in softmac_notify_thread()
269 if ((mp = softmac->smac_notify_head) == NULL) { in softmac_notify_thread()
271 cv_wait(&softmac->smac_cv, &softmac->smac_mutex); in softmac_notify_thread()
272 CALLB_CPR_SAFE_END(&cprinfo, &softmac->smac_mutex); in softmac_notify_thread()
276 softmac->smac_notify_head = softmac->smac_notify_tail = NULL; in softmac_notify_thread()
277 mutex_exit(&softmac->smac_mutex); in softmac_notify_thread()
282 softmac_process_notify_ind(softmac, mp); in softmac_notify_thread()
285 mutex_enter(&softmac->smac_mutex); in softmac_notify_thread()
293 freemsgchain(softmac->smac_notify_head); in softmac_notify_thread()
294 softmac->smac_notify_head = softmac->smac_notify_tail = NULL; in softmac_notify_thread()
295 softmac->smac_notify_thread = NULL; in softmac_notify_thread()
296 cv_broadcast(&softmac->smac_cv); in softmac_notify_thread()
305 softmac_t *softmac = slp->sl_softmac; in softmac_enqueue_notify_ind() local
307 mutex_enter(&softmac->smac_mutex); in softmac_enqueue_notify_ind()
308 if (softmac->smac_notify_tail == NULL) { in softmac_enqueue_notify_ind()
309 softmac->smac_notify_head = softmac->smac_notify_tail = mp; in softmac_enqueue_notify_ind()
311 softmac->smac_notify_tail->b_next = mp; in softmac_enqueue_notify_ind()
312 softmac->smac_notify_tail = mp; in softmac_enqueue_notify_ind()
314 cv_broadcast(&softmac->smac_cv); in softmac_enqueue_notify_ind()
315 mutex_exit(&softmac->smac_mutex); in softmac_enqueue_notify_ind()