76 memset (qem, 0,
sizeof (*qem));
92 values, sizeof (qem->
qem_output[input_source]));
125 else if (
unformat (input,
"id %d", &map_id))
155 .path =
"qos egress map",
156 .short_help =
"qos egress map id %d [delete] {[SOURCE][INPUT]=OUTPUT}",
166 u32 indent = va_arg (*args,
u32);
199 if (
unformat (input,
"id %d", &map_id))
249 .path =
"show qos egress map",
250 .short_help =
"show qos egress map id %d",
qos_egress_map_t * qem_pool
Pool from which to allocate table.
#define hash_set(h, key, value)
#define hash_unset(h, key)
static qos_egress_map_t * qos_egress_map_find_or_create(qos_egress_map_id_t mid)
index_t qos_egress_map_find(qos_egress_map_id_t mid)
Get the VPP QoS map index from the user's map-ID.
u32 index_t
A Data-Path Object is an object that represents actions that are applied to packets are they are swit...
u8 * format_qos_egress_map(u8 *s, va_list *args)
uword * qem_db
DB to map user table-IDs to internal table indicies.
void qos_egress_map_delete(qos_egress_map_id_t mid)
static clib_error_t * qos_egress_map_show(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
static clib_error_t * qos_egress_map_update_cli(vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd)
#define hash_foreach(key_var, value_var, h, body)
#define clib_error_return(e, args...)
#define FOR_EACH_QOS_SOURCE(_src)
void qos_egress_map_update(qos_egress_map_id_t mid, qos_source_t input_source, qos_bits_t *values)
Add a qos-egress map to an interface.
u8 * format_qos_source(u8 *s, va_list *args)
format/unformat QoS source types
#define pool_elt_at_index(p, i)
Returns pointer to element at given index.
qos_egress_map_t * qos_egress_map_find_i(qos_egress_map_id_t mid)
#define pool_put(P, E)
Free an object E in pool P.
#define pool_get_aligned(P, E, A)
Allocate an object E from a pool P (general version).
enum qos_source_t_ qos_source_t
QoS tyeps.
#define clib_memcpy(a, b, c)
#define VLIB_CLI_COMMAND(x,...)
For a given output source a table maps each value of every input sorce.
#define INDEX_INVALID
Invalid index - used when no index is known blazoned capitals INVALID speak volumes where ~0 does not...
#define CLIB_CACHE_LINE_BYTES
void vlib_cli_output(vlib_main_t *vm, char *fmt,...)
uword unformat_qos_source(unformat_input_t *input, va_list *args)
qos_bits_t qem_output[QOS_N_SOURCES][256]
The array of output mapped values; output = eq_qos[input-source][input-value].
u8 qos_bits_t
Type, er, safety for us water based entities.
u32 qos_egress_map_id_t
A QOS egress map translates from the COS bits stored in the packet's meta-data into a per-protocol CO...