int set_drop_tail_thr(const int thr) { write_atomic_int(&EGRESS_CB_SIZE, thr); RMT_LOG(P4_LOG_LEVEL_INFO, "Set drop tail threshold to %d\n", thr); int i = 0; for (i = 0; i < NB_THREADS_PER_PIPELINE; i++) { cb_resize(egress_pipeline_instances[i]->cb_in, read_atomic_int(&EGRESS_CB_SIZE), free_egress_pkt); } return 0; }
void dec_add_word (Decoder *dec, List *s) { if (s == NULL) return; /* Agrega una copia de la lista al buffer. La cadena en el buffer * se guarda en su orden, pero la del parámetro está al revés. */ dec->charbuffer.buffer[dec->charbuffer.nelem] = list_new (s->data); for (s = s->next; s != NULL; s = s->next) { dec->charbuffer.buffer[dec->charbuffer.nelem] = list_prepend (dec->charbuffer.buffer[dec->charbuffer.nelem], s->data); } if (++dec->charbuffer.nelem >= (1 << dec->nbits)) /* nelem+1 >= 2^nbits. */ dec->nbits++; if (dec->charbuffer.nelem >= dec->charbuffer.nmax) cb_resize (&dec->charbuffer); }