36 s =
format (s,
"avf-%x/%x/%x/%x",
37 addr->domain, addr->bus, addr->slot, addr->function);
47 #define _(a, b, c) if (ad->flags & (1 << a)) \ 48 t = format (t, "%s%s", t ? " ":"", c); 62 #define _(a, b, c) if (flags & (1 << a)) \ 63 t = format (t, "%s%s", t ? " ":"", c); 77 return format (s,
"unknown");
79 else if (speed == VIRTCHNL_LINK_SPEED_##b) \ 98 s =
format (s,
"\n%Utx: queues %u, desc %u (min %u max %u)",
106 s =
format (s,
"\n%Unum-queue-pairs %d max-vectors %u max-mtu %u " 116 #define _(c) if (ad->eth_stats.c - ad->last_cleared_eth_stats.c) \ 117 a = format (a, "\n%U%-20U %u", format_white_space, indent + 2, \ 118 format_c_identifier, #c, \ 119 ad->eth_stats.c - ad->last_cleared_eth_stats.c); 140 s =
format (s,
"avf: %v (%d) qid %u next-node %U",
146 s =
format (s,
"\n%Udesc %u: status 0x%x error 0x%x ptype 0x%x len %u",
#define AVF_RXD_ERROR_SHIFT
vl_api_wireguard_peer_flags_t flags
vnet_main_t * vnet_get_main(void)
#define foreach_virtchnl_eth_stats
virtchnl_link_speed_t link_speed
static vnet_hw_interface_t * vnet_get_hw_interface(vnet_main_t *vnm, u32 hw_if_index)
static uword pow2_mask(uword x)
#define vec_elt_at_index(v, i)
Get vector value at index i checking that i is in bounds.
format_function_t format_vlib_next_node_name
vlib_pci_dev_handle_t pci_dev_handle
#define AVF_RXD_LEN_SHIFT
#define AVF_RXD_STATUS_EOP
sll srl srl sll sra u16x4 i
#define vec_free(V)
Free vector's memory (no header).
static_always_inline avf_device_t * avf_get_device(u32 dev_instance)
vlib_main_t vlib_node_runtime_t * node
vlib_pci_addr_t * vlib_pci_get_addr(vlib_main_t *vm, vlib_pci_dev_handle_t h)
#define AVF_RXD_PTYPE_SHIFT
static vlib_main_t * vlib_get_main(void)
#define AVF_RX_MAX_DESC_IN_CHAIN
__clib_export u8 * format_clib_error(u8 *s, va_list *va)