X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvlib%2Fcounter.h;h=092bd00c8793d45ee2b2c13fc8504ff7c4c019ad;hb=b0055c81570624534d279b6dfbc5fe351fd5d5f3;hp=3aacc9b375fd5ee90fb0b9f12d3eb8aa58956a76;hpb=bef3619d259b43f4bf4bfd43db1338ddb10a8c39;p=vpp.git diff --git a/src/vlib/counter.h b/src/vlib/counter.h index 3aacc9b375f..092bd00c879 100644 --- a/src/vlib/counter.h +++ b/src/vlib/counter.h @@ -84,6 +84,22 @@ vlib_increment_simple_counter (vlib_simple_counter_main_t * cm, my_counters[index] += increment; } +/** Set a simple counter + @param cm - (vlib_simple_counter_main_t *) simple counter main pointer + @param thread_index - (u32) the current cpu index + @param index - (u32) index of the counter to increment + @param value - (u64) quantitiy to set to the counter +*/ +always_inline void +vlib_set_simple_counter (vlib_simple_counter_main_t * cm, + u32 thread_index, u32 index, u64 value) +{ + counter_t *my_counters; + + my_counters = cm->counters[thread_index]; + my_counters[index] = value; +} + /** Get the value of a simple counter Scrapes the entire set of per-thread counters. Innacurate unless worker threads which might increment the counter are