24 #define _(bit, name, ss, v) \ 25 if (v && (vnet_buffer (b)->oflags & VNET_BUFFER_OFFLOAD_F_##name)) \ 26 s = format (s, "%s ", ss); 39 #define _(bit,name,ss,v) \ 40 if (v && (b->flags & VNET_BUFFER_F_##name)) \ 41 a = format (a, "%s ", ss); 44 if (b->
flags & VNET_BUFFER_F_OFFLOAD) a =
47 if (b->
flags & VNET_BUFFER_F_L2_HDR_OFFSET_VALID)
50 if (b->
flags & VNET_BUFFER_F_L3_HDR_OFFSET_VALID)
53 if (b->
flags & VNET_BUFFER_F_L4_HDR_OFFSET_VALID)
56 if (b->
flags & VNET_BUFFER_F_GSO)
59 if (b->
flags & VNET_BUFFER_F_QOS_DATA_VALID)
60 a =
format (a,
"qos %d.%d ",
63 if (b->
flags & VNET_BUFFER_F_LOOP_COUNTER_VALID)
u32 flags
buffer flags: VLIB_BUFFER_FREE_LIST_INDEX_MASK: bits used to store free list index, VLIB_BUFFER_IS_TRACED: trace this buffer.
u8 * format_vnet_buffer_offload(u8 *s, va_list *args)
u8 * format_vnet_buffer(u8 *s, va_list *args)
description fragment has unexpected format
u8 * format_vlib_buffer_no_chain(u8 *s, va_list *args)
#define vec_free(V)
Free vector's memory (no header).
VLIB buffer representation.