Lines Matching refs:tokenmt_data
71 tokenmt_process(mblk_t **mpp, tokenmt_data_t *tokenmt_data, in tokenmt_process() argument
81 tokenmt_cfg_t *cfg_parms = tokenmt_data->cfg_parms; in tokenmt_process()
85 atomic_inc_64(&tokenmt_data->epackets); in tokenmt_process()
95 atomic_inc_64(&tokenmt_data->epackets); in tokenmt_process()
104 atomic_inc_64(&tokenmt_data->epackets); in tokenmt_process()
126 mutex_enter(&tokenmt_data->tokenmt_lock); in tokenmt_process()
128 tokenmt_update_tokens(tokenmt_data, now); in tokenmt_process()
139 if (pkt_len <= tokenmt_data->committed_tokens) { in tokenmt_process()
140 tokenmt_data->committed_tokens -= pkt_len; in tokenmt_process()
142 } else if (pkt_len <= tokenmt_data->peak_tokens) { in tokenmt_process()
149 tokenmt_data->peak_tokens -= pkt_len; in tokenmt_process()
157 (pkt_len <= tokenmt_data->committed_tokens)) { in tokenmt_process()
158 tokenmt_data->committed_tokens -= pkt_len; in tokenmt_process()
162 (pkt_len <= tokenmt_data->peak_tokens)) { in tokenmt_process()
169 tokenmt_data->peak_tokens -= pkt_len; in tokenmt_process()
177 if (pkt_len > tokenmt_data->peak_tokens) { in tokenmt_process()
179 } else if (pkt_len > tokenmt_data->committed_tokens) { in tokenmt_process()
186 tokenmt_data->peak_tokens -= pkt_len; in tokenmt_process()
189 tokenmt_data->committed_tokens -= pkt_len; in tokenmt_process()
190 tokenmt_data->peak_tokens -= pkt_len; in tokenmt_process()
196 (pkt_len > tokenmt_data->peak_tokens)) { in tokenmt_process()
199 (pkt_len > tokenmt_data->committed_tokens)) { in tokenmt_process()
206 tokenmt_data->peak_tokens -= pkt_len; in tokenmt_process()
209 tokenmt_data->committed_tokens -= pkt_len; in tokenmt_process()
210 tokenmt_data->peak_tokens -= pkt_len; in tokenmt_process()
215 mutex_exit(&tokenmt_data->tokenmt_lock); in tokenmt_process()
219 atomic_inc_64(&tokenmt_data->green_packets); in tokenmt_process()
220 atomic_add_64(&tokenmt_data->green_bits, pkt_len); in tokenmt_process()
222 atomic_inc_64(&tokenmt_data->yellow_packets); in tokenmt_process()
223 atomic_add_64(&tokenmt_data->yellow_bits, pkt_len); in tokenmt_process()
226 atomic_inc_64(&tokenmt_data->red_packets); in tokenmt_process()
227 atomic_add_64(&tokenmt_data->red_bits, pkt_len); in tokenmt_process()
234 tokenmt_update_tokens(tokenmt_data_t *tokenmt_data, hrtime_t now) in tokenmt_update_tokens() argument
236 tokenmt_cfg_t *cfg_parms = (tokenmt_cfg_t *)tokenmt_data->cfg_parms; in tokenmt_update_tokens()
237 hrtime_t diff = now - tokenmt_data->last_seen; in tokenmt_update_tokens()
251 if ((tokenmt_data->committed_tokens + tokens) > in tokenmt_update_tokens()
253 tokens = tokenmt_data->committed_tokens in tokenmt_update_tokens()
256 tokenmt_data->committed_tokens = in tokenmt_update_tokens()
258 tokenmt_data->peak_tokens = in tokenmt_update_tokens()
260 tokenmt_data->peak_tokens + in tokenmt_update_tokens()
263 tokenmt_data->committed_tokens += in tokenmt_update_tokens()
271 tokenmt_data->committed_tokens = in tokenmt_update_tokens()
273 tokenmt_data->committed_tokens + tokens); in tokenmt_update_tokens()
278 tokenmt_data->peak_tokens = in tokenmt_update_tokens()
280 tokenmt_data->peak_tokens + tokens); in tokenmt_update_tokens()
283 tokenmt_data->last_seen = now; in tokenmt_update_tokens()