Lines Matching defs:dsp
226 #define DLD_DATATHR_INC(dsp) { \
227 ASSERT(MUTEX_HELD(&(dsp)->ds_lock)); \
228 dsp->ds_datathr_cnt++; \
231 #define DLD_DATATHR_DCR(dsp) { \
232 mutex_enter(&(dsp)->ds_lock); \
233 (dsp)->ds_datathr_cnt--; \
234 if ((dsp)->ds_datathr_cnt == 0) \
235 cv_broadcast(&(dsp)->ds_datathr_cv); \
236 mutex_exit(&(dsp)->ds_lock); \
309 #define DLD_SETQFULL(dsp) { \
310 queue_t *q = (dsp)->ds_wq; \
312 mutex_enter(&(dsp)->ds_lock); \
313 if ((dsp)->ds_tx_flow_mp != NULL) { \
314 (void) putq(q, (dsp)->ds_tx_flow_mp); \
315 (dsp)->ds_tx_flow_mp = NULL; \
316 qenable((dsp)->ds_wq); \
318 mutex_exit(&(dsp)->ds_lock); \
323 * it is usually only needed in TX data-path when the dsp->ds_dlstate is
326 #define DLD_CLRQFULL(dsp) { \
327 queue_t *q = (dsp)->ds_wq; \
329 mutex_enter(&(dsp)->ds_lock); \
330 if ((dsp)->ds_dlstate != DL_IDLE || \
331 !mac_tx_is_flow_blocked((dsp)->ds_mch, NULL)) { \
332 if ((dsp)->ds_tx_flow_mp == NULL) \
333 (dsp)->ds_tx_flow_mp = getq(q); \
334 ASSERT((dsp)->ds_tx_flow_mp != NULL); \
336 mutex_exit(&(dsp)->ds_lock); \
339 #define DLD_TX(dsp, mp, f_hint, flag) \
340 mac_tx(dsp->ds_mch, mp, f_hint, flag, NULL)